LangChain
LLM 을 활용해서 애플리케이션을 효율적으로 개발할 수 있게 해주는 Python 라이브러리다.
OpenAI랑 뭐가 다르냐 ?
OpenAI 보다 좀 더 상세한 기능들이 가능한 것 같다.
OpenAi는 기본적인 텍스트를 받아오거나 단순한 API를 호출하는 것이 다라면,LangChain은 문서 로딩, 임베딩, 벡터 저장소, 연속된 AI작업, 여러 AI 모델 통합등 여러 기능들이 있다.사용법은 OpenAI를 활용하는 거랑 비슷한 것 같다. 프롬프트를 잘 주고 메모리로 잘 관리하면 좋은 애플리케이션이 나올 것 같다.
ChatOpenAI 생성
from langchain_openai import ChatOpenAI #Chat 모델임
#from langchain_openai import OpenAI --> 다름
api_key = api_key
llm = ChatOpenAI(api_key= api_key,model="gpt-4o") #GPT-4o 모델 선택
llm
간단한 프롬프트를 주고 응답을 받아와 보겠다.
from langchain_core.messages import AIMessage, SystemMessage, HumanMessage
messages = [
("system", "당신은 서울의 음식과 문화 전문가입니다."), #AI의 역할 정의
("human", "서울을 대표하는 음식을 맛볼 수 있는 레스토랑 5개를 추천해 주세요.") #사용자질문
]
#AI 응답 요청
response = llm.invoke(messages) #AI에게 메세지를 전달하고 응답 받기
print(response.content) #응답 내용 출력