Kaip naudoti pokalbių buferio langą „LangChain“?

Kaip Naudoti Pokalbiu Buferio Langa Langchain



„LangChain“ yra sistema, kurią galima naudoti „Python“ bloknote mokant kalbos modelius arba pokalbių robotus naudojant mašininio mokymosi modelius. Šie kalbos modeliai naudojami pokalbiui su žmonėmis jų natūralia kalba po to, kai jie yra išmokyti į žmones panašiomis kalbomis. Šis įrašas parodys pokalbių buferio lango naudojimą „LangChain“.

Kaip naudoti pokalbių buferio langą „LangChain“?

Pokalbių buferio langas naudojamas naujausiems pokalbio pranešimams išsaugoti atmintyje, kad būtų galima gauti naujausią kontekstą. Jis naudoja K reikšmę žinutėms ar eilutėms saugoti atmintyje naudojant „LangChain“ sistemą.

Norėdami sužinoti, kaip naudoti pokalbių buferio langą LangChain, tiesiog peržiūrėkite šį vadovą:







1 veiksmas: įdiekite modulius

Pradėkite pokalbių buferio lango naudojimo procesą įdiegę LangChain modulį su reikiamomis priklausomybėmis pokalbių modeliams kurti:



pip įdiegti langchain



Po to įdiekite OpenAI modulį, kurį galima naudoti kuriant didelių kalbų modelius „LangChain“:





pip install openai

Dabar nustatyti OpenAI aplinką Norėdami sukurti LLM grandines naudodami 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: pokalbių buferio lango atminties naudojimas

Norėdami naudoti pokalbių buferio lango atmintį „LangChain“, importuokite ConversationBufferWindowMemory biblioteka:

langchain. atmintis importuoti ConversationBufferWindowMemory

Sukonfigūruokite atmintį naudodami ConversationBufferWindowMemory () metodas, kurio argumentas yra k reikšmė. K reikšmė bus naudojama norint išsaugoti naujausius pokalbio pranešimus ir sukonfigūruoti mokymo duomenis naudojant įvesties ir išvesties kintamuosius:

atmintis = ConversationBufferWindowMemory ( k = 1 )

atmintis. save_context ( { 'įvestis' : 'Sveiki' } , { 'išvestis' : 'Kaip tau sekasi' } )

atmintis. save_context ( { 'įvestis' : 'Aš esu geras, o tu' } , { 'išvestis' : 'nedaug' } )

Patikrinkite atmintį paskambinę apkrovos_atminties_kintamieji () būdas pradėti pokalbį:

atmintis. apkrovos_atminties_kintamieji ( { } )

Norėdami gauti pokalbio istoriją, sukonfigūruokite funkciją ConversationBufferWindowMemory() naudodami return_messages argumentas:

atmintis = ConversationBufferWindowMemory ( k = 1 , return_messages = Tiesa )

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

atmintis. save_context ( { 'įvestis' : 'nedaug tu' } , { 'išvestis' : 'nedaug' } )

Dabar iškvieskite atmintį naudodami apkrovos_atminties_kintamieji () būdas gauti atsakymą su pokalbio istorija:

atmintis. apkrovos_atminties_kintamieji ( { } )

3 veiksmas: buferio lango naudojimas grandinėje

Sukurkite grandinę naudodami OpenAI ir Pokalbių grandinė bibliotekas ir sukonfigūruokite buferinę atmintį, kad būtų saugomi naujausi pokalbio pranešimai:

langchain. grandines importuoti Pokalbių grandinė
langchain. llms importuoti OpenAI
#pokalbio santrauka naudojant kelis parametrus
pokalbis_su_santrauka = Pokalbių grandinė (
llm = OpenAI ( temperatūros = 0 ) ,
#building atminties buferis naudojant jo funkciją su k reikšme naujausiems pranešimams saugoti
atmintis = ConversationBufferWindowMemory ( k = 2 ) ,
#configure išsamų kintamąjį, kad išvestis būtų lengviau skaitoma
žodinis = Tiesa
)
pokalbis_su_santrauka. numatyti ( įvestis = 'Labas kas gero' )

Dabar tęskite pokalbį užduodami klausimą, susijusį su modelio pateikta produkcija:

pokalbis_su_santrauka. numatyti ( įvestis = 'Kokios jų problemos' )

Modelis sukonfigūruotas saugoti tik vieną ankstesnį pranešimą, kuris gali būti naudojamas kaip kontekstas:

pokalbis_su_santrauka. numatyti ( įvestis = 'Ar gerai sekasi' )

Paprašykite problemų sprendimo ir išvesties struktūra toliau slinks buferio langą pašalindama ankstesnius pranešimus:

pokalbis_su_santrauka. numatyti ( įvestis = 'Koks sprendimas' )

Tai viskas apie pokalbių buferio langų „LangChain“ naudojimo procesą.

Išvada

Norėdami naudoti pokalbių buferio lango atmintį LangChain, tiesiog įdiekite modulius ir nustatykite aplinką naudodami OpenAI API raktą. Po to sukurkite buferinę atmintį naudodami k reikšmę, kad pokalbyje būtų išsaugoti naujausi pranešimai, kad būtų išlaikytas kontekstas. Buferinė atmintis taip pat gali būti naudojama su grandinėmis, kad būtų užmegztas pokalbis su LLM arba grandine. Šiame vadove išsamiai aprašytas pokalbių buferio lango „LangChain“ naudojimo procesas.