본문 바로가기
데이터&AI/langchain

[langchain공부] ConversationBufferMemory (과거 프롬포트 내용 기억하기!!)

by 일등박사 2024. 2. 2.

 

2023.03.05 - [일등박사의 생각/데이터&AI] - python API를 활용한 chatgpt- 과거내용 기억하기

 

python API를 활용한 chatgpt- 과거내용 기억하기

안녕하세요~!!! 파이썬 API를 활용하여 새로나온 chatgpt(gpt-3.5-turbo) 를 활용하는 법을 알아보았는데요!! 2023.03.04 - [일등박사의 생각/데이터분석] - OpenAI의 ChatGPT를 파이썬 API로 이용하기(gpt-3.5-turbo)

drfirst.tistory.com

 

 

GPT api를 활용할때, 과거 내용기억하기는 정말 중요한 요소입니다!!

그래서 계속 프롬포트를 이어나가는 원시적인 방법을 포스팅하기도 했었는데요!!

 

langchain의 ConversationBufferMemory 기능을 사용하면 깔끔하게 해결이 가능합니다!!

 

바로 코드!!!

from langchain.chains import ConversationChain
from langchain.memory import ConversationBufferMemory
from langchain.chat_models import ChatOpenAI

openai_api_key = '{내 api 키}'
model =  "gpt-3.5-turbo"

llm = ChatOpenAI(temperature=0, model=model, openai_api_key=openai_api_key)

conversation = ConversationChain(llm=llm, memory=ConversationBufferMemory())
conversation.run("전세계의 국가중  GDP 상위 3개 국가는?")

 

 

그리고!! 

conversation.run("그 다음 3개 국가는?")

 

만약 위 "그 다음 3개 국가는" 이라는 프롬포트만 들어가면, 앞의 내용이 없다면

이상한 답을 할텐데요!

여기서는 conversation에 내용이 잘 저장되어 원하는 답을 구함을 알 수 있습니다!!

 

 

 

 

댓글