Como usar o buffer de resumo de conversa no LangChain?

Como Usar O Buffer De Resumo De Conversa No Langchain



LangChain é a estrutura com todas as dependências e bibliotecas para construir modelos que possam compreender conjuntos de dados em linguagens naturais. Esses modelos também podem gerar texto em linguagens naturais ou extrair os dados mais semelhantes com base nas entradas fornecidas pelo usuário. Chatbots ou LLMs são usados ​​para construir conversas com humanos e extrair um resumo da conversa usando todas as mensagens.

Este guia ilustrará o processo de uso de um buffer de resumo de conversa no LangChain.

Como usar um buffer de resumo de conversa no LangChain?

A conversa pode compreender múltiplas mensagens que são como uma interação entre humano e máquina e o buffer pode armazenar as mensagens mais recentes. O ConversaSummaryBufferMemory A biblioteca é usada para combinar ambos os conceitos, como armazenar as mensagens mais recentes e extrair seu resumo.







Para aprender o processo de uso do buffer de resumo de conversa no LangChain, basta seguir o seguinte guia:



Etapa 1: instalar módulos

Primeiro, instale o módulo LangChain usando o comando pip para obter as bibliotecas necessárias:



pip instalar langchain





Instale o tokenizer tiktoken que pode ser usado para dividir os documentos de texto em pequenos pedaços:

pip instalar tiktoken



Depois disso, instale os módulos OpenAI que podem ser usados ​​para construir modelos de linguagem como LLMs e cadeias:

pip instalar openai

Agora, configurar o ambiente obtendo a chave API da conta OpenAI e usando-a no modelo:

importar os
importar Obter passagem

os . aproximadamente [ 'OPENAI_API_KEY' ] = Obter passagem . Obter passagem ( 'Chave de API OpenAI:' )

Etapa 2: usando o buffer de resumo de conversa

Inicie o processo de uso do buffer de resumo de conversa importando as bibliotecas para construir o LLM usando o método OpenAI():

de cadeia longa. memória importar ConversaSummaryBufferMemory

de cadeia longa. llms importar OpenAI

llm = OpenAI ( )

Construa a memória usando o método ConversationSummaryBufferMemory() e depois armazene a conversa na memória:

memória = ConversaSummaryBufferMemory ( llm = llm , max_token_limit = 10 )

memória. salvar_contexto ( { 'entrada' : 'olá' } , { 'saída' : 'Como vai' } )

memória. salvar_contexto ( { 'entrada' : 'Eu estou bem e você' } , { 'saída' : 'não muito' } )

Agora, execute a memória chamando o carregar_memória_variáveis () método para extrair mensagens da memória:

memória. carregar_memória_variáveis ( { } )

Agora, use o resumo do buffer da conversa para configurar o buffer limitando o número de mensagens a serem armazenadas no buffer. Depois disso, extraia o resumo dessas mensagens armazenadas no buffer e depois armazene a conversa na memória:

memória = ConversaSummaryBufferMemory (

llm = llm , max_token_limit = 10 , mensagens_retornadas = Verdadeiro

)

memória. salvar_contexto ( { 'entrada' : 'olá' } , { 'saída' : 'Como vai' } )

memória. salvar_contexto ( { 'entrada' : 'Eu estou bem e você' } , { 'saída' : 'não muito' } )

Obtenha o resumo das mensagens anteriores armazenadas na memória buffer usando o seguinte código:

mensagens = memória. chat_memory . mensagens

resumo_anterior = ''

memória. prever_novo_resumo ( mensagens , resumo_anterior )

Etapa 3: usando o buffer de resumo de conversa em uma cadeia

Construa as correntes usando o Cadeia de Conversa() método contendo o valor da memória buffer para armazenar a mensagem nele:

de cadeia longa. correntes importar Cadeia de conversação

conversa_com_resumo = Cadeia de conversação (
llm = llm ,
memória = ConversaSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
detalhado = Verdadeiro ,
)
conversa_com_resumo. prever ( entrada = 'Oi, e ai?' )

Forneça a entrada na forma de texto usando o método predizer() para obter o resumo da conversa:

conversa_com_resumo. prever ( entrada = 'Apenas trabalhando no projeto de PNL' )

Use a saída do modelo e adicione mais dados usando as mensagens na memória buffer e exiba seu resumo:

conversa_com_resumo. prever ( entrada = 'sim, é! Estou trabalhando no design de LLMs' )

O resumo é que o resultado será facilmente compreensível e mais amigável e é mais adequado para chatbots:

conversa_com_resumo. prever (

entrada = 'Quero usar LangChain! Você já ouviu falar?'

)

Trata-se de usar o buffer de resumo da conversa no LangChain.

Conclusão

Para usar a memória buffer de resumo de conversas no LangChain, basta instalar os módulos ou estruturas para obter as bibliotecas necessárias. Depois que as bibliotecas forem importadas, construa os LLMs ou chatbots para usar a função ConverstaionSummaryBufferMemory() para obter o resumo da conversa. A memória buffer é usada para limitar o número de mensagens armazenadas na memória a serem usadas para extrair o resumo. Esta postagem elaborou o processo de uso da memória buffer de resumo de conversas no LangChain.