Hvordan bruger man samtaleoversigtsbuffer i LangChain?

Hvordan Bruger Man Samtaleoversigtsbuffer I Langchain



LangChain er rammen med alle afhængigheder og biblioteker til at bygge modeller, der kan forstå datasæt på naturlige sprog. Disse modeller kan også generere tekst på naturlige sprog eller udtrække de mest lignende data baseret på input fra brugeren. Chatbots eller LLM'er bruges til at bygge samtaler med mennesker og udtrække et resumé af samtalen ved hjælp af alle beskederne.

Denne guide vil illustrere processen med at bruge en samtaleoversigtsbuffer i LangChain.

Hvordan bruger man en samtaleoversigtsbuffer i LangChain?

Samtale kan omfatte flere beskeder, der er som en interaktion mellem menneske og maskine, og bufferen kan gemme de seneste beskeder. Det ConversationSummaryBufferMemory bibliotek bruges til at kombinere begge begreber som at gemme de seneste beskeder og udtrække deres resumé.







For at lære processen med at bruge samtaleoversigtsbufferen i LangChain skal du blot gennemgå følgende guide:



Trin 1: Installer moduler

Først skal du installere LangChain-modulet ved hjælp af pip-kommandoen for at få de nødvendige biblioteker:



pip installer langkæde





Installer tiktoken tokenizer, som kan bruges til at opdele tekstdokumenterne i små bidder:

pip installer tiktoken



Installer derefter OpenAI-modulerne, der kan bruges til at bygge sprogmodellerne som LLM'er og kæder:

pip installer openai

Nu, sætte miljøet op ved at hente API-nøglen fra OpenAI-kontoen og bruge den i modellen:

importere du
importere getpass

du . rundt regnet [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API-nøgle:' )

Trin 2: Brug af samtaleoversigtsbuffer

Start processen med at bruge samtaleoversigtsbufferen ved at importere bibliotekerne for at bygge LLM'en ved hjælp af OpenAI()-metoden:

fra langkæde. hukommelse importere ConversationSummaryBufferMemory

fra langkæde. llms importere OpenAI

llm = OpenAI ( )

Byg hukommelsen ved hjælp af metoden ConversationSummaryBufferMemory() og gem derefter samtalen i hukommelsen:

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

hukommelse. gem_kontekst ( { 'input' : 'Hej' } , { 'produktion' : 'Hvordan har du det' } )

hukommelse. gem_kontekst ( { 'input' : 'Jeg er god hvad med dig' } , { 'produktion' : 'ikke meget' } )

Udfør nu hukommelsen ved at kalde load_memory_variables () metode til at udtrække beskeder fra hukommelsen:

hukommelse. load_memory_variables ( { } )

Brug nu bufferoversigten af ​​samtalen til at konfigurere bufferen ved at begrænse antallet af meddelelser, der skal gemmes i bufferen. Udtræk derefter oversigten over disse meddelelser, der er gemt i bufferen, og gem derefter samtalen i hukommelsen:

hukommelse = ConversationSummaryBufferMemory (

llm = llm , max_token_limit = 10 , return_beskeder = Rigtigt

)

hukommelse. gem_kontekst ( { 'input' : 'Hej' } , { 'produktion' : 'Hvordan har du det' } )

hukommelse. gem_kontekst ( { 'input' : 'Jeg er god hvad med dig' } , { 'produktion' : 'ikke meget' } )

Få oversigten over de tidligere beskeder gemt i bufferhukommelsen ved hjælp af følgende kode:

Beskeder = hukommelse. chat_hukommelse . Beskeder

forrige_oversigt = ''

hukommelse. forudsige_nyt_sammendrag ( Beskeder , forrige_oversigt )

Trin 3: Brug af samtaleoversigtsbuffer i en kæde

Byg kæderne ved hjælp af ConversationChain() metode, der indeholder værdien for bufferhukommelsen til at gemme meddelelsen i den:

fra langkæde. kæder importere Samtalekæde

samtale_med_oversigt = Samtalekæde (
llm = llm ,
hukommelse = Samtaleoversigt Bufferhukommelse ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
ordrig = Rigtigt ,
)
samtale_med_oversigt. forudsige ( input = 'Hej hvad så?' )

Angiv input i form af teksten ved hjælp af predict()-metoden for at få et resumé af samtalen:

samtale_med_oversigt. forudsige ( input = 'Arbejder bare på NLP-projektet' )

Brug outputtet fra modellen og tilføj flere data ved hjælp af meddelelserne i bufferhukommelsen og vis dens oversigt:

samtale_med_oversigt. forudsige ( input = 'ja det er det! Jeg arbejder på at designe LLM'er' )

Resuméet er, at outputtet vil være let forståeligt og mere menneskevenligt og er mere velegnet til chatbots:

samtale_med_oversigt. forudsige (

input = 'Jeg vil bruge LangChain! Har du hørt om det'

)

Det handler om at bruge samtaleoversigtsbufferen i LangChain.

Konklusion

For at bruge samtaleoversigtsbufferhukommelsen i LangChain skal du blot installere modulerne eller rammerne for at få de nødvendige biblioteker. Når bibliotekerne er importeret, skal du bygge LLM'er eller chatbots for at bruge ConverstaionSummaryBufferMemory()-funktionen til at få et resumé af samtalen. Bufferhukommelsen bruges til at begrænse antallet af meddelelser, der er lagret i hukommelsen, der skal bruges til at udtrække resuméet. Dette indlæg har uddybet processen med at bruge samtaleoversigtsbufferhukommelsen i LangChain.