Kako uporabljati medpomnilnik povzetka pogovorov v LangChainu?

Kako Uporabljati Medpomnilnik Povzetka Pogovorov V Langchainu



LangChain je ogrodje z vsemi odvisnostmi in knjižnicami za izdelavo modelov, ki lahko razumejo nabore podatkov v naravnih jezikih. Ti modeli lahko tudi ustvarijo besedilo v naravnih jezikih ali izvlečejo najbolj podobne podatke na podlagi vnosov, ki jih zagotovi uporabnik. Klepetalni roboti ali LLM se uporabljajo za ustvarjanje pogovorov z ljudmi in pridobivanje povzetka pogovora z uporabo vseh sporočil.

Ta vodnik bo prikazal postopek uporabe medpomnilnika povzetka pogovorov v LangChain.

Kako uporabljati medpomnilnik povzetka pogovorov v LangChainu?

Pogovor lahko obsega več sporočil, ki so kot interakcija med človekom in strojem, medpomnilnik pa lahko shrani najnovejša sporočila. The ConversationSummaryBufferMemory knjižnica se uporablja za združevanje obeh konceptov, kot sta shranjevanje najnovejših sporočil in ekstrahiranje njihovega povzetka.







Če želite izvedeti postopek uporabe vmesnega pomnilnika povzetka pogovorov v LangChainu, preprosto preglejte ta vodnik:



1. korak: Namestite module

Najprej namestite modul LangChain z ukazom pip, da dobite zahtevane knjižnice:



pip namestite langchain





Namestite tiktoken tokenizer, ki ga lahko uporabite za razdelitev besedilnih dokumentov na majhne dele:

pip namestite tiktoken



Po tem namestite module OpenAI, ki jih je mogoče uporabiti za izdelavo jezikovnih modelov, kot so LLM in verige:

pip namestite openai

zdaj, nastavite okolje tako da pridobite ključ API iz računa OpenAI in ga uporabite v modelu:

uvoz ti
uvoz getpass

ti . približno [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'Ključ API OpenAI:' )

2. korak: Uporaba medpomnilnika povzetka pogovorov

Začnite postopek uporabe vmesnega pomnilnika povzetka pogovorov z uvozom knjižnic za izdelavo LLM z uporabo metode OpenAI():

od Langchain. spomin uvoz ConversationSummaryBufferMemory

od Langchain. llms uvoz OpenAI

llm = OpenAI ( )

Zgradite pomnilnik z metodo ConversationSummaryBufferMemory() in nato shranite pogovor v pomnilnik:

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

spomin. shrani_kontekst ( { 'vnos' : 'zdravo' } , { 'izhod' : 'Kako si' } )

spomin. shrani_kontekst ( { 'vnos' : 'Dober sem, kaj pa ti' } , { 'izhod' : 'ne veliko' } )

Zdaj pa izvedite pomnilnik tako, da pokličete load_memory_variables () metoda za ekstrahiranje sporočil iz pomnilnika:

spomin. load_memory_variables ( { } )

Zdaj uporabite povzetek medpomnilnika pogovora, da konfigurirate medpomnilnik tako, da omejite število sporočil, ki bodo shranjena v medpomnilniku. Nato ekstrahirajte povzetek teh sporočil, shranjenih v medpomnilniku, in nato shranite pogovor v pomnilnik:

spomin = ConversationSummaryBufferMemory (

llm = llm , max_token_limit = 10 , povratna_sporočila = Prav

)

spomin. shrani_kontekst ( { 'vnos' : 'zdravo' } , { 'izhod' : 'Kako si' } )

spomin. shrani_kontekst ( { 'vnos' : 'Dober sem, kaj pa ti' } , { 'izhod' : 'ne veliko' } )

Z naslednjo kodo pridobite povzetek prejšnjih sporočil, shranjenih v medpomnilniku:

sporočila = spomin. chat_memory . sporočila

prejšnji_povzetek = ''

spomin. napoved_nov_povzetek ( sporočila , prejšnji_povzetek )

3. korak: Uporaba medpomnilnika povzetka pogovorov v verigi

Zgradite verige z uporabo ConversationChain() metoda, ki vsebuje vrednost za vmesni pomnilnik za shranjevanje sporočila vanj:

od Langchain. verige uvoz ConversationChain

pogovor_s_povzetkom = ConversationChain (
llm = llm ,
spomin = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
verbose = Prav ,
)
pogovor_s_povzetkom. napovedati ( vnos = 'Živjo, kaj dogaja?' )

Podajte vnos v obliki besedila z uporabo metode predict(), da dobite povzetek pogovora:

pogovor_s_povzetkom. napovedati ( vnos = 'Samo delam na NLP projektu' )

Uporabite izhod iz modela in dodajte več podatkov z uporabo sporočil v medpomnilniku in prikažite njegov povzetek:

pogovor_s_povzetkom. napovedati ( vnos = 'da je! Delam na oblikovanju LLM' )

Povzetek je, da bo rezultat lahko razumljiv in ljudem bolj prijazen ter je bolj primeren za chatbote:

pogovor_s_povzetkom. napovedati (

vnos = 'Želim uporabljati LangChain! Ste že slišali zanj'

)

To je vse o uporabi medpomnilnika povzetka pogovorov v LangChainu.

Zaključek

Če želite uporabiti vmesni pomnilnik povzetka pogovorov v LangChain, preprosto namestite module ali ogrodja, da dobite zahtevane knjižnice. Ko so knjižnice uvožene, zgradite LLM-je ali chatbote za uporabo funkcije ConverstaionSummaryBufferMemory() za pridobitev povzetka pogovora. Vmesni pomnilnik se uporablja za omejevanje števila sporočil, shranjenih v pomnilniku, ki se uporabljajo za ekstrahiranje povzetka. Ta objava je podrobneje opisala postopek uporabe vmesnega pomnilnika povzetka pogovorov v LangChainu.