Kezdő lépések a LangChain ügynökeivel?

Kezdo Lepesek A Langchain Ugynokeivel



A LangChain a természetes nyelvi feldolgozás megoldásának keretrendszere olyan alkalmazások vagy szoftverek létrehozásához, amelyek interakcióba léphetnek és beszélgethetnek az emberekkel. A chatbotokat vagy nagy nyelvi modelleket (LLM) úgy tervezték, hogy olyan környezetet hozzanak létre, amely interfészként szolgálhat a csevegéshez/beszélgetéshez. Ezeket a csevegéseket természetes nyelveknek nevezett emberi nyelveken, például angolul stb. folytatják az emberek és egy mesterséges intelligencia modell között.

Gyors vázlat

Ez a bejegyzés a következőket mutatja be:







Mik azok az ágensek a természetes nyelvi feldolgozásban (NLP)



Kezdő lépések a LangChain ügynökeivel



Következtetés





Mik azok az ágensek a természetes nyelvi feldolgozásban (NLP)?

Az ügynökök a természetes nyelvi alkalmazás létfontosságú összetevői, és a Natural Language Understanding-t (NLU) használják a lekérdezések megértéséhez. Ezek az ágensek olyan programok, amelyek társalgási sablonként működnek az emberekkel való interakcióhoz a feladatok sorrendjét használva. Az ügynökök több olyan eszközt használnak, amelyeket az ügynök hívhat több művelet végrehajtására vagy a következő végrehajtandó feladat megadására.

Kezdő lépések a LangChain ügynökeivel

Indítsa el az ügynökök felépítésének folyamatát az emberekkel folytatott beszélgetéshez úgy, hogy kivonja a kimenetet a LangChain ügynökei segítségével. A LangChain ügynökeivel való kezdő lépések megismeréséhez egyszerűen kövesse az alábbi lépéseket:



1. lépés: Keretrendszerek telepítése

Először kezdje el a LangChain keretrendszer telepítésének folyamatát a „ csipog ” parancsot az ügynökök használatához szükséges függőségek lekéréséhez:

pip install langchain

Telepítse az OpenAI modult az LLM felépítéséhez, és használja azt a LangChain ügynökeinek konfigurálásához:

pip install openai

Állítsa be a környezetet az OpenAI modulhoz a fiókból származó API-kulcsával a következő kód futtatásával:

import te
import getpass

te . hozzávetőlegesen, körülbelül [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API kulcs:' )

2. lépés: A csevegési modell konfigurálása

Importálja a ChatOpenAI modult a LangChainből az LLM létrehozásához a funkciója segítségével:

tól től langchain. chat_models import ChatOpenAI

llm = ChatOpenAI ( hőfok = 0 )

Importáljon eszközöket az ügynök számára az ügynök által végrehajtandó feladatok vagy műveletek konfigurálásához. A következő kód a get_word_length() metódust használja a felhasználó által megadott szó hosszának lekéréséhez:

tól től langchain. ügynökök import eszköz

@ eszköz

def get_word_length ( szó: str ) - > int :

'''a szó hosszának meghatározása'''

Visszatérés csak ( szó )

eszközöket = [ get_word_length ]

Állítsa be a csevegési modell sablonját vagy struktúráját, hogy létrehozzon egy csevegési felületet:

tól től langchain. felszólítja import ChatPromptTemplate , MessagesPlaceholder

gyors = ChatPromptTemplate. from_messages ( [

( 'rendszer' , 'Az asszisztensed egészen elképesztő, de fejlesztésre szorul a hosszúságszámítás terén' ) ,

( 'felhasználó' , '{bemenet}' ) ,

MessagesPlaceholder ( változó_neve = 'agent_scratchpad' ) ,

] )

3. lépés: Építőanyag

Importálja az eszköztárat az LLM létrehozásához az OpenAI függvényeket használó eszközökkel a LangChain modulból:

tól től langchain. eszközöket . Vakol import format_tool_to_openai_function

llm_with_tools = llm. kötni (

funkciókat = [ format_tool_to_openai_function ( t ) számára t ban ben eszközöket ]

)

Állítsa be az ügynököt az OpenAI függvényügynök használatával, hogy a kimeneti elemzőt használja a műveletek/feladatok sorrendjének beállításához:

tól től langchain. ügynökök . format_scratchpad import format_to_openai_functions

tól től langchain. ügynökök . output_parsers import OpenAIFunctionsAgentOutputParser

ügynök = {

'bemenet' : lambda x: x [ 'bemenet' ] ,

'agent_scratchpad' : lambda x: format_to_openai_functions ( x [ 'intermediate_steps' ] )

} | felszólítás | llm_with_tools | OpenAIFunctionsAgentOutputParser ( )

4. lépés: Az ügynök meghívása

A következő lépés az invoke() függvény segítségével hívja meg az ügynököt az input és intermediate_steps argumentumokkal:

ügynök. hivatkozni ( {

'bemenet' : 'hány betű van a jó szóban' ,

'köztes_lépések' : [ ]

} )

5. lépés: Az Ügynökeszközök konfigurálása

Ezután egyszerűen importálja az AgentFinish könyvtárat az intermediate_steps konfigurálásához úgy, hogy az összes lépést egymás után integrálja a tevékenység befejezéséhez:

tól től langchain. séma . ügynök import AgentFinish
köztes_lépések = [ ]
míg Igaz :
Kimenet = ügynök. hivatkozni ( {
'bemenet' : 'jó betűk' ,
'köztes_lépések' : köztes_lépések
} )
ha instance ( Kimenet , AgentFinish ) :
végeredmény = Kimenet. return_values [ 'Kimenet' ]
szünet
más :
nyomtatás ( Kimenet. eszköz , Kimenet. tool_input )
eszköz = {
'get_word_length' : get_word_length
} [ Kimenet. eszköz ]
megfigyelés = eszköz. fuss ( Kimenet. tool_input )
köztes_lépések. mellékel ( ( Kimenet , megfigyelés ) )
nyomtatás ( végeredmény )

6. lépés: Az ügynök tesztelése

Most futtassa az ügynököt az AgentExecutor() metódus meghívásával, miután importálta a könyvtárát a LangChainből:

tól től langchain. ügynökök import AgentExecutor

ügynök_végrehajtó = AgentExecutor ( ügynök = ügynök , eszközöket = eszközöket , bőbeszédű = Igaz )

A végén hívja meg az agent_executort a bemeneti argumentummal az ügynök lekérdezésének megadásához:

ügynök_végrehajtó. hivatkozni ( { 'bemenet' : 'hány betű van a jó szóban' } )

Az ügynök a lánc befejezése után megjelenítette a választ a bemeneti argumentumban megadott kérdésre:

Ez az egész arról szól, hogy elkezdjük az ügynököket a LangChain keretrendszerben.

Következtetés

A LangChain ügynökeivel való kezdéshez egyszerűen telepítse a környezet beállításához szükséges modulokat az OpenAI API-kulcs használatával. Ezután konfigurálja a csevegési modellt az ügynök felépítéséhez szükséges prompt sablon beállításával a közbenső lépések sorozatával. Az ügynök konfigurálása után egyszerűen készítse el az eszközöket a feladatok megadásával, miután megadta a bemeneti karakterláncot a felhasználónak. Ez a blog bemutatta a LangChain ügynökeinek használatának folyamatát.