Cum să utilizați tamponul pentru rezumatul conversației în LangChain?

Cum Sa Utilizati Tamponul Pentru Rezumatul Conversatiei In Langchain



LangChain este cadrul cu toate dependențele și bibliotecile pentru a construi modele care pot înțelege seturile de date în limbaje naturale. Aceste modele pot genera și text în limbi naturale sau pot extrage cele mai asemănătoare date pe baza intrărilor furnizate de utilizator. Chatbot-urile sau LLM-urile sunt folosite pentru a construi conversații cu oameni și pentru a extrage un rezumat al conversației folosind toate mesajele.

Acest ghid va ilustra procesul de utilizare a unui buffer de rezumat al conversației în LangChain.

Cum să utilizați un buffer pentru rezumatul conversației în LangChain?

Conversația poate cuprinde mai multe mesaje care sunt ca o interacțiune între om și mașină, iar tamponul poate stoca cele mai recente mesaje. The ConversationSummaryBufferMemory biblioteca este folosită pentru a combina ambele concepte, cum ar fi stocarea celor mai recente mesaje și extragerea rezumatului acestora.





Pentru a afla procesul de utilizare a bufferului de rezumat al conversației în LangChain, parcurgeți următorul ghid:



Pasul 1: Instalați module

Mai întâi, instalați modulul LangChain folosind comanda pip pentru a obține bibliotecile necesare:



pip install langchain





Instalați tokenizerul tiktoken care poate fi folosit pentru a împărți documentele text în bucăți mici:

pip install tiktoken



După aceea, instalați modulele OpenAI care pot fi folosite pentru a construi modele de limbaj precum LLM-uri și lanțuri:

pip install openai

Acum, configura mediul prin obținerea cheii API din contul OpenAI și folosind-o în model:

import tu
import getpass

tu . aproximativ [ „OPENAI_API_KEY” ] = getpass . getpass ( „Cheie API OpenAI:” )

Pasul 2: Utilizarea bufferului pentru rezumatul conversației

Începeți procesul de utilizare a memoriei tampon pentru rezumatul conversației importând bibliotecile pentru a construi LLM folosind metoda OpenAI():

din langchain. memorie import ConversationSummaryBufferMemory

din langchain. llms import OpenAI

llm = OpenAI ( )

Construiți memoria folosind metoda ConversationSummaryBufferMemory() și apoi stocați conversația în memorie:

memorie = ConversationSummaryBufferMemory ( llm = llm , max_token_limit = 10 )

memorie. salvare_context ( { 'intrare' : 'Buna ziua' } , { 'ieșire' : 'Ce mai faci' } )

memorie. salvare_context ( { 'intrare' : 'Sunt bun, ce zici de tine' } , { 'ieșire' : 'nu prea mult' } )

Acum, executați memoria apelând la load_memory_variables () metoda de extragere a mesajelor din memorie:

memorie. load_memory_variables ( { } )

Acum, utilizați rezumatul buffer-ului conversației pentru a configura tamponul limitând numărul de mesaje care vor fi stocate în buffer. După aceea, extrageți rezumatul acestor mesaje stocate în buffer și apoi stocați conversația în memorie:

memorie = ConversationSummaryBufferMemory (

llm = llm , max_token_limit = 10 , return_messages = Adevărat

)

memorie. salvare_context ( { 'intrare' : 'Buna ziua' } , { 'ieșire' : 'Ce mai faci' } )

memorie. salvare_context ( { 'intrare' : 'Sunt bun, ce zici de tine' } , { 'ieșire' : 'nu prea mult' } )

Obțineți rezumatul mesajelor anterioare stocate în memoria tampon folosind următorul cod:

mesaje = memorie. chat_memory . mesaje

rezumat_anterior = ''

memorie. predict_new_summary ( mesaje , rezumat_anterior )

Pasul 3: Utilizarea bufferului pentru rezumatul conversației într-un lanț

Construiți lanțurile folosind ConversationChain() metodă care conține valoarea pentru memoria tampon pentru a stoca mesajul în ea:

din langchain. lanţuri import ConversationChain

conversație_cu_rezumat = ConversationChain (
llm = llm ,
memorie = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
verboroasă = Adevărat ,
)
conversație_cu_rezumat. prezice ( intrare = 'Bună! Ce faci?' )

Furnizați intrarea sub formă de text folosind metoda predict() pentru a obține rezumatul conversației:

conversație_cu_rezumat. prezice ( intrare = „Lucrez doar la proiectul NLP” )

Utilizați rezultatul din model și adăugați mai multe date folosind mesajele din memoria tampon și afișați rezumatul acestuia:

conversație_cu_rezumat. prezice ( intrare = 'Da, este! Lucrez la proiectarea LLM-urilor' )

Rezumatul este că rezultatul va fi ușor de înțeles și mai prietenos cu oamenii și este mai potrivit pentru chatbot:

conversație_cu_rezumat. prezice (

intrare = „Vreau să folosesc LangChain! Ați auzit de el”

)

Este vorba despre utilizarea bufferului de rezumat al conversației în LangChain.

Concluzie

Pentru a utiliza memoria tampon pentru rezumatul conversației în LangChain, instalați pur și simplu modulele sau cadrele pentru a obține bibliotecile necesare. Odată ce bibliotecile sunt importate, construiți LLM-uri sau chatbot-uri pentru a utiliza funcția ConverstaionSummaryBufferMemory() pentru a obține rezumatul conversației. Memoria tampon este folosită pentru a limita numărul de mesaje stocate în memorie pentru a le utiliza pentru extragerea rezumatului. Această postare a elaborat procesul de utilizare a memoriei tampon pentru rezumatul conversației în LangChain.