Paano Ma-access ang Intermediate Steps ng isang Ahente sa LangChain?

Paano Ma Access Ang Intermediate Steps Ng Isang Ahente Sa Langchain



Ang LangChain ay ang balangkas para sa pagbuo ng mga modelo ng chat o mga modelo ng wika na may kakayahang sagutin ang mga tanong sa wika ng tao. Inilalagay ng user ang string sa natural na wika at naiintindihan ito ng modelo upang makabuo ng tugon. Sa pamamagitan ng pagtingin sa istraktura mula sa panlabas na pananaw, itinuturing na ang mga modelo ng chat ay gumaganap lamang ng mga pagkilos/gawain na ito. Gayunpaman, naglalaman ito ng maraming intermediate na hakbang na dapat gumana sa isang partikular na pagkakasunud-sunod upang makakuha ng pinakamainam na pagganap.

Mabilis na Balangkas

Ipapakita ng post na ito ang sumusunod:

Paano Ma-access ang Intermediate Steps ng isang Ahente sa LangChain?

Upang mabuo ang ahente sa LangChain, kailangang i-configure ng user ang mga tool nito at ang istraktura ng template upang makuha ang bilang ng mga hakbang na kasangkot sa modelo. Responsable ang ahente sa pag-automate ng mga intermediate na hakbang tulad ng mga iniisip, aksyon, obserbasyon, atbp. Upang matutunan kung paano i-access ang mga intermediate na hakbang ng isang ahente sa LangChain, sundin lang ang mga nakalistang hakbang:







Hakbang 1: Pag-install ng Mga Framework

Una sa lahat, i-install lamang ang mga dependency ng LangChain sa pamamagitan ng pagpapatupad ng sumusunod na code sa Python Notebook:



pip install langchain_experimental



I-install ang OpenAI module para makuha ang mga dependency nito gamit ang pip utos at gamitin ang mga ito upang bumuo ng modelo ng wika:





pip install openai

Hakbang 2: Pagse-set ng OpenAI Environment

Kapag na-install na ang mga module, i-set up ang OpenAI na kapaligiran gamit ang API key na nabuo mula sa account nito:



angkat ikaw
angkat getpass

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

Hakbang 3: Pag-import ng Mga Aklatan

Ngayon na mayroon na kaming naka-install na mga dependency, gamitin ang mga ito upang mag-import ng mga aklatan mula sa LangChain:

galing langchain. mga ahente angkat load_tools
galing langchain. mga ahente angkat initialize_agent
galing langchain. mga ahente angkat Uri ng Ahente
galing langchain. llms angkat OpenAI

Hakbang 4: Pagbuo ng LLM at Ahente

Kapag na-import na ang mga aklatan, oras na para gamitin ang mga ito para sa pagbuo ng modelo ng wika at mga tool para sa ahente. Tukuyin ang llm variable at italaga ito gamit ang OpenAI() na paraan na naglalaman ng mga argumento ng temperatura at model_name. Ang ' mga kasangkapan ” variable ay naglalaman ng load_tools() na pamamaraan kasama ang SerpAPi at llm-math tool at ang modelo ng wika sa argumento nito:

llm = OpenAI ( temperatura = 0 , modelo_pangalan = 'text-davinci-002' )
mga kasangkapan = load_tools ( [ 'serpapi' , 'llm-math' ] , llm = llm )

Kapag na-configure na ang modelo ng wika at mga tool, idisenyo lang ang ahente upang isagawa ang mga intermediate na hakbang gamit ang mga tool sa modelo ng wika:

ahente = initialize_agent (
mga kasangkapan ,
llm ,
ahente = Uri ng Ahente. ZERO_SHOT_REACT_DESCRIPTION ,
verbose = totoo ,
return_intermediate_steps = totoo ,
)

Hakbang 5: Paggamit ng Ahente

Ngayon, ilagay ang ahente sa pagsubok sa pamamagitan ng pagtatanong sa input ng agent() na pamamaraan at pagsasagawa nito:

tugon = ahente (
{
'input' : 'Sino ang girlfriend ni Leo DiCaprio at Ano ang agwat ng kanilang edad'
}
)

Ang modelo ay mahusay na nagtrabaho upang makuha ang pangalan ng kasintahan ni Leo DiCaprio, ang kanyang edad, edad ni Leo DiCaprio, at ang pagkakaiba sa pagitan nila. Ang sumusunod na screenshot ay nagpapakita ng ilang tanong at sagot na hinanap ng ahente upang makuha ang huling sagot:

Ang screenshot sa itaas ay hindi nagpapakita ng pagtatrabaho ng ahente at kung paano ito makakarating sa yugtong iyon upang mahanap ang lahat ng mga sagot. Lumipat tayo sa susunod na seksyon upang mahanap ang mga hakbang:

Paraan 1: Default na Uri ng Pagbabalik upang I-access ang Mga Intermediate na Hakbang

Ang unang paraan upang ma-access ang intermediate na hakbang ay ang paggamit ng default na uri ng pagbabalik na inaalok ng LangChain gamit ang sumusunod na code:

print ( tugon [ 'intermediate_steps' ] )

Ang sumusunod na GIF ay nagpapakita ng mga intermediate na hakbang sa isang linya na hindi masyadong maganda pagdating sa aspeto ng pagiging madaling mabasa:

Paraan 2: Paggamit ng 'mga dump' upang I-access ang Mga Intermediate na Hakbang

Ang susunod na paraan ay nagpapaliwanag ng isa pang paraan upang makuha ang mga intermediate na hakbang gamit ang dump library mula sa LangChain framework. Gamitin ang dumps() na pamamaraan na may magandang argumento upang gawing mas structured at madaling basahin ang output:

galing langchain. load . itapon angkat mga tambakan

print ( mga tambakan ( tugon [ 'intermediate_steps' ] , maganda = totoo ) )

Ngayon, mayroon kaming output sa isang mas structured na form na madaling mabasa ng user. Nahahati din ito sa maraming seksyon upang mas magkaroon ng kahulugan at ang bawat seksyon ay naglalaman ng mga hakbang upang mahanap ang mga sagot sa mga tanong:

Iyon lang ang tungkol sa pag-access sa mga intermediate na hakbang ng isang ahente sa LangChain.

Konklusyon

Upang ma-access ang mga intermediate na hakbang ng isang ahente sa LangChain, i-install ang mga module para mag-import ng mga library para sa pagbuo ng mga modelo ng wika. Pagkatapos nito, mag-set up ng mga tool upang simulan ang ahente gamit ang mga tool, llm, at uri ng ahente na makakasagot sa mga tanong. Kapag na-configure na ang ahente, subukan ito para makuha ang mga sagot at pagkatapos ay gamitin ang Default na uri o dumps library para ma-access ang mga intermediate na hakbang. Ang gabay na ito ay nagpapaliwanag sa proseso ng pag-access sa mga intermediate na hakbang ng isang ahente sa LangChain.