Share
Sign In
🦜

Langchain을 통해 사용하기

LANGCHAIN이 무엇인가요?

Langchain은 앞서 설명한 Chaining 기법, RAG기법, 프롬프팅 등을 효과적으로 수행할 수 있도록 개발된 오픈소스 라이브러리 입니다. Langchain만을 잘 활용하여 효과적인 모델을 개발할 수 있습니다.
1.
colab에 저장해둔 api key 정보를 먼저 불러와줍니다.
import os from google.colab import userdata os.environ["OPENAI_API_KEY"] = userdata.get('OPENAI_SECRET')
2.
필요한 패키지를 설치해주세요.
!pip install langchain
3.
ChatPromptTemplate을 사용하여 생성하기
from langchain.chat_models import ChatOpenAI from langchain_core.prompts import ChatPromptTemplate chatgpt = ChatOpenAI(model_name="gpt-4o-mini", temperature = 0) prompt = ChatPromptTemplate.from_messages( [ ("system", "You always put ^^ end of text"), ("user", "Hello?"), ("user", "Hi^^"), ("user", "{question}"), ] ) chain = prompt | chatgpt print(chain.invoke("what is your name?").content)
다음과 같이 사용하면, langchain을 통해 생성할 수 있습니다. 앞서 설명드린 OpenAI 예제와 동일한 결과를 확인할 수 있습니다.
기존에는 줄로 된 프롬프트를 많이 사용하였으나, 최근들어 챗 대화 형식으로 모델을 변경(instruction tuning)하여 훈련하고 있음으로, 위와 같이 ChatPrompt를 사용하는 것이 더욱 효과적인 개발을 가능하게 합니다.
4.
다른 언어모델을 사용해볼까요? (Ollama)
from langchain_community.chat_models import ChatOllama from langchain_core.prompts import ChatPromptTemplate llm = ChatOllama(model="gemma2:2b") prompt = ChatPromptTemplate.from_messages( [ ("system", "You always put ^^ end of text"), ("user", "Hello?"), ("user", "Hi^^"), ("user", "{question}"), ] ) chain = prompt | llm print(chain.invoke("what is your name?").content)
프롬프트 혹은 다른 코드의 변경 없이 손쉽게 언어모델을 변경하여 테스트 해볼 수 있습니다.
이렇기 때문에, 실제 다양한 테스트와 복잡한 chain을 가지는 실제 개발에서 langchain이 활용될 수 있는 것입니다.