(2024)LangChain

(2024)1탄, LangChain이란? - LangChain 설치하기, 실행하기 -

Doorian's paw 2024. 1. 10. 05:04
728x90
반응형

이 글은 LangChain 공식 문서를 참고했습니다(하단은 공식 문서).

https://python.langchain.com/docs/get_started/introduction

 

Introduction | 🦜️🔗 Langchain

LangChain is a framework for developing applications powered by language models. It enables applications that:

python.langchain.com

 


1. LangChain이란?

LangChain의 공식 문서의 가장 첫 번째 장은 소개 부분이다.

 

문서에서는 LangChain의 정의를 다음과 같이하고 있다.

 


LangChain is a framework for developing applications powered by language models. It enables applications that: Are context-aware: ​connect a language model to sources of context​ (prompt instructions, few shot examples, content to ground its response in, etc.) Reason: rely on a language model to reason (about how to answer based on provided context, what actions to take, etc.)

 

이 중 가장 눈에 띄는 말을 보면 "언어 모델 개발을 위한 프레임 워크"이며 "언어 모델을 상황과 연결" 시킨다는 의미를 가지고 있다.


 

 

기존의 Chat 모델은 학사 졸업생 수준의 지식 수준을 가지며 개별화 된 자료 호출 및 학습이 불가능했다.

하지만 LangChain을 활용한다면, 당신의 상황(당신만의 자료)를 바탕으로 Chat 모델과 연결시켜 활용할 수 있다(더 궁금한 사람은 상단의 공식 문서를 참고해 보자).

로고

 


2. LangChain설치 및 실행하기

이제 본격적으로 LangChain을 설치하고 실행해보자.

나는 VsCode를 통해 폴더를 만든 후, 진행하였다.​

 

2_1. LangChain 설치하기

우선 터미널 창을 열어 아래의 설치 명령어를 입력하자.

pip install langchain
pip install langchain-openai

 

뭔가 초록 막대기가 보이면 설치가 잘 되고 있는 중이다.

 

 

2_2. LangChain 실행하기

설치가 끝났다면 간단한 예제를 입력해보자. 이때 중요한 것은, openai의 Api키가 존재하야 한다는 점이다.

API key를 가져왔다면 아래 예제를 실행해보자.

rom langchain_openai import ChatOpenAI

llm = ChatOpenAI(openai_api_key="여러분의 API Key를 입력하세요")

llm.invoke("잠이 안올 때, 잠드는 방법에 대해 알려줘!")

 

 

이를 통해 langchain을 통해 Chat모델이 호출된다는 것을 확인할 수 있었다!

 

 

2_3. LangChain의 Chain 이용하기

이제 LangChain의 Chain을 이용해보자.

Chain은 "|"라는 기호를 통해 프롬프트와 llm모델을 연결하는 독특한 언어 방식을 지니고 있다.

from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate

llm = ChatOpenAI(openai_api_key="여러분의 API Key를 입력하세요")

prompt = ChatPromptTemplate.from_messages([
    ("system", "You are world class a professor in the field of sleep."),
    ("user", "{input}")
])

chain = prompt | llm 

chain.invoke({"input": "잠을 빠르게 드는 방법을 알려줘"})

 

 

 

다음 시간에 계속!

728x90
반응형