Quick Outline
Tämä viesti osoittaa seuraavaa:
Mitä ovat aineet luonnollisen kielen käsittelyssä (NLP)
LangChainin agenttien käytön aloittaminen
- Kehysten asentaminen
- Määritä chat-malli
- Rakennusagentti
- Agentin kutsuminen
- Määritä agenttityökalut
- Agentin testaus
Mitä ovat luonnollisen kielen käsittelyn aineet (NLP)?
Agentit ovat luonnollisen kielen sovelluksen tärkeitä osia, ja ne käyttävät Natural Language Understandingia (NLU) kyselyjen ymmärtämiseen. Nämä agentit ovat ohjelmia, jotka toimivat keskustelumallina vuorovaikutuksessa ihmisten kanssa tehtäväsarjan avulla. Agentit käyttävät useita työkaluja, joita agentti voi kutsua suorittamaan useita toimintoja tai määrittämään seuraavan suoritettavan tehtävän.
LangChainin agenttien käytön aloittaminen
Aloita agenttien rakentaminen keskustelua varten ihmisten kanssa poimimalla tulos LangChainin agenttien avulla. Jos haluat oppia aloittamaan agenttien käytön LangChainissa, seuraa alla olevia ohjeita:
Vaihe 1: Kehysten asentaminen
Aloita ensin LangChain-kehyksen asennusprosessi käyttämällä ' pip ”-komento saadaksesi tarvittavat riippuvuudet agenttien käyttöä varten:
pip asennus langchain
Asenna OpenAI-moduuli LLM:n rakentamiseen ja käytä sitä agenttien määrittämiseen LangChainissa:
pip install openai
Järjestä ympäristö OpenAI-moduulille käyttämällä sen API-avainta tililtä suorittamalla seuraava koodi:
tuonti sinätuonti getpass
sinä . suunnilleen [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )
Vaihe 2: Määritä chat-malli
Tuo ChatOpenAI-moduuli LangChainista rakentaaksesi LLM sen toiminnolla:
alkaen langchain. chat_models tuonti ChatOpenAIllm = ChatOpenAI ( lämpötila = 0 )
Tuo agentille työkaluja, joilla voit määrittää tehtävät tai toiminnot, jotka agentin on suoritettava. Seuraava koodi käyttää get_word_length()-metodia saadakseen käyttäjän antaman sanan pituuden:
alkaen langchain. agentit tuonti työkalu@ työkalu
def hanki_sanan_pituus ( sana: str ) - > int :
'''sanan pituuden saaminen'''
palata vain ( sana )
työkaluja = [ hanki_sanan_pituus ]
Määritä chat-mallin malli tai rakenne luodaksesi käyttöliittymän chatille:
alkaen langchain. kehotteita tuonti ChatPromptTemplate , ViestitPlaceholderkehote = ChatPromptTemplate. from_messages ( [
( 'järjestelmä' , 'Avustajasi on aivan mahtava, mutta pituuden laskemisessa on parannettavaa' ) ,
( 'käyttäjä' , '{input}' ) ,
ViestitPlaceholder ( muuttujan_nimi = 'agent_scratchpad' ) ,
] )
Vaihe 3: Rakennusaine
Tuo työkalukirjasto LLM:n rakentamiseen OpenAI-funktioita käyttävillä työkaluilla LangChain-moduulista:
alkaen langchain. työkaluja . renderöidä tuonti format_tool_to_openai_functionllm_with_tools = llm. sitoa (
toimintoja = [ format_tool_to_openai_function ( t ) varten t sisään työkaluja ]
)
Määritä agentti käyttämällä OpenAI-funktioagenttia käyttämään lähtöjäsennintä toiminto-/tehtäväsekvenssien asettamiseen:
alkaen langchain. agentit . format_scratchpad tuonti format_to_openai_functionsalkaen langchain. agentit . output_parsers tuonti OpenAIFunctionsAgentOutputParser
agentti = {
'syöttö' : lambda x: x [ 'syöttö' ] ,
'agent_scratchpad' : lambda x: format_to_openai_functions ( x [ 'intermediate_steps' ] )
} | kehota | llm_with_tools | OpenAIFunctionsAgentOutputParser ( )
Vaihe 4: Agentin kutsuminen
Seuraava vaihe käyttää invoke()-funktiota agentin kutsumiseen käyttämällä input- ja intermediate_steps-argumentteja:
agentti. vedota ( {'syöttö' : 'kuinka monta kirjainta sanassa hyvä' ,
'välivaiheet' : [ ]
} )
Vaihe 5: Määritä agenttityökalut
Sen jälkeen tuo AgentFinish-kirjasto konfiguroidaksesi intermediate_steps integroimalla kaikki vaiheet järjestyksessä suorittaaksesi toiminnon:
alkaen langchain. kaava . agentti tuonti AgentFinishvälivaiheet = [ ]
sillä aikaa Totta :
ulostulo = agentti. vedota ( {
'syöttö' : 'kirjaimet hyvässä kunnossa' ,
'välivaiheet' : välivaiheet
} )
jos tapaus ( ulostulo , AgentFinish ) :
lopullinen tulos = ulostulo. paluuarvot [ 'lähtö' ]
tauko
muu :
Tulosta ( ulostulo. työkalu , ulostulo. tool_input )
työkalu = {
'get_word_length' : get_word_length
} [ ulostulo. työkalu ]
havainto = työkalu. juosta ( ulostulo. tool_input )
välivaiheet. liittää ( ( ulostulo , havainto ) )
Tulosta ( lopullinen tulos )
Vaihe 6: Agentin testaus
Suorita nyt agentti kutsumalla AgentExecutor()-metodia, kun olet tuonut sen kirjaston LangChainista:
alkaen langchain. agentit tuonti AgentExecutoragentti_executor = AgentExecutor ( agentti = agentti , työkaluja = työkaluja , monisanainen = Totta )
Kutsu lopuksi agent_executor input-argumentilla, jotta voit kirjoittaa agentin kyselyn:
agentti_executor. vedota ( { 'syöttö' : 'kuinka monta kirjainta sanassa hyvä' } )Agentti on näyttänyt vastauksen syöteargumentissa annettuun kysymykseen ketjun päätyttyä:
Siinä on kyse agenttien käytön aloittamisesta LangChain-kehyksessä.
Johtopäätös
Aloita agenttien käyttö LangChainissa asentamalla ympäristön määrittämiseen tarvittavat moduulit OpenAI API-avaimella. Tämän jälkeen määritä chat-malli asettamalla kehotemalli agentin rakentamiseen välivaiheiden sarjalla. Kun agentti on määritetty, rakenna työkalut määrittämällä tehtävät syötemerkkijonon antamisen jälkeen. Tämä blogi on osoittanut agenttien käyttöprosessin LangChainissa.