Bagaimana untuk Menggunakan Perpustakaan 'asyncio' dalam LangChain?

Bagaimana Untuk Menggunakan Perpustakaan Asyncio Dalam Langchain



LangChain ialah rangka kerja untuk membina Model Bahasa yang besar menggunakan Kepintaran Buatan supaya ia boleh menjana teks dan berinteraksi dengan manusia. Asyncio ialah perpustakaan yang boleh digunakan untuk memanggil model seperti LLM beberapa kali menggunakan arahan atau pertanyaan yang sama. Ia juga memberikan rangsangan dalam kelajuan kerja model LLM kami untuk menjana teks dengan cekap.

Artikel ini menunjukkan cara menggunakan perpustakaan 'asyncio' dalam LangChain.







Bagaimana untuk Menggunakan/Melaksanakan Perpustakaan 'asyncio' dalam LangChain?

API Async boleh digunakan sebagai sokongan untuk LLM jadi untuk menggunakan perpustakaan asyncio dalam LangChain, cuma ikut panduan ini:



Pasang Prasyarat



Pasang modul LangChain untuk mula menggunakan perpustakaan asyncio dalam LangChain untuk memanggil LLM secara serentak:





pip pasang langchain



Modul OpenAI juga diperlukan untuk membina LLM menggunakan OpenAIEmbeddings:

pip pasang openai

Selepas pemasangan, hanya konfigurasikan kunci API OpenAI menggunakan kod berikut:

import kami
import getpass

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

Menggunakan asyncio untuk Membina LLM

Pustaka asyncio boleh digunakan untuk menyokong LLM kerana kod berikut menggunakannya dalam LangChain:

import masa
import asyncio
#Mengimport perpustakaan asyncio daripada LangChain untuk menggunakannya
daripada langchain.llms import OpenAI

#define fungsi untuk mendapatkan cap masa penjanaan bersiri
def generate_serially ( ) :
llm = OpenAI ( suhu = 0.9 )
untuk _ dalam julat ( 5 ) :
resp = llm.generate ( [ 'Awak buat apa?' ] )
cetak ( resp.generations [ 0 ] [ 0 ] .teks )

#tentukan fungsi untuk mendapatkan cap masa penjanaan segerak
async def async_generate ( llm ) :
resp = tunggu llm.agenerate ( [ 'Awak buat apa?' ] )
cetak ( resp.generations [ 0 ] [ 0 ] .teks )

#define fungsi untuk mendapatkan cap masa menjana data secara serentak
async def generate_concurrently ( ) :
llm = OpenAI ( suhu = 0.9 )
tugas = [ async_generate ( llm ) untuk _ dalam julat ( 10 ) ]
tunggu asyncio.kumpul ( * tugasan )

#konfigurasikan output terhasil menggunakan asyncio untuk mendapatkan output serentak
s = masa.perf_counter ( )
tunggu generate_concurrently ( )
berlalu = masa.perf_counter ( ) - s
cetak ( '\033[1m' + f 'Serentak dilaksanakan dalam {elapsed:0.2f} saat.' + '\033[0m' )

#konfigurasikan cap masa untuk output terhasil untuk mendapatkan output bersiri
s = masa.perf_counter ( )
generate_serially ( )
berlalu = masa.perf_counter ( ) - s
cetak ( '\033[1m' + f 'Siri dilaksanakan dalam {elapsed:0.2f} saat.' + '\033[0m' )

Kod di atas menggunakan perpustakaan asyncio untuk mengukur masa untuk menjana teks menggunakan dua fungsi berbeza seperti generate_serial() dan generate_concurrently() :

Pengeluaran

Tangkapan skrin berikut memaparkan bahawa kerumitan masa untuk kedua-dua fungsi dan kerumitan masa penjanaan teks serentak adalah lebih baik daripada penjanaan teks bersiri:

Itu sahaja tentang menggunakan perpustakaan 'asyncio' untuk membina LLM dalam LangChain.

Kesimpulan

Untuk menggunakan pustaka asyncio dalam LangChain, hanya Pasang modul LangChain dan OpenAI untuk memulakan proses. API Async boleh membantu semasa membina model LLM untuk membuat chatbots untuk belajar daripada perbualan sebelumnya. Panduan ini telah menerangkan proses penggunaan perpustakaan asyncio untuk menyokong LLM menggunakan rangka kerja LangChain.