Jak používat knihovnu „asyncio“ v LangChain?

Jak Pouzivat Knihovnu Asyncio V Langchain



LangChain je rámec pro vytváření velkých jazykových modelů pomocí umělé inteligence, aby mohl generovat text a komunikovat s lidmi. Asyncio je knihovna, kterou lze použít k vícenásobnému volání modelu jako LLM pomocí stejného příkazu nebo dotazu. Poskytuje také zvýšení rychlosti práce našeho modelu LLM pro efektivní generování textu.

Tento článek ukazuje, jak používat knihovnu „asyncio“ v LangChain.





Jak používat/spouštět knihovnu „asyncio“ v LangChain?

Async API lze použít jako podporu pro LLM, takže pro použití knihovny asyncio v LangChain jednoduše postupujte podle tohoto průvodce:



Předpoklady instalace



Nainstalujte si modul LangChain, abyste mohli začít používat knihovnu asyncio v LangChain k souběžnému volání LLM:





pip Nainstalujte langchain



Modul OpenAI je také vyžadován pro vytváření LLM pomocí OpenAIEmbeddings:

pip Nainstalujte openai

Po instalaci jednoduše nakonfigurujte klíč OpenAI API pomocí následujícího kódu:

importujte nás
importovat getpass

os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'Klíč OpenAI API:' )

Použití asyncio k vybudování LLM

Knihovnu asyncio lze použít pro podporu LLM, protože ji používá následující kód v LangChain:

import čas
importovat asyncio
#Import asyncio knihoven z LangChain, abyste je mohli používat
z langchain.llms importujte OpenAI

#define funkci pro získání časového razítka sériového generování
def generovat_sériově ( ) :
llm = OpenAI ( teplota = 0,9 )
pro _ v rozsah ( 5 ) :
resp = llm.generate ( [ 'Co děláš?' ] )
tisk ( resp.generací [ 0 ] [ 0 ] .text )

#define funkci pro získání časového razítka synchronního generování
async def async_generate ( llm ) :
resp = čekat llm.agenerovat ( [ 'Co děláš?' ] )
tisk ( resp.generací [ 0 ] [ 0 ] .text )

#define funkci pro získání časového razítka souběžného generování dat
async def create_concurrently ( ) :
llm = OpenAI ( teplota = 0,9 )
úkoly = [ async_generate ( llm ) pro _ v rozsah ( 10 ) ]
čekat asyncio.shromáždit ( * úkoly )

#nakonfigurujte výsledný výstup pomocí funkce asyncio, abyste získali souběžný výstup
s = time.perf_counter ( )
čekat na generovat_souběžně ( )
elapsed = time.perf_counter ( ) - s
tisk ( '\033[1 m' + f 'Souběžné provedení za {elapsed:0,2f} sekund.' + '\033[0m' )

#nakonfigurujte časové razítko pro výsledný výstup, abyste získali sériový výstup
s = time.perf_counter ( )
generovat_sériově ( )
elapsed = time.perf_counter ( ) - s
tisk ( '\033[1 m' + f 'Seriál byl spuštěn za {elapsed:0,2f} sekund.' + '\033[0m' )

Výše uvedený kód používá knihovnu asyncio k měření času pro generování textů pomocí dvou odlišných funkcí, jako je např generovat_sériově() a generovat_souběžně() :

Výstup

Následující snímek obrazovky ukazuje, že časová složitost funkcí i časová složitost souběžného generování textu je lepší než generování sériového textu:

To je vše o použití knihovny „asyncio“ k vytváření LLM v LangChain.

Závěr

Chcete-li použít knihovnu asyncio v LangChain, jednoduše nainstalujte moduly LangChain a OpenAI, abyste mohli začít s procesem. Async API může být užitečné při vytváření modelu LLM pro vytváření chatbotů, abyste se poučili z předchozích konverzací. Tato příručka vysvětlila proces použití knihovny asyncio k podpoře LLM pomocí rámce LangChain.