LangChain에서 대화 요약 버퍼를 사용하는 방법은 무엇입니까?

Langchain Eseo Daehwa Yoyag Beopeoleul Sayonghaneun Bangbeob Eun Mueos Ibnikka



LangChain은 자연어로 데이터 세트를 이해할 수 있는 모델을 구축하기 위한 모든 종속성과 라이브러리를 갖춘 프레임워크입니다. 이러한 모델은 또한 자연어로 텍스트를 생성하거나 사용자가 제공한 입력을 기반으로 가장 유사한 데이터를 추출할 수 있습니다. 챗봇 또는 LLM은 인간과 대화를 구축하고 모든 메시지를 사용하여 대화 요약을 추출하는 데 사용됩니다.

이 가이드는 LangChain에서 대화 요약 버퍼를 사용하는 과정을 보여줍니다.

LangChain에서 대화 요약 버퍼를 사용하는 방법은 무엇입니까?

대화는 인간과 기계 간의 상호 작용과 같은 여러 메시지로 구성될 수 있으며 버퍼는 가장 최근 메시지를 저장할 수 있습니다. 그만큼 대화요약버퍼메모리 라이브러리는 최신 메시지 저장 및 요약 추출과 같은 두 개념을 결합하는 데 사용됩니다.







LangChain에서 대화 요약 버퍼를 사용하는 과정을 배우려면 다음 가이드를 따르십시오.



1단계: 모듈 설치

먼저 pip 명령을 사용하여 LangChain 모듈을 설치하여 필요한 라이브러리를 가져옵니다.



pip 설치 랭체인





텍스트 문서를 작은 덩어리로 분할하는 데 사용할 수 있는 tiktoken 토크나이저를 설치하십시오.

pip 설치 틱토큰



그런 다음 LLM 및 체인과 같은 언어 모델을 구축하는 데 사용할 수 있는 OpenAI 모듈을 설치합니다.

pip 설치 openai

지금, 환경을 설정하다 OpenAI 계정에서 API 키를 가져와 모델에서 사용합니다.

수입
수입 getpass

. [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API 키:' )

2단계: 대화 요약 버퍼 사용

OpenAI() 메서드를 사용하여 LLM을 빌드하기 위해 라이브러리를 가져와서 대화 요약 버퍼를 사용하는 프로세스를 시작합니다.

~에서 랭체인. 메모리 수입 대화요약버퍼메모리

~에서 랭체인. LLMS 수입 오픈AI

ㅋㅋㅋ = 오픈AI ( )

ConversationSummaryBufferMemory() 메서드를 사용하여 메모리를 구축한 다음 대화를 메모리에 저장합니다.

메모리 = 대화요약버퍼메모리 ( ㅋㅋㅋ = ㅋㅋㅋ , max_token_limit = 10 )

메모리. save_context ( { '입력' : '안녕하세요' } , { '산출' : '어떻게 지내세요' } )

메모리. save_context ( { '입력' : '저는 잘 있습니다, 당신 은요' } , { '산출' : '별로' } )

이제 다음을 호출하여 메모리를 실행합니다. 로드_메모리_변수 () 메모리에서 메시지를 추출하는 방법:

메모리. 로드_메모리_변수 ( { } )

이제 대화의 버퍼 요약을 사용하여 버퍼에 저장할 메시지 수를 제한하여 버퍼를 구성합니다. 그런 다음 버퍼에 저장된 이러한 메시지의 요약을 추출한 다음 대화를 메모리에 저장합니다.

메모리 = 대화요약버퍼메모리 (

ㅋㅋㅋ = ㅋㅋㅋ , max_token_limit = 10 , return_messages = 진실

)

메모리. save_context ( { '입력' : '안녕하세요' } , { '산출' : '어떻게 지내세요' } )

메모리. save_context ( { '입력' : '저는 잘 있습니다, 당신 은요' } , { '산출' : '별로' } )

다음 코드를 사용하여 버퍼 메모리에 저장된 이전 메시지의 요약을 가져옵니다.

메시지 = 메모리. chat_memory . 메시지

이전_요약 = ''

메모리. 예측_새_요약 ( 메시지 , 이전_요약 )

3단계: 체인에서 대화 요약 버퍼 사용

다음을 사용하여 체인을 구축합니다. 컨버세이션체인() 메시지를 저장할 버퍼 메모리 값을 포함하는 메서드:

~에서 랭체인. 쇠사슬 수입 컨버세이션체인

대화_위드_요약 = 컨버세이션체인 (
ㅋㅋㅋ = ㅋㅋㅋ ,
메모리 = 대화요약버퍼메모리 ( ㅋㅋㅋ = 오픈AI ( ) , max_token_limit = 40 ) ,
말 수가 많은 = 진실 ,
)
대화_위드_요약. 예측하다 ( 입력 = '어때 잘 지내?' )

대화 요약을 얻으려면 예측() 메서드를 사용하여 텍스트 형식으로 입력을 제공합니다.

대화_위드_요약. 예측하다 ( 입력 = '지금 NLP 프로젝트를 진행 중이에요' )

모델의 출력을 사용하고 버퍼 메모리의 메시지를 사용하여 더 많은 데이터를 추가하고 해당 요약을 표시합니다.

대화_위드_요약. 예측하다 ( 입력 = '그렇습니다! 저는 LLM 설계 작업을 하고 있습니다.' )

요약하면 출력이 쉽게 이해되고 인간 친화적이며 챗봇에 더 적합하다는 것입니다.

대화_위드_요약. 예측하다 (

입력 = '랭체인을 사용하고 싶어요! 들어보셨나요?'

)

이것이 바로 LangChain의 대화 요약 버퍼를 사용하는 것입니다.

결론

LangChain에서 대화 요약 버퍼 메모리를 사용하려면 모듈이나 프레임워크를 설치하여 필요한 라이브러리를 얻으면 됩니다. 라이브러리를 가져온 후에는 ConverstaionSummaryBufferMemory() 함수를 사용하여 대화 요약을 가져오는 LLM 또는 챗봇을 구축합니다. 버퍼 메모리는 요약 추출에 사용하기 위해 메모리에 저장되는 메시지 수를 제한하는 데 사용됩니다. 이번 포스팅에서는 LangChain에서 대화 요약 버퍼 메모리를 사용하는 과정을 자세히 설명했습니다.