Ovaj će vodič ilustrirati postupak korištenja sažetka razgovora u LangChainu.
Kako koristiti sažetak razgovora u LangChainu?
LangChain nudi biblioteke poput ConversationSummaryMemory koje mogu izdvojiti potpuni sažetak chata ili razgovora. Može se koristiti za dobivanje glavnih informacija razgovora bez potrebe za čitanjem svih poruka i teksta dostupnih u chatu.
Kako biste naučili postupak korištenja sažetka razgovora u LangChainu, jednostavno slijedite sljedeće korake:
Korak 1: Instalirajte module
Prvo instalirajte okvir LangChain da biste dobili njegove ovisnosti ili biblioteke pomoću sljedećeg koda:
pip instalirati langchain
Sada instalirajte OpenAI module nakon instaliranja LangChaina pomoću naredbe pip:
pip instaliraj openai
Nakon instaliranja modula, jednostavno postaviti okruženje pomoću sljedećeg koda nakon dobivanja API ključa s OpenAI računa:
uvoz vasuvoz getpass
vas . približno [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API ključ:' )
Korak 2: Korištenje sažetka razgovora
Uključite se u postupak korištenja sažetka razgovora uvozom biblioteka iz LangChaina:
iz langchain. memorija uvoz ConversationSummaryMemory , ChatMessageHistoryiz langchain. llms uvoz OpenAI
Konfigurirajte memoriju modela pomoću metoda ConversationSummaryMemory() i OpenAI() i spremite podatke u nju:
memorija = ConversationSummaryMemory ( llm = OpenAI ( temperatura = 0 ) )memorija. spremi_kontekst ( { 'ulazni' : 'zdravo' } , { 'izlaz' : 'bok' } )
Pokrenite memoriju pozivom load_memory_variables() metoda izdvajanja podataka iz memorije:
memorija. load_memory_variables ( { } )
Korisnik također može dobiti podatke u obliku razgovora kao svaki entitet sa zasebnom porukom:
memorija = ConversationSummaryMemory ( llm = OpenAI ( temperatura = 0 ) , povratne_poruke = Pravi )memorija. spremi_kontekst ( { 'ulazni' : 'zdravo' } , { 'izlaz' : 'Bok, kako si' } )
Da biste dobili poruku umjetne inteligencije i ljudi odvojeno, izvršite metodu load_memory_variables():
memorija. load_memory_variables ( { } )
Pohranite sažetak razgovora u memoriju i zatim izvršite memoriju za prikaz sažetka razgovora/razgovora na zaslonu:
poruke = memorija. chat_memory . porukeprethodni_sažetak = ''
memorija. predvidjeti_novi_sažetak ( poruke , prethodni_sažetak )
Korak 3: Korištenje sažetka razgovora s postojećim porukama
Korisnik također može dobiti sažetak razgovora koji postoji izvan razreda ili chata pomoću poruke ChatMessageHistory(). Ove se poruke mogu dodati u memoriju kako bi se automatski generirao sažetak cijelog razgovora:
povijesti = ChatMessageHistory ( )povijesti. dodaj_korisničku_poruku ( 'bok' )
povijesti. add_ai_message ( 'bok tamo!' )
Izgradite model kao što je LLM koristeći OpenAI() metodu za izvršavanje postojećih poruka u chat_memory varijabla:
memorija = ConversationSummaryMemory. iz_poruka (llm = OpenAI ( temperatura = 0 ) ,
chat_memory = povijesti ,
povratne_poruke = Pravi
)
Izvršite memoriju pomoću međuspremnika da dobijete sažetak postojećih poruka:
memorija. pufer
Izvršite sljedeći kod za izgradnju LLM-a konfiguriranjem međuspremnika pomoću poruka chata:
memorija = ConversationSummaryMemory (llm = OpenAI ( temperatura = 0 ) ,
pufer = Čovjek pita stroj o sebi
Sustav odgovara da je umjetna inteligencija izgrađena za dobro jer može pomoći ljudima da ostvare svoj potencijal''' ,
chat_memory = povijesti ,
povratne_poruke = Pravi
)
Korak 4: Korištenje sažetka razgovora u lancu
Sljedeći korak objašnjava postupak korištenja sažetka razgovora u lancu pomoću LLM-a:
iz langchain. llms uvoz OpenAIiz langchain. lanci uvoz Lanac razgovora
llm = OpenAI ( temperatura = 0 )
razgovor_sa_sažetkom = Lanac razgovora (
llm = llm ,
memorija = ConversationSummaryMemory ( llm = OpenAI ( ) ) ,
opširno = Pravi
)
razgovor_sa_sažetkom. predvidjeti ( ulazni = 'Bok, kako si' )
Ovdje smo počeli graditi lance započinjanjem razgovora ljubaznim upitom:
Sada se uključite u razgovor pitajući nešto više o posljednjem rezultatu kako biste ga proširili:
razgovor_sa_sažetkom. predvidjeti ( ulazni = 'Reci mi više o tome!' )Model je objasnio posljednju poruku s detaljnim uvodom u AI tehnologiju ili chatbot:
Izdvojite točku interesa iz prethodnog izlaza kako biste razgovor odveli u određenom smjeru:
razgovor_sa_sažetkom. predvidjeti ( ulazni = 'Nevjerojatno. Koliko je dobar ovaj projekt?' )Ovdje dobivamo detaljne odgovore od bota koji koristi knjižnicu memorije sažetka razgovora:
To je sve o korištenju sažetka razgovora u LangChainu.
Zaključak
Za korištenje poruke sažetka razgovora u LangChainu jednostavno instalirajte module i okvire potrebne za postavljanje okruženja. Nakon što je okruženje postavljeno, uvezite ConversationSummaryMemory biblioteku za izgradnju LLM-ova pomoću metode OpenAI(). Nakon toga jednostavno upotrijebite sažetak razgovora kako biste izdvojili detaljan izlaz iz modela koji je sažetak prethodnog razgovora. Ovaj vodič razradio je postupak korištenja memorije sažetka razgovora pomoću modula LangChain.