Aquesta guia il·lustrarà el procés d'utilitzar un buffer de resum de conversa a LangChain.
Com utilitzar un buffer de resum de converses a LangChain?
La conversa pot incloure diversos missatges que són com una interacció entre l'home i la màquina i la memòria intermèdia pot emmagatzemar els missatges més recents. El ConversationSummaryBufferMemory La biblioteca s'utilitza per combinar ambdós conceptes com ara emmagatzemar els missatges més recents i extreure'n el resum.
Per conèixer el procés d'utilitzar la memòria intermèdia de resum de converses a LangChain, només cal que aneu a la guia següent:
Pas 1: instal·leu els mòduls
Primer, instal·leu el mòdul LangChain mitjançant l'ordre pip per obtenir les biblioteques necessàries:
pip install langchain
Instal·leu el tiktoken tokenizer que es pot utilitzar per dividir els documents de text en petits trossos:
pip install tiktoken
Després d'això, instal·leu els mòduls OpenAI que es poden utilitzar per crear models de llenguatge com ara LLM i cadenes:
pip install openai
Ara, configurar l'entorn obtenint la clau API del compte OpenAI i utilitzant-la al model:
importar vostèimportar getpass
vostè . aproximadament [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'Clau de l'API OpenAI:' )
Pas 2: ús de la memòria intermèdia de resum de conversa
Inicieu el procés d'utilitzar la memòria intermèdia de resum de converses important les biblioteques per crear el LLM mitjançant el mètode OpenAI():
des de langchain. memòria importar ConversationSummaryBufferMemorydes de langchain. llms importar OpenAI
llm = OpenAI ( )
Creeu la memòria utilitzant el mètode ConversationSummaryBufferMemory() i després emmagatzemeu la conversa a la memòria:
memòria = ConversationSummaryBufferMemory ( llm = llm , límit_màx_de_tokens = 10 )memòria. desa_context ( { 'entrada' : 'Hola' } , { 'sortida' : 'Com va' } )
memòria. desa_context ( { 'entrada' : 'Sóc bo i tu' } , { 'sortida' : 'no gaire' } )
Ara, executeu la memòria trucant a load_memory_variables () mètode per extreure missatges de la memòria:
memòria. load_memory_variables ( { } )
Ara, utilitzeu el resum de la memòria intermèdia de la conversa per configurar la memòria intermèdia limitant el nombre de missatges que s'emmagatzemen a la memòria intermèdia. Després d'això, extreu el resum d'aquests missatges emmagatzemats a la memòria intermèdia i després deseu la conversa a la memòria:
memòria = ConversationSummaryBufferMemory (llm = llm , límit_màx_de_tokens = 10 , missatges_retorn = És cert
)
memòria. desa_context ( { 'entrada' : 'Hola' } , { 'sortida' : 'Com va' } )
memòria. desa_context ( { 'entrada' : 'Sóc bo i tu' } , { 'sortida' : 'no gaire' } )
Obteniu el resum dels missatges anteriors emmagatzemats a la memòria intermèdia mitjançant el codi següent:
missatges = memòria. memòria de xat . missatgesresum_anterior = ''
memòria. predir_nou_resum ( missatges , resum_anterior )
Pas 3: ús de la memòria intermèdia de resum de conversa en una cadena
Construeix les cadenes amb el ConversationChain() mètode que conté el valor de la memòria intermèdia per emmagatzemar-hi el missatge:
des de langchain. cadenes importar Cadena de conversaconversa_amb_resum = Cadena de conversa (
llm = llm ,
memòria = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , límit_màx_de_tokens = 40 ) ,
verbosa = És cert ,
)
conversa_amb_resum. predir ( entrada = 'Ei què tal?' )
Proporcioneu l'entrada en forma de text mitjançant el mètode predict() per obtenir el resum de la conversa:
conversa_amb_resum. predir ( entrada = 'Només treballant en el projecte PNL' )
Utilitzeu la sortida del model i afegiu més dades utilitzant els missatges de la memòria intermèdia i visualitzeu el seu resum:
conversa_amb_resum. predir ( entrada = 'Sí, ho és! Estic treballant en el disseny de LLM' )
El resum és que la sortida serà fàcilment comprensible i més amigable per a les persones i és més adequada per als chatbots:
conversa_amb_resum. predir (entrada = 'Vull utilitzar LangChain! N'heu sentit a parlar'
)
Es tracta d'utilitzar el buffer de resum de converses a LangChain.
Conclusió
Per utilitzar la memòria intermèdia de resum de converses a LangChain, només cal que instal·leu els mòduls o marcs per obtenir les biblioteques necessàries. Un cop importades les biblioteques, creeu els LLM o els chatbots per utilitzar la funció ConverstaionSummaryBufferMemory() per obtenir el resum de la conversa. La memòria intermèdia s'utilitza per limitar el nombre de missatges emmagatzemats a la memòria per utilitzar-los per extreure el resum. En aquesta publicació s'ha detallat el procés d'ús de la memòria intermèdia de resum de converses a LangChain.