Mikä on agentti LangChainissa?

Mika On Agentti Langchainissa



LangChain-kehystä käytetään kielimalleja hyödyntävien sovellusten kehittämiseen. LLM:t antavat yleisiä vastauksia, ne eivät kohdista mihinkään tiettyyn kenttään, kun taas LangChainilla on tehokkain sen tarjoama attribuutti luodakseen ketjuja, joissa käyttäjät voivat yhdistää useita komponentteja yhteen ja tehdä yhden yhtenäisen sovelluksen. LangChainissa on monia moduuleja, datayhteyksiä, ketjuja, agentteja, muistia ja takaisinsoittoa.

Tässä artikkelissa keskustelemme LangChainin agenteista kaikista mahdollisista näkökohdista

Mikä on agentti LangChainissa?

Jotkut sovellukset eivät vaadi vain ennalta määrättyjä ketjuja, vaan ne vaativat tuntemattoman ketjun, joka riippuu käyttäjän syötteestä. Tällaista tapausta varten on olemassa ' agentti ', jotka käyttävät työkalua ja päättävät, mitä työkalua tarvitaan käyttäjän syötteen ja sen mukaan, mitä hän pyytää. Työkalupakkaus on pohjimmiltaan joukko työkaluja, joita tarvitaan tietyn tavoitteen saavuttamiseen, ja työkalupakkissa on 3-5 työkalua.







LangChain-agenttien tyypit

Pääasiallisia agentteja on kaksi:



  • Toiminta-agentit
  • Suunnittele ja toteuta -agentit

Toiminta-agentit: Nämä agentit päättävät toimenpiteistä vaihe vaiheelta arvioivat jokaisen vaiheen ja suorittavat sen ja siirtyvät seuraavaan, jos keskustelemme agentin pseudokoodista, joka sisältää muutaman vaiheen



  • Syöte vastaanotetaan käyttäjältä.
  • Välittäjä päättää työkalun ja minkä tyyppistä työkalua tarvitaan.
  • Sitä työkalua kutsutaan syöttötyökalulla ja havainto tallennetaan.
  • Historiatyökalu, havaintotyökalu ja syöttötyökalu välitetään takaisin agentille.
  • Toista prosessia, kunnes agentti päättää lopettaa tämän työkalun.

Suunnittele ja toteuta -agentit: Nämä agentit päättävät ensin toimenpiteestä ja suorittavat sitten kaikki nuo toimet.





  • Käyttäjän syöttö vastaanotetaan.
  • Agentti listaa kaikki suoritettavat vaiheet.
  • Toimeenpanija käy läpi luettelon vaiheista ja suorittaa ne.

Agentin määrittäminen

Ennen agentin määrittämistä sinun on asennettava uusin versio Python käyttöjärjestelmäsi mukaan.

Vaihe 1: Pakettien asentaminen
Ensinnäkin meidän on luotava ympäristö tätä varten, meidän on asennettava LangChain, google-search-results ja openai ' pip 'komento:



! pip Asentaa langchain
! pip Asentaa google-hakutulokset
! pip Asentaa openai

Vaadittujen kirjastojen tuonti:

langchain.schema tuonti SystemMessagesta
langchain.agentsista tuo OpenAIFunctionsAgent, AgentExecutor
langchain.agents tuontityökalusta
langchain.chat_modelsista tuo ChatOpenAI
tuonti re
getpassista tuonti getpass

Vaihe 2: Hanki Secret API
Ympäristön määrittämisen jälkeen sinun on nyt hankittava salaiset API-avaimet OpenAI-alustalta:

openai_api_key = getpass ( )
llm = ChatOpenAI ( openai_api_key =openai_api_key, lämpötila = 0 )

Vaihe 3: Työkalun alustus
Seuraavaksi määritellään työkalu, joka kirjoittaa yksinkertaista Python-koodia merkkijonon pituuden saamiseksi.

@ työkalu
def get_word_string ( sana: str ) - > int:
'' 'Anna minulle merkkijonon pituus.' ''
palata vain ( sana )

työkalut = [ get_word_string ]

Vaihe 4: Luo kehotemalli
Kun olet määrittänyt työkalun, aseta kehotemalli tätä käyttöä varten 'OpenAIFunctionsAgent.create_prompt()' aputoiminto, joka luo mallin automaattisesti.

system_message = Järjestelmäviesti ( sisältö = 'Olet erittäin voimakas avustaja, mutta huono laskemaan merkkijonojen pituuksia.' )
prompt = OpenAIFunctionsAgent.create_prompt ( system_message =järjestelmän_viesti )

Vaihe 5: Agentin luominen
Nyt voimme päättää kaikki palaset ja luoda agentin käyttämällä funktiota nimeltä 'OpenAIFunctionsAgent()' .

agentti = OpenAIFunctionsAgent ( llm =llm, työkaluja = työkalut, kehote = kehote )

Vaihe 6: Ajonajan määrittäminen
Jos olet luonut agentin onnistuneesti, luo agentille ajonaika, tälle ”AgentExecutoria” käytetään agentin ajonaikana.

agent_executor = AgentExecutor ( agentti = agentti, työkaluja = työkalut, monisanainen = Totta )

Vaihe 7: Agenttitestaus
Runtime:n luomisen jälkeen on aika testata agenttia.

agent_executor.run ( 'Kuinka monta sanaa tässä merkkijonossa on?' )

Jos olet lisännyt oikean API-avaimen vaiheessa 2, saat vastauksen.

Johtopäätös

Tätä artikkelia on havainnollistettu monesta näkökulmasta, ensinnäkin se osoittaa, mikä on LangChain ja miten se toimii, sitten se siirtyy agenteihin LangChainissa ja käsittelee agenttien tarkoitusta LangChainissa ja sisältää tietoja kahdesta pääasiallisesta agenttityypistä. 'Toiminta-agentit' ja 'Suunnittele ja toteuta agentit' Käytetään LangChainissa ja lopussa koodin suoritus on ollut agentin perustaminen LangChainissa