목록Python (9)
KJH

Model Context Protocol(MCP)를 간단하게 설명하고 무료버전 cursor로 사용해보는 게시글이다.일반적으로 AI를 사용한다! 하면 LLM을 통해 질의를 하고 답변을 받아서 유저가 실행하는 방식이다.하지만 MCP는 LLM과 Tool을 연동하여 나의 질의를 LLM이 답을 내고, Tool에 실행을 시킨다. (!!) AI Agent와 유사하지만 이것을 사용하는 방법이 훨씬 편해졌다. 이 기능은 가파르게 성장중이고, 많은 기업들이 MCP서버를 제공하여 자신의 SW를 쉽고 편하게 사용하도록 하고 있다. 우선 첫번째 준비물 cursor를 다운 받는다.https://www.cursor.com/downloads Downloads | Cursor - The AI Code EditorDownload C..
함수 인자를 받을때 *args, **kwargs 이런식으로 받는 경우를 볼 수 있다보통 라이브러리 메서드를 타고가면 이런 케이스가 많은데 어떨때 쓰는지 보자 입력 갯수가 유동적일때 *으로 아스트리크 처럼 전부 인자로 받아주는데 가변 인자라고 하며* 가변인자 tuple, ** 가변인자 dict 이며 때에따라 무척 편할거 같다. 인자가 몇개든 전부 받아줌def func(*args): print(a) func(1)func(1,2,3,4,5,6,7)# result (1,)# result (1, 2, 3, 4, 5, 6, 7) key vaule 형태로도 가능def func(**kwargs): for key, value in kwargs.items(): print(f"{key} = {..
어느날 gpt로 "코드 짜줘~" 했는데 lambda로 너무 간략하게 만들어줘서 놀란 기억이 있다. 치욕스럽지만 "쉽게 짜줘!"로 lambda를 지워버리고 def로 받았다. 이젠 더이상 gpt에게 무시당하지 않도록 lambda를 알아보고자 한다. lambda는 함수를 만드는 문법이고, 생긴건 아래와 같으며 둘은 똑같은 동작을 하게 됩니다.def func(a,b): return a + b lambda a, b: a + b def f(a): return a%10 lambda a: a%10 def가 있는데 왜 쓰냐가 가장 큰 의문인데함수명을 정하지 않고 함수의 기능만을 사용하는게 큰 장점이고, 간단한 것들은 lambda로 뚝딱 구현해버리고 마는 용도로 보입니다.그래서 함수지만 익명함수로 ..

본 게시글은 slackbot 를 만들어 볼건데요지원을 잘 해주는 slack_bolt를 사용하고 fastAPI 기반 입니다. 아래 링크에서 개선된게 본 게시글이고 디테일한 설명은 아래 게시글을 참고해주세요https://kimjanghyun1010.tistory.com/55 Event Subscriptions에 최초 등록시 challenge 요청을 통해 응답을 확인 합니다.body에 challenge가 있다면 200을 리턴하여 Verified 시켜야 합니다. from fastapi import FastAPI, Requestfrom fastapi.responses import JSONResponsefrom slack_bolt import Appfrom slack_bolt.adapter.fastapi impo..

azure openAI에 있는 GPT 모델을 사용해서 나만의 비서를 만들어보자! (최신 자료는 gpt가 모르고, 정확도가 떨어지는 경우가 있으니)구조모델을 그대로 가져다 쓸거라 구조는 단순합니다.필요한 문서를 크롤링으로 가져와서 text화 합니다모든 text를 embed model에 집어넣고 indexing 된 data를 csv로 저장합니다메세지를 받으면 gpt model이 indexing된 data를 참고해서 유사도 검색을 할 수 있도록 설정합니다 Crawling문서 페이지에서 어떤 데이터들을 가져올 건지 확인해야 합니다페이지에서 공통적으로 사용하는 html class를 찾고, 해당 class에 원하는 데이터들이 담겨있는지 만 확인하면 됩니다. 예시로 해본 jenkins페이지에서는 section이라는 ..

본 게시글은 slack-sdk 및 slackeventsapi 을 메인으로 사용하는 레거시로 지원을 잘 해주는 slack_bolt를 사용하도록 하자 Slack api로 Slackbot을 만들어 귀찮은 작업은 자동화 하고, 위기 상황에 쉽고 간편하게 대처하자! 준비물slack-sdk==3.13.0 slackeventsapi==3.0.1flask==2.0.3※ slack RTM 이라는 자료도 있는데 이젠 지원 안해주고 잊혀져가는 legacy니 과감히 무시합니다. 사용법APP을 설치한 채널에서 메세지를 보내면 messages에 담기게 됩니다. from flask import Flask, request, Response, jsonifyfrom slackeventsapi import SlackEventAdapte..
python에서 코드가 흘러가는데에는 두가지 종류가 있음 동기코드를 작성한 그대로 흘러가게 하는 방식임import time# Subroutine (Synchronous Function)def exam_sync(name, s_time): print(f"{name} Start") time.sleep(s_time) print(f"{name} Finish")def main(): exam_sync("A", 3) exam_sync("B", 2) exam_sync("C", 1)if __name__ == "__main__": start = time.time() print(main()) end = time.time() print(end - start)### log# ..

1. GCP api 계정 생성 및 sheet 등록 1.1 GCP 콘솔 주소 https://console.developers.google.com/ 1.2 GCP 콘솔 접속 1.3 검색창에 google sheets api 검색 1.4 api 활성화 1.5 서비스계정 생성 1.6 이름 입력 후 [가입 완료 및 계속] 클릭 1.7 권한 설정 1.8 완료 버튼 클릭 1.9 키관리 클릭 1.10 새키 만들기 1.11 JSON 타입으로 생성 후 다운로드 1.12 키 형태 1.13 키 내용중 client_email 복사 후 공유 계정으로 등록 1.14 키 적용 새로 생성한 키는 적용하려고 하는 사업에 각각 등록 해야함 2. 사용법 2.1 linux에서 python 사용 및 모듈 설치 sudo yum install -y..