See juhend illustreerib olemimälu kasutamise protsessi LangChainis.
Kuidas LangChainis olemimälu kasutada?
Seda olemit kasutatakse mällu salvestatud võtmefaktide säilitamiseks, et need päringute/viipade abil päringute/viipade abil pärimise korral välja tõmmata. Olemimälu LangChainis kasutamise protsessi tundmaõppimiseks külastage lihtsalt järgmist juhendit.
1. samm: installige moodulid
Esmalt installige LangChaini moodul, kasutades käsku pip, et saada selle sõltuvused:
pip install langchain
Pärast seda installige OpenAI moodul, et hankida selle teegid LLM-ide ja vestlusmudelite loomiseks:
pip install openai
Seadistage OpenAI keskkond kasutades API-võtit, mille saab välja võtta OpenAI kontolt:
importida sina
importida saada pass
sina . umbes [ 'OPENAI_API_KEY' ] = saada pass . saada pass ( 'OpenAI API võti:' )
2. samm: olemimälu kasutamine
Olemimälu kasutamiseks importige vajalikud teegid LLM-i loomiseks OpenAI() meetodi abil:
alates langchain. llms importida OpenAIalates langchain. mälu importida ConversationEntityMemory
llm = OpenAI ( temperatuuri = 0 )
Pärast seda määratlege mälu muutuja, kasutades meetodit ConversationEntityMemory(), et treenida mudelit sisend- ja väljundmuutujate abil:
mälu = ConversationEntityMemory ( llm = llm )_sisend = { 'sisend' : 'Joe are Root on teinud projekti' }
mälu. load_memory_variables ( _sisend )
mälu. salvesta_kontekst (
_sisend ,
{ 'väljund' : 'Tore! Mis projekt see on?' }
)
Nüüd testige mälu, kasutades päringut/viipa sisend muutuja, kutsudes välja meetodi load_memory_variables():
mälu. load_memory_variables ( { 'sisend' : 'kes on Root' } )
Andke nüüd rohkem teavet, et mudel saaks mällu lisada veel mõned olemid:
mälu = ConversationEntityMemory ( llm = llm , return_messages = Tõsi )_sisend = { 'sisend' : 'Joe are Root on teinud projekti' }
mälu. load_memory_variables ( _sisend )
mälu. salvesta_kontekst (
_sisend ,
{ 'väljund' : 'Tore! Mis projekt see on' }
)
Väljundi saamiseks mällu salvestatud olemite abil käivitage järgmine kood. See on võimalik läbi sisend sisaldab viipa:
mälu. load_memory_variables ( { 'sisend' : 'kes on Joe' } )
3. samm: olemimälu kasutamine ahelas
Olemimälu kasutamiseks pärast ahela loomist importige lihtsalt vajalikud teegid järgmise koodiploki abil:
alates langchain. ketid importida Vestlusahelalates langchain. mälu importida ConversationEntityMemory
alates langchain. mälu . viip importida ENTITY_MEMORY_CONVERSATION_TEMPLATE
alates püdantlik importida Põhimudel
alates trükkimine importida Nimekiri , Dikt , Ükskõik milline
Ehitage vestlusmudel meetodi ConversationChain() abil, kasutades argumente nagu llm:
vestlus = Vestlusahel (llm = llm ,
paljusõnaline = Tõsi ,
viip = ENTITY_MEMORY_CONVERSATION_TEMPLATE ,
mälu = ConversationEntityMemory ( llm = llm )
)
Kutsuge välja vestlus.predict() meetod, mille sisend on lähtestatud viipa või päringuga:
vestlus. ennustada ( sisend = 'Joe are Root on teinud projekti' )
Nüüd hankige iga olemi jaoks eraldi väljund, mis kirjeldab selle kohta teavet:
vestlus. mälu . olemi_pood . kauplus
Kasutage mudeli väljundit sisendi andmiseks, et mudel saaks salvestada rohkem teavet nende olemite kohta:
vestlus. ennustada ( sisend = 'Nad üritavad Langchainile lisada keerukamaid mälustruktuure' )
Pärast mällu salvestatava teabe esitamist esitage olemite kohta konkreetse teabe eraldamiseks lihtsalt küsimus:
vestlus. ennustada ( sisend = 'Mida sa tead Joe ja Rooti kohta' )
4. samm: mälupoe testimine
Kasutaja saab mälusalve otse kontrollida, et saada neisse salvestatud teave, kasutades järgmist koodi:
alates printida importida printidaprintida ( vestlus. mälu . olemi_pood . kauplus )
Esitage rohkem teavet mällu salvestamiseks, kuna rohkem teavet annab täpsemad tulemused:
vestlus. ennustada ( sisend = 'Root on asutanud ettevõtte nimega HJRS' )
Pärast olemite kohta lisateabe lisamist eemaldage mälusalvest teave:
alates printida importida printidaprintida ( vestlus. mälu . olemi_pood . kauplus )
Mälus on teavet mitme üksuse kohta, nagu HJRS, Joe, LangChain ja Root:
Nüüd eraldage teave konkreetse olemi kohta, kasutades sisendmuutujas määratletud päringut või viipa:
vestlus. ennustada ( sisend = 'Mida sa tead Rooti kohta' )
See kõik puudutab olemimälu kasutamist LangChaini raamistiku abil.
Järeldus
Olemimälu kasutamiseks LangChainis installige pärast OpenAI keskkonna seadistamist mudelite loomiseks vajalike teekide importimiseks lihtsalt vajalikud moodulid. Pärast seda koostage LLM-mudel ja salvestage olemid mällu, pakkudes olemite kohta teavet. Kasutaja saab ka nende olemite abil teavet hankida ja luua need mälud ahelatesse koos segatud teabega üksuste kohta. Selles postituses on käsitletud olemimälu kasutamise protsessi LangChainis.