Paano Magdagdag ng Memory State sa Chain Gamit ang LangChain?

Paano Magdagdag Ng Memory State Sa Chain Gamit Ang Langchain



Pinapayagan ng LangChain ang mga developer na bumuo ng mga modelo ng chat na maaaring makipag-usap sa mga tao gamit ang mga natural na wika. Upang magkaroon ng mabisang pag-uusap, kailangang may memorya ang modelo kung saan iniimbak ang konteksto ng pag-uusap. Ang mga modelo ng LangChain ay maaaring mag-imbak ng mga mensahe sa chat bilang mga obserbasyon upang ang output ay maaaring nasa loob ng konteksto ng pag-uusap sa lahat ng oras

Ang gabay na ito ay maglalarawan sa proseso ng paglo-load ng mga chain mula sa LangChain Hub.

Paano Magdagdag ng Memory State sa Chain Gamit ang LangChain?

Maaaring gamitin ang katayuan ng memorya upang simulan ang mga chain dahil maaari itong sumangguni sa kamakailang halaga na nakaimbak sa mga chain na gagamitin habang ibinabalik ang output. Upang matutunan ang proseso ng pagdaragdag ng estado ng memorya sa mga chain gamit ang LangChain framework, dumaan lang sa madaling gabay na ito:







Hakbang 1: I-install ang Mga Module

Una, pumasok sa proseso sa pamamagitan ng pag-install ng LangChain framework kasama ang mga dependency nito gamit ang pip command:



pip install langchain



I-install din ang OpenAI module para makuha ang mga library nito na magagamit para magdagdag ng memory state sa chain:





pip install openai

Kunin ang API key mula sa OpenAI account at itakda ang kapaligiran gamit ito upang ma-access ito ng mga chain:



angkat ikaw

angkat getpass

ikaw . humigit-kumulang [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )

Mahalaga ang hakbang na ito para gumana nang maayos ang code.

Hakbang 2: Mag-import ng Mga Aklatan

Pagkatapos i-set up ang environment, i-import lang ang mga library para sa pagdaragdag ng estado ng memory tulad ng LLMChain, ConversationBufferMemory, at marami pa:

mula sa langchain. mga tanikala angkat ConversationChain

mula sa langchain. alaala angkat ConversationBufferMemory

mula sa langchain. chat_models angkat ChatOpenAI

mula sa langchain. mga tanikala . llm angkat LLMChain

mula sa langchain. mga senyales angkat PromptTemplate

Hakbang 3: Building Chain

Ngayon, gumawa lang ng mga chain para sa LLM gamit ang OpenAI() na paraan at template ng prompt gamit ang query para tawagan ang chain:

chat = ChatOpenAI ( temperatura = 0 )

prompt_template = 'Sumulat ng {style} joke'

llm_chain = LLMChain ( llm = chat , prompt = PromptTemplate. from_template ( prompt_template ) )

llm_chain ( mga input = { 'estilo' : 'corny' } )

Ang modelo ay nagpakita ng output gamit ang LLM na modelo tulad ng ipinapakita sa screenshot sa ibaba:

Hakbang 4: Pagdaragdag ng Estado ng Memory

Dito, idaragdag natin ang estado ng memorya sa chain gamit ang ConversationBufferMemory() na paraan at patakbuhin ang chain upang makakuha ng 3 kulay mula sa bahaghari:

pag-uusap = ConversationChain (

llm = chat ,

alaala = ConversationBufferMemory ( )

)

pag-uusap. tumakbo ( 'maikli ibigay ang 3 kulay sa bahaghari' )

Ang modelo ay nagpakita lamang ng tatlong kulay ng bahaghari at ang konteksto ay naka-imbak sa memorya ng chain:

Dito namin pinapatakbo ang chain na may hindi maliwanag na utos bilang ' iba pang 4? ” kaya ang modelo mismo ay nakakakuha ng konteksto mula sa memorya at ipinapakita ang natitirang mga kulay ng bahaghari:

pag-uusap. tumakbo ( 'ibang 4?' )

Eksaktong ginawa iyon ng modelo, dahil naunawaan nito ang konteksto at ibinalik ang natitirang apat na kulay mula sa hanay ng bahaghari:

Iyon ay tungkol sa paglo-load ng mga chain mula sa LangChain Hub.

Konklusyon

Para idagdag ang memory sa mga chain gamit ang LangChain framework, i-install lang ang mga module para i-set up ang environment para sa pagbuo ng LLM. Pagkatapos nito, i-import ang mga aklatan na kinakailangan upang bumuo ng mga chain sa LLM at pagkatapos ay idagdag ang estado ng memorya dito. Pagkatapos idagdag ang memory state sa chain, magbigay lang ng command sa chain para makuha ang output at pagkatapos ay magbigay ng isa pang command sa loob ng konteksto ng nauna para makuha ang tamang sagot. Ang post na ito ay nagpapaliwanag sa proseso ng pagdaragdag ng estado ng memorya sa mga chain gamit ang LangChain framework.