Kaip naudoti pokalbių santrauką „LangChain“?

Kaip Naudoti Pokalbiu Santrauka Langchain



„LangChain“ yra sistema, kurią galima naudoti kuriant kalbos modelius, naudojant didžiulį natūraliomis kalbomis sukurtų mokymo duomenų rinkinių kiekį. „LangChain“ teikia bibliotekas ir priklausomybes, kurias galima naudoti kuriant ir valdant pokalbių robotus ir kalbos modelius, tokius kaip LLM. Šie modeliai dažniausiai laikomi mašinomis, leidžiančiomis kalbėtis su arba išgauti tam tikrą informaciją, remiantis raginimais, parašytais į žmones panašiomis kalbomis.

Šis vadovas parodys pokalbių santraukos naudojimo „LangChain“ procesą.

Kaip naudoti pokalbių santrauką „LangChain“?

„LangChain“ teikia bibliotekas, tokias kaip „ConversationSummaryMemory“, kurios gali išgauti visą pokalbio ar pokalbio santrauką. Jis gali būti naudojamas norint gauti pagrindinę pokalbio informaciją, neskaitant visų pokalbyje esančių pranešimų ir teksto.







Norėdami sužinoti, kaip naudoti pokalbių santrauką „LangChain“, tiesiog atlikite šiuos veiksmus:



1 veiksmas: įdiekite modulius

Pirmiausia įdiekite „LangChain“ sistemą, kad gautumėte jos priklausomybes arba bibliotekas naudodami šį kodą:



pip įdiegti langchain





Dabar įdiekite „OpenAI“ modulius įdiegę „LangChain“ naudodami komandą pip:

pip install openai



Įdiegę modulius, tiesiog sutvarkyti aplinką naudodami šį kodą gavus API raktą iš OpenAI paskyros:

importuoti tu

importuoti gauti pasą

tu . maždaug [ „OPENAI_API_KEY“ ] = gauti pasą . gauti pasą ( „OpenAI API raktas“: )

2 veiksmas: pokalbio santraukos naudojimas

Įsitraukite į pokalbio santraukos naudojimo procesą importuodami bibliotekas iš „LangChain“:

langchain. atmintis importuoti ConversationSummaryMemory , ChatMessageHistory

langchain. llms importuoti OpenAI

Sukonfigūruokite modelio atmintį naudodami ConversationSummaryMemory() ir OpenAI() metodus ir išsaugokite joje duomenis:

atmintis = ConversationSummaryMemory ( llm = OpenAI ( temperatūros = 0 ) )

atmintis. save_context ( { 'įvestis' : 'Sveiki' } , { 'išvestis' : 'labas' } )

Paleiskite atmintį paskambinę load_memory_variables() būdas ištraukti duomenis iš atminties:

atmintis. apkrovos_atminties_kintamieji ( { } )

Vartotojas taip pat gali gauti duomenis pokalbio forma, kaip ir kiekvienas subjektas su atskiru pranešimu:

atmintis = ConversationSummaryMemory ( llm = OpenAI ( temperatūros = 0 ) , return_messages = Tiesa )

atmintis. save_context ( { 'įvestis' : 'Sveiki' } , { 'išvestis' : 'Labas, kaip laikaisi' } )

Norėdami gauti AI ir žmonių pranešimą atskirai, paleiskite load_memory_variables() metodą:

atmintis. apkrovos_atminties_kintamieji ( { } )

Išsaugokite pokalbio santrauką atmintyje ir paleiskite atmintį, kad ekrane būtų rodoma pokalbio / pokalbio santrauka:

žinutes = atmintis. pokalbių_atmintis . žinutes

ankstesnė_santrauka = ''

atmintis. numatyti_naują_santrauką ( žinutes , ankstesnė_santrauka )

3 veiksmas: pokalbių suvestinės naudojimas su esamais pranešimais

Naudotojas taip pat gali gauti pokalbio, vykstančio už klasės ar pokalbio ribų, santrauką naudodamas ChatMessageHistory() pranešimą. Šiuos pranešimus galima įtraukti į atmintį, kad ji galėtų automatiškai sugeneruoti viso pokalbio santrauką:

istorija = ChatMessageHistory ( )

istorija. add_user_message ( 'labas' )

istorija. add_ai_message ( 'Sveiki!' )

Sukurkite modelį, pvz., LLM, naudodami OpenAI() metodą, kad vykdytumėte esamus pranešimus pokalbių_atmintis kintamasis:

atmintis = ConversationSummaryMemory. from_messages (
llm = OpenAI ( temperatūros = 0 ) ,
pokalbių_atmintis = istorija ,
return_messages = Tiesa
)

Vykdykite atmintį naudodami buferį, kad gautumėte esamų pranešimų santrauką:

atmintis. buferis

Vykdykite šį kodą, kad sukurtumėte LLM, sukonfigūruodami buferinę atmintį naudodami pokalbių pranešimus:

atmintis = ConversationSummaryMemory (
llm = OpenAI ( temperatūros = 0 ) ,
buferis = '''Žmogus klausia mašinos apie save
Sistema atsako, kad dirbtinis intelektas sukurtas gerai, nes gali padėti žmonėms išnaudoti savo potencialą'''
,
pokalbių_atmintis = istorija ,
return_messages = Tiesa
)

4 veiksmas: pokalbio santraukos naudojimas grandinėje

Kitas veiksmas paaiškina pokalbio santraukos naudojimo grandinėje procesą naudojant LLM:

langchain. llms importuoti OpenAI
langchain. grandines importuoti Pokalbių grandinė
llm = OpenAI ( temperatūros = 0 )
pokalbis_su_santrauka = Pokalbių grandinė (
llm = llm ,
atmintis = ConversationSummaryMemory ( llm = OpenAI ( ) ) ,
žodinis = Tiesa
)
pokalbis_su_santrauka. numatyti ( įvestis = 'Sveiki! Kaip sekasi' )

Čia mes pradėjome kurti grandines, pradėdami pokalbį nuo mandagios paklausimo:

Dabar įsitraukite į pokalbį paklausdami šiek tiek daugiau apie paskutinį išvestį, kad jį išplėstumėte:

pokalbis_su_santrauka. numatyti ( įvestis = — Papasakok daugiau apie tai! )

Modelis paaiškino paskutinį pranešimą su išsamiu AI technologijos arba pokalbių roboto įvadu:

Ištraukite dominančią vietą iš ankstesnės išvesties, kad pokalbis būtų nukreiptas tam tikra kryptimi:

pokalbis_su_santrauka. numatyti ( įvestis = 'Nuostabu, koks geras šis projektas?' )

Čia mes gauname išsamius atsakymus iš roboto, naudodami pokalbių suvestinės atminties biblioteką:

Tai viskas apie pokalbio santraukos naudojimą „LangChain“.

Išvada

Norėdami naudoti pokalbio suvestinės pranešimą LangChain, tiesiog įdiekite modulius ir sistemas, reikalingus aplinkai nustatyti. Kai aplinka bus nustatyta, importuokite ConversationSummaryMemory biblioteka, skirta kurti LLM naudojant OpenAI() metodą. Po to tiesiog naudokite pokalbio santrauką, kad iš modelių ištrauktumėte išsamią išvestį, kuri yra ankstesnio pokalbio santrauka. Šiame vadove išsamiai aprašytas pokalbių suvestinės atminties naudojimo naudojant LangChain modulį procesas.