Paano Gamitin ang 'asyncio' Library sa LangChain?

Paano Gamitin Ang Asyncio Library Sa Langchain



Ang LangChain ay isang balangkas upang bumuo ng malalaking Modelo ng Wika gamit ang Artipisyal na Katalinuhan upang makabuo ito ng teksto at makipag-ugnayan sa mga tao. Ang asyncio ay ang library na maaaring magamit upang tumawag sa isang modelo tulad ng LLM nang maraming beses gamit ang parehong command o query. Nagbibigay din ito ng tulong sa bilis ng paggana ng aming modelo ng LLM upang makabuo ng teksto nang mahusay.

Ipinapakita ng artikulong ito kung paano gamitin ang 'asyncio' library sa LangChain.







Paano Gamitin/Ipatupad ang “asyncio” Library sa LangChain?

Maaaring gamitin ang Async API bilang suporta para sa mga LLM kaya para sa paggamit ng asyncio library sa LangChain, sundin lang ang gabay na ito:



I-install ang mga Prerequisite



I-install ang LangChain module para simulang gamitin ang asyncio library sa LangChain para sabay na tawagan ang mga LLM:





pip i-install langchain



Kinakailangan din ang OpenAI module na bumuo ng mga LLM gamit ang OpenAIEmbeddings:

pip i-install openai

Pagkatapos ng mga pag-install, i-configure lang ang OpenAI API key gamit ang sumusunod na code:

import sa amin
import getpass

os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'OpenAI API Key:' )

Paggamit ng asyncio upang Bumuo ng LLM

Ang asyncio library ay maaaring gamitin para sa pagsuporta sa mga LLM habang ginagamit ito ng sumusunod na code sa LangChain:

angkat oras
import asyncio
#Pag-import ng mga library ng asyncio mula sa LangChain para magamit ito
mula sa langchain.llms import OpenAI

#define ang function para makuha ang timestamp ng serial generation
def generate_serially ( ) :
llm = OpenAI ( temperatura = 0.9 )
para sa _ sa saklaw ( 5 ) :
resp = llm.generate ( [ 'Anong ginagawa mo?' ] )
print ( resp.generations [ 0 ] [ 0 ] .text )

#define ang function para makuha ang timestamp ng synchronous generation
async def async_generate ( llm ) :
resp = maghintay llm.agenerate ( [ 'Anong ginagawa mo?' ] )
print ( resp.generations [ 0 ] [ 0 ] .text )

#define ang function upang makuha ang timestamp ng pagbuo ng data nang sabay-sabay
async def generate_concurrently ( ) :
llm = OpenAI ( temperatura = 0.9 )
mga gawain = [ async_generate ( llm ) para sa _ sa saklaw ( 10 ) ]
hintayin ang asyncio.magtipon ( * mga gawain )

#configure ang resultang output gamit ang asyncio para makakuha ng kasabay na output
s = time.perf_counter ( )
maghintay ng generate_concurrently ( )
lumipas = oras.perf_counter ( ) - s
print ( '\033[1m' + f 'Sabay-sabay na isinagawa sa loob ng {elapsed:0.2f} na segundo.' + '\033[0m' )

#configure ang timestamp para sa resultang output upang makakuha ng serial output
s = time.perf_counter ( )
generate_serially ( )
lumipas = oras.perf_counter ( ) - s
print ( '\033[1m' + f 'Isinagawa ang serial sa loob ng {elapsed:0.2f} na segundo.' + '\033[0m' )

Ang code sa itaas ay gumagamit ng asyncio library upang sukatin ang oras para sa pagbuo ng mga teksto gamit ang dalawang natatanging function tulad ng generate_serially() at generate_concurrently() :

Output

Ang sumusunod na screenshot ay nagpapakita na ang pagiging kumplikado ng oras para sa parehong mga pag-andar at ang pagiging kumplikado ng oras ng kasabay na pagbuo ng teksto ay mas mahusay kaysa sa serial text generation:

Iyon lang ang tungkol sa paggamit ng 'asyncio' library upang bumuo ng mga LLM sa LangChain.

Konklusyon

Para magamit ang asyncio library sa LangChain, I-install lang ang LangChain at OpenAI modules para makapagsimula sa proseso. Maaaring makatulong ang Async API habang gumagawa ng LLM na modelo para sa paglikha ng mga chatbot upang matuto mula sa mga nakaraang pag-uusap. Ipinaliwanag ng gabay na ito ang proseso ng paggamit ng asyncio library upang suportahan ang mga LLM gamit ang LangChain framework.