LangChain este un cadru pentru a construi modele de limbaj mari folosind inteligența artificială, astfel încât să poată genera text și să interacționeze cu oamenii. Asyncio este biblioteca care poate fi folosită pentru a apela un model precum LLM de mai multe ori folosind aceeași comandă sau interogare. De asemenea, oferă o creștere a vitezei de funcționare a modelului nostru LLM pentru a genera text în mod eficient.
Acest articol demonstrează cum să utilizați biblioteca „asyncio” în LangChain.
Cum se utilizează/execută biblioteca „asyncio” în LangChain?
API-ul Async poate fi folosit ca suport pentru LLM-uri, așa că pentru utilizarea bibliotecii asincrone în LangChain, pur și simplu urmați acest ghid:
Instalați cerințe preliminare
Instalați modulul LangChain pentru a începe să utilizați biblioteca asyncio din LangChain pentru a apela simultan LLM-uri:
pip instalare langchain
Modulul OpenAI este, de asemenea, necesar pentru a construi LLM-uri folosind OpenAIEmbeddings:
pip instalare openai
După instalare, pur și simplu configurați cheia API OpenAI folosind următorul cod:
importă-neimport getpass
os.mediu [ „OPENAI_API_KEY” ] = getpass.getpass ( „Cheie API OpenAI:” )
Folosind asyncio pentru a construi LLM
Biblioteca Asyncio poate fi folosită pentru a susține LLM-uri, deoarece următorul cod îl folosește în LangChain:
import timpimport asyncio
#Importarea bibliotecilor asincrone din LangChain pentru a le folosi
din langchain.llms import OpenAI
#define funcția pentru a obține marcajul de timp al generării seriale
def generate_serial ( ) :
llm = OpenAI ( temperatura = 0,9 )
pentru _ în gamă ( 5 ) :
resp = llm.generate ( [ 'Ce faci?' ] )
imprimare ( resp.generaţii [ 0 ] [ 0 ] .text )
#definiți funcția pentru a obține marcajul de timp al generării sincrone
async def async_generate ( llm ) :
resp = await llm.agenerate ( [ 'Ce faci?' ] )
imprimare ( resp.generaţii [ 0 ] [ 0 ] .text )
#define funcția pentru a obține marcajul de timp pentru generarea datelor simultan
async def generate_concurrently ( ) :
llm = OpenAI ( temperatura = 0,9 )
sarcini = [ async_generate ( llm ) pentru _ în gamă ( 10 ) ]
asteapta asyncio.gather ( * sarcini )
#configurează ieșirea rezultată folosind asincron pentru a obține o ieșire concomitentă
s = time.perf_counter ( )
așteaptă generate_concurrently ( )
elapsed = time.perf_counter ( ) - s
imprimare ( „\033[1m” + f „Executat simultan în {elapsed:0.2f} secunde.” + „\033[0m” )
#configurează marcajul de timp pentru ieșirea rezultată pentru a obține ieșirea în serie
s = time.perf_counter ( )
generate_serial ( )
elapsed = time.perf_counter ( ) - s
imprimare ( „\033[1m” + f „Serial executat în {elapsed:0.2f} secunde.” + „\033[0m” )
Codul de mai sus folosește biblioteca asyncio pentru a măsura timpul pentru generarea de texte folosind două funcții distincte, cum ar fi generate_serial() și generate_concurrently() :
Ieșire
Următoarea captură de ecran arată că complexitatea timpului atât pentru funcții, cât și complexitatea timpului generării simultane a textului este mai bună decât generarea textului în serie:
Acesta este totul despre utilizarea bibliotecii „asyncio” pentru a construi LLM-uri în LangChain.
Concluzie
Pentru a utiliza biblioteca asyncio din LangChain, pur și simplu Instalați modulele LangChain și OpenAI pentru a începe procesul. API-ul Async poate fi util în timp ce construiți un model LLM pentru crearea de chatboți pentru a învăța din conversațiile anterioare. Acest ghid a explicat procesul de utilizare a bibliotecii asyncio pentru a sprijini LLM-urile folosind cadrul LangChain.