Jak používat vyrovnávací paměť souhrnu konverzace v LangChain?

Jak Pouzivat Vyrovnavaci Pamet Souhrnu Konverzace V Langchain



LangChain je rámec se všemi závislostmi a knihovnami pro vytváření modelů, které dokážou porozumět datovým sadám v přirozených jazycích. Tyto modely mohou také generovat text v přirozených jazycích nebo extrahovat nejpodobnější data na základě vstupů poskytnutých uživatelem. Chatboti nebo LLM se používají k vytváření konverzací s lidmi a extrahování shrnutí konverzace pomocí všech zpráv.

Tato příručka bude ilustrovat proces používání vyrovnávací paměti souhrnu konverzace v LangChain.

Jak používat vyrovnávací paměť souhrnu konverzace v LangChain?

Konverzace může obsahovat více zpráv, které jsou jako interakce mezi člověkem a strojem a vyrovnávací paměť může ukládat nejnovější zprávy. The ConversationSummaryBufferMemory Knihovna se používá ke kombinaci obou konceptů, jako je ukládání nejnovějších zpráv a extrahování jejich shrnutí.







Chcete-li se naučit proces používání vyrovnávací paměti souhrnu konverzace v LangChain, jednoduše si projděte následující průvodce:



Krok 1: Nainstalujte moduly

Nejprve nainstalujte modul LangChain pomocí příkazu pip, abyste získali požadované knihovny:



pip install langchain





Nainstalujte tiktoken tokenizer, který lze použít k rozdělení textových dokumentů na malé kousky:

pip nainstalovat tiktoken



Poté nainstalujte moduly OpenAI, které lze použít k vytvoření jazykových modelů, jako jsou LLM a řetězce:

pip install openai

Nyní, nastavit prostředí získáním klíče API z účtu OpenAI a jeho použitím v modelu:

import vy
import getpass

vy . přibližně [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'Klíč OpenAI API:' )

Krok 2: Použití vyrovnávací paměti souhrnu konverzace

Začněte proces používání vyrovnávací paměti souhrnu konverzace importem knihoven pro sestavení LLM pomocí metody OpenAI():

z langchain. Paměť import ConversationSummaryBufferMemory

z langchain. llms import OpenAI

llm = OpenAI ( )

Sestavte paměť pomocí metody ConversationSummaryBufferMemory() a poté konverzaci uložte do paměti:

Paměť = ConversationSummaryBufferMemory ( llm = llm , max_token_limit = 10 )

Paměť. uložit_kontext ( { 'vstup' : 'Ahoj' } , { 'výstup' : 'Jak se máš' } )

Paměť. uložit_kontext ( { 'vstup' : 'Mám se dobře a co ty' } , { 'výstup' : 'ne moc' } )

Nyní spusťte paměť voláním load_memory_variables () metoda extrahování zpráv z paměti:

Paměť. load_memory_variables ( { } )

Nyní použijte shrnutí vyrovnávací paměti konverzace ke konfiguraci vyrovnávací paměti omezením počtu zpráv, které se mají uložit do vyrovnávací paměti. Poté extrahujte souhrn těchto zpráv uložených ve vyrovnávací paměti a poté uložte konverzaci do paměti:

Paměť = ConversationSummaryBufferMemory (

llm = llm , max_token_limit = 10 , návratové_zprávy = Skutečný

)

Paměť. uložit_kontext ( { 'vstup' : 'Ahoj' } , { 'výstup' : 'Jak se máš' } )

Paměť. uložit_kontext ( { 'vstup' : 'Mám se dobře a co ty' } , { 'výstup' : 'ne moc' } )

Získejte souhrn předchozích zpráv uložených ve vyrovnávací paměti pomocí následujícího kódu:

zprávy = Paměť. chat_memory . zprávy

předchozí_shrnutí = ''

Paměť. předpovídat_nové_shrnutí ( zprávy , předchozí_shrnutí )

Krok 3: Použití vyrovnávací paměti souhrnu konverzace v řetězci

Sestavte řetězy pomocí ConversationChain() metoda obsahující hodnotu pro vyrovnávací paměť pro uložení zprávy do ní:

z langchain. řetězy import ConversationChain

konverzace_se_souhrnem = ConversationChain (
llm = llm ,
Paměť = ConversationSummaryBufferMemory ( llm = OpenAI ( ) , max_token_limit = 40 ) ,
podrobný = Skutečný ,
)
konverzace_se_souhrnem. předpovědět ( vstup = 'Ahoj jak se máš?' )

Zadejte vstup ve formě textu pomocí metody forecast(), abyste získali shrnutí konverzace:

konverzace_se_souhrnem. předpovědět ( vstup = „Právě pracujeme na projektu NLP“ )

Použijte výstup z modelu a přidejte další data pomocí zpráv ve vyrovnávací paměti a zobrazte jeho shrnutí:

konverzace_se_souhrnem. předpovědět ( vstup = 'ano je! Pracuji na navrhování LLM' )

Shrnutí je, že výstup bude snadno srozumitelný a lidsky přívětivější a je vhodnější pro chatboty:

konverzace_se_souhrnem. předpovědět (

vstup = 'Chci používat LangChain! Slyšeli jste o tom?'

)

To je vše o použití vyrovnávací paměti shrnutí konverzace v LangChain.

Závěr

Chcete-li použít vyrovnávací paměť pro shrnutí konverzace v LangChain, jednoduše nainstalujte moduly nebo rámce, abyste získali požadované knihovny. Jakmile jsou knihovny importovány, sestavte LLM nebo chatboty, aby pomocí funkce ConverstaionSummaryBufferMemory() získali shrnutí konverzace. Vyrovnávací paměť se používá k omezení počtu zpráv uložených v paměti pro extrahování souhrnu. Tento příspěvek rozvedl proces používání vyrovnávací paměti souhrnu konverzace v LangChain.