Quick Outline
Tämä viesti sisältää seuraavat osat:
- Async API -agentin käyttäminen LangChainissa
- Tapa 1: Sarjasuorituksen käyttäminen
- Tapa 2: Samanaikaisen suorituksen käyttäminen
- Johtopäätös
Kuinka käyttää Async API -agenttia LangChainissa?
Chat-mallit suorittavat useita tehtäviä samanaikaisesti, kuten kehotteen rakenteen ymmärtäminen, sen monimutkaisuus, tiedon poimiminen ja paljon muuta. Async API -agentin käyttäminen LangChainissa antaa käyttäjälle mahdollisuuden rakentaa tehokkaita chat-malleja, jotka voivat vastata useisiin kysymyksiin kerralla. Jos haluat oppia käyttämään Async API -agenttia LangChainissa, seuraa tätä opasta:
Vaihe 1: Kehysten asentaminen
Ensinnäkin asenna LangChain-kehys saadaksesi sen riippuvuudet Python-paketinhallinnasta:
pip asennus langchain
Asenna sen jälkeen OpenAI-moduuli rakentaaksesi kielimallin, kuten llm, ja aseta sen ympäristö:
pip install openai
Vaihe 2: OpenAI-ympäristö
Seuraava vaihe moduulien asennuksen jälkeen on ympäristön perustaminen käyttämällä OpenAI:n API-avainta ja Serper API etsiä tietoja Googlesta:
tuonti sinä
tuonti getpass
sinä . suunnilleen [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )
sinä . suunnilleen [ 'SERPER_API_KEY' ] = getpass . getpass ( 'Serper API Key:' )
Vaihe 3: Kirjastojen tuonti
Nyt kun ympäristö on asetettu, tuo tarvittavat kirjastot, kuten asyncio ja muut kirjastot LangChain-riippuvuuksien avulla:
alkaen langchain. agentit tuonti alustusagentti , load_toolstuonti aika
tuonti asyncio
alkaen langchain. agentit tuonti AgentType
alkaen langchain. llms tuonti OpenAI
alkaen langchain. takaisinsoittoja . stdout tuonti StdOutCallbackHandler
alkaen langchain. takaisinsoittoja . merkkiaineet tuonti LangChainTracer
alkaen aiohttp tuonti ClientSession
Vaihe 4: Asennuskysymykset
Aseta kysymystietojoukko, joka sisältää useita kyselyitä, jotka liittyvät eri verkkotunnuksiin tai aiheisiin, joita voidaan etsiä Internetistä (Google):
kysymyksiä = ['Kuka on US Openin voittaja vuonna 2021' ,
'Minkä ikäinen Olivia Wilden poikaystävä on' ,
'Kuka on formula 1:n maailmanmestaruuden voittaja' ,
'Kuka voitti US Openin naisten finaalin vuonna 2021' ,
'Kuka on Beyoncen aviomies ja minkä ikäinen hän on' ,
]
Tapa 1: Sarjasuorituksen käyttäminen
Kun kaikki vaiheet on suoritettu, suorita kysymykset saadaksesi kaikki vastaukset sarjasuorituksella. Se tarkoittaa, että yksi kysymys suoritetaan/näytetään kerrallaan ja palauttaa myös koko ajan, joka kuluu näiden kysymysten suorittamiseen:
llm = OpenAI ( lämpötila = 0 )työkaluja = load_tools ( [ 'google-otsikko' , 'llm-math' ] , llm = llm )
agentti = alustusagentti (
työkaluja , llm , agentti = AgentType. ZERO_SHOT_REACT_DESCRIPTION , monisanainen = Totta
)
s = aika . perf_counter ( )
#aikalaskurin konfigurointi saadaksesi koko prosessiin käytetyn ajan
varten q sisään kysymyksiä:
agentti. juosta ( q )
kulunut = aika . perf_counter ( ) - s
#tulosta agentin vastausten saamiseen käyttämä kokonaisaika
Tulosta ( f 'Sarjasarja suoritettiin {elapsed:0.2f} sekunnissa.' )
Lähtö
Seuraava kuvakaappaus näyttää, että jokaiseen kysymykseen vastataan erillisessä ketjussa ja kun ensimmäinen ketju on valmis, toinen ketju aktivoituu. Sarjasuoritus vie enemmän aikaa saada kaikki vastaukset yksitellen:
Tapa 2: Samanaikaisen suorituksen käyttäminen
Samanaikainen suoritustapa ottaa kaikki kysymykset ja saa niihin vastaukset samanaikaisesti.
llm = OpenAI ( lämpötila = 0 )työkaluja = load_tools ( [ 'google-otsikko' , 'llm-math' ] , llm = llm )
#Agentin määrittäminen yllä olevien työkalujen avulla saadaksesi vastauksia samanaikaisesti
agentti = alustusagentti (
työkaluja , llm , agentti = AgentType. ZERO_SHOT_REACT_DESCRIPTION , monisanainen = Totta
)
#aikalaskurin konfigurointi saadaksesi koko prosessiin käytetyn ajan
s = aika . perf_counter ( )
tehtäviä = [ agentti. sairaus ( q ) varten q sisään kysymyksiä ]
odota asyncioa. kerätä ( *tehtävät )
kulunut = aika . perf_counter ( ) - s
#tulosta agentin vastausten saamiseen käyttämä kokonaisaika
Tulosta ( f 'Samanaikainen suoritettu {elapsed:0.2f} sekunnissa' )
Lähtö
Samanaikainen suoritus poimii kaikki tiedot samanaikaisesti ja vie paljon vähemmän aikaa kuin sarjasuoritus:
Siinä on kyse Async API -agentin käytöstä LangChainissa.
Johtopäätös
Jos haluat käyttää Async API -agenttia LangChainissa, asenna moduulit kirjastojen tuomiseksi riippuvuuksistaan asyncio-kirjaston saamiseksi. Tämän jälkeen määritä ympäristöt OpenAI- ja Serper API-avaimilla kirjautumalla sisään vastaaville tileilleen. Määritä eri aiheisiin liittyvien kysymysten joukko ja suorita ketjut sarjassa ja samanaikaisesti saadaksesi niiden suoritusajan. Tässä oppaassa on käsitelty Async API -agentin käyttöprosessia LangChainissa.