반응형
LangChain이 뭐예요?
LangChain은 ChatGPT 같은 LLM을 사용한 앱을 쉽게 만들도록 도와주는 파이썬 프레임워크입니다.
예를 들어 이런 걸 만들고 싶다면?
"사용자가 질문하면, 관련 문서를 검색하고 요약해주는 AI 서비스"
LangChain을 쓰면, 이 복잡한 과정을 코드 몇 줄로 구현할 수 있어요.
기본 개념과 파이썬 예제
1. 프롬프트 템플릿 (PromptTemplate)
프롬프트를 코드로 쉽게 구성하고 재사용할 수 있어요.
from langchain.prompts import PromptTemplate
template = "너는 친절한 AI야. 사용자 질문: {question}"
prompt = PromptTemplate.from_template(template)
question = "파이썬이 뭔가요?"
print(prompt.format(question=question))
출력:
너는 친절한 AI야. 사용자 질문: 파이썬이 뭔가요?
2. LLM 연결하기
OpenAI GPT 모델을 연결해서 텍스트를 생성해볼 수 있어요.
from langchain.llms import OpenAI
from langchain.chains import LLMChain
llm = OpenAI(model_name="gpt-3.5-turbo", temperature=0.7)
chain = LLMChain(llm=llm, prompt=prompt)
response = chain.run("LangChain은 뭐하는 거에요?")
print(response)
실제 실행을 위해선
OPENAI_API_KEY
환경변수가 필요해요.
3. 체인 (Chain) 구성하기
단순한 질문-답변 이상의 과정을 이어서 구성할 수 있어요.
예를 들어:
- 질문을 정제하고
- 관련 내용을 검색하고
- 요약해서 답하는 체인을 만들 수 있어요.
# 여러 단계로 연결된 체인을 만들 수도 있어요.
# 예: 질문 -> 검색 -> 요약 -> 답변
# 여기선 LLMChain만 연결한 단순 예제를 보여줄게요.
4. 메모리 추가 (대화 유지)
이전 대화를 기억하도록 메모리를 추가해봅시다.
from langchain.chains import ConversationChain
from langchain.memory import ConversationBufferMemory
conversation = ConversationChain(
llm=llm,
memory=ConversationBufferMemory()
)
print(conversation.run("안녕?"))
print(conversation.run("방금 내가 뭐라고 했지?"))
5. 외부 도구 사용하기 (Agent)
계산기, 웹 검색 같은 도구를 AI가 스스로 판단해 사용할 수 있게 만들 수 있어요.
from langchain.agents import load_tools, initialize_agent
from langchain.agents.agent_types import AgentType
tools = load_tools(["llm-math"], llm=llm)
agent = initialize_agent(
tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True
)
print(agent.run("45872 곱하기 23은 얼마야?"))
요약
기능 | 설명 | 예제 |
---|---|---|
PromptTemplate | 프롬프트 템플릿화 | PromptTemplate.from_template() |
LLMChain | LLM 연결된 체인 | LLMChain(prompt=..., llm=...) |
ConversationChain | 대화 기억 기능 | ConversationBufferMemory() |
Agent | 도구 자동 활용 | 계산기, 검색 등 |
마무리
LangChain은 "GPT를 이용해 서비스 만들기"를 훨씬 쉽게 만들어주는 도구예요.
특히 프롬프트 체계화, 대화 메모리, 외부 도구 연동 등이 강력해요.
반응형
'개발 창고 > AI' 카테고리의 다른 글
실전 EDA 튜토리얼: 삼성전자 주가 데이터 분석하기 (1) | 2025.07.03 |
---|---|
코딩 없이 모델 학습? H2O AutoML로 누구나 머신러닝 시작하기 (1) | 2025.07.02 |
AutoML이란? 파이썬 예제로 배우는 머신러닝 자동화의 모든 것 (2) | 2025.06.30 |
Feature Engineering이란? 머신러닝 성능을 높이는 핵심 기술! (3) | 2025.06.29 |
파이썬으로 배우는 탐색적 데이터 분석 실전 가이드 (3) | 2025.06.28 |