Hvordan bruger man 'asyncio'-biblioteket i LangChain?

Hvordan Bruger Man Asyncio Biblioteket I Langchain



LangChain er en ramme til at bygge store sprogmodeller ved hjælp af kunstig intelligens, så den kan generere tekst og interagere med mennesker. Asyncio er det bibliotek, der kan bruges til at kalde en model som LLM flere gange ved hjælp af den samme kommando eller forespørgsel. Det giver også et boost i hastigheden af ​​arbejdet med vores LLM-model for at generere tekst effektivt.

Denne artikel viser, hvordan man bruger 'asyncio'-biblioteket i LangChain.







Hvordan man bruger/udfører 'asyncio'-biblioteket i LangChain?

Async API kan bruges som understøttelse af LLM'er, så for at bruge asyncio-biblioteket i LangChain skal du blot følge denne guide:



Installer forudsætninger



Installer LangChain-modulet for at begynde at bruge asyncio-biblioteket i LangChain til samtidig at kalde LLM'er:





pip installere langkæde



OpenAI-modulet er også påkrævet for at bygge LLM'er ved hjælp af OpenAIEmbeddings:

pip installere openai

Efter installationerne skal du blot konfigurere OpenAI API-nøglen ved hjælp af følgende kode:

import os
importere getpass

os.miljø [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'OpenAI API-nøgle:' )

Brug af asyncio til at bygge LLM

Asyncio-biblioteket kan bruges til at understøtte LLM'er, da følgende kode bruger det i LangChain:

importere tid
importere asyncio
#Importerer asyncio-biblioteker fra LangChain for at bruge det
fra langchain.llms importer OpenAI

#define funktionen for at få tidsstemplet for seriel generering
def generere_serielt ( ) :
llm = ÅbenAI ( temperatur = 0,9 )
til _ i rækkevidde ( 5 ) :
resp = llm.generere ( [ 'Hvad laver du?' ] )
Print ( hhv. generationer [ 0 ] [ 0 ] .tekst )

#definer funktionen for at få tidsstemplet for synkron generering
async def async_generate ( llm ) :
hhv = afvent llm.generere ( [ 'Hvad laver du?' ] )
Print ( hhv. generationer [ 0 ] [ 0 ] .tekst )

#define funktionen for at få tidsstemplet for generere data samtidigt
async def gener_concurrently ( ) :
llm = ÅbenAI ( temperatur = 0,9 )
opgaver = [ async_generate ( llm ) til _ i rækkevidde ( 10 ) ]
afvent asyncio.samle ( * opgaver )

#konfigurer det resulterende output ved hjælp af asyncio for at få samtidig output
s = time.perf_counter ( )
afvent generere_samtidigt ( )
forløbet = time.perf_counter ( ) - s
Print ( '\033[1m' + f 'Samtidig udført i {elapsed:0.2f} sekunder.' + '\033[0m' )

#konfigurer tidsstemplet for resulterende output for at få seriel output
s = time.perf_counter ( )
generere_serielt ( )
forløbet = time.perf_counter ( ) - s
Print ( '\033[1m' + f 'Serie udført på {elapsed:0.2f} sekunder.' + '\033[0m' )

Ovenstående kode bruger asyncio-biblioteket til at måle tiden for generering af tekster ved hjælp af to forskellige funktioner som f.eks. generere_seriel() og generere_samtidigt() :

Produktion

Følgende skærmbillede viser, at tidskompleksiteten for både funktionerne og tidskompleksiteten af ​​samtidig tekstgenerering er bedre end den serielle tekstgenerering:

Det handler om at bruge 'asyncio'-biblioteket til at bygge LLM'er i LangChain.

Konklusion

For at bruge asyncio-biblioteket i LangChain skal du blot installere LangChain- og OpenAI-moduler for at komme i gang med processen. Async API kan være nyttigt, mens du bygger en LLM-model til at oprette chatbots for at lære af tidligere samtaler. Denne vejledning har forklaret processen med at bruge asyncio-biblioteket til at understøtte LLM'erne ved hjælp af LangChain-rammerne.