Jak korzystać z biblioteki „asyncio” w LangChain?

Jak Korzystac Z Biblioteki Asyncio W Langchain



LangChain to platforma do budowania dużych modeli językowych przy użyciu sztucznej inteligencji, która może generować tekst i wchodzić w interakcję z ludźmi. Asyncio to biblioteka, której można używać do wielokrotnego wywoływania modelu takiego jak LLM przy użyciu tego samego polecenia lub zapytania. Zapewnia również zwiększenie szybkości działania naszego modelu LLM w celu wydajnego generowania tekstu.

W tym artykule pokazano, jak korzystać z biblioteki „asyncio” w LangChain.







Jak używać/wykonywać bibliotekę „asyncio” w LangChain?

Async API może być używane jako wsparcie dla LLM, więc aby korzystać z biblioteki asyncio w LangChain, wystarczy postępować zgodnie z tym przewodnikiem:



Zainstaluj wymagania wstępne



Zainstaluj moduł LangChain, aby rozpocząć korzystanie z biblioteki asyncio w LangChain w celu jednoczesnego wywoływania LLM:





pypeć zainstalować łańcuch językowy



Moduł OpenAI jest również wymagany do budowania LLM przy użyciu OpenAIEmbeddings:

pypeć zainstalować otwórz

Po instalacji wystarczy skonfigurować klucz API OpenAI, używając następującego kodu:

importuj nas
zaimportuj getpass

os.środowisko [ „OPENAI_API_KEY” ] = getpass.getpass ( „Klucz API OpenAI:” )

Używanie asyncio do budowania LLM

Biblioteki asyncio można używać do obsługi LLM, ponieważ poniższy kod wykorzystuje ją w LangChain:

import czas
importuj asyncio
#Importowanie bibliotek asyncio z LangChain, aby z nich korzystać
z langchain.llms importuje OpenAI

#define funkcję pobierającą znacznik czasu generacji szeregowej
def generuj_serialowo ( ) :
llm = OpenAI ( temperatura = 0,9 )
Do _ W zakres ( 5 ) :
resp = llm.generate ( [ 'Co robisz?' ] )
wydrukować ( odpowiednio pokolenia [ 0 ] [ 0 ] .tekst )

#define funkcję pobierającą znacznik czasu generacji synchronicznej
async def async_generate ( llm ) :
resp = czekaj llm.agenerate ( [ 'Co robisz?' ] )
wydrukować ( odpowiednio pokolenia [ 0 ] [ 0 ] .tekst )

#zdefiniuj funkcję pobierającą znacznik czasu jednoczesnego generowania danych
async def generuj_współbieżnie ( ) :
llm = OpenAI ( temperatura = 0,9 )
zadania = [ async_generate ( llm ) Do _ W zakres ( 10 ) ]
czekaj na asyncio.gather ( * zadania )

#skonfiguruj wynikowe wyjście za pomocą asyncio, aby uzyskać współbieżne wyjście
s = czas.licznik_wydajności ( )
poczekaj na generowanie_współbieżne ( )
upłynął = czas.perf_counter ( ) - S
wydrukować ( '\033[1m' + f „Równoczesne wykonanie w ciągu {elapsed:0,2f} sekund.” + '\033[0m' )

#skonfiguruj znacznik czasu dla wynikowego wyjścia, aby uzyskać wyjście szeregowe
s = czas.licznik_wydajności ( )
wygeneruj_serial ( )
upłynął = czas.perf_counter ( ) - S
wydrukować ( '\033[1m' + f „Serial wykonany w ciągu {elapsed:0,2f} sekund.” + '\033[0m' )

Powyższy kod wykorzystuje bibliotekę asyncio do pomiaru czasu generowania tekstów przy użyciu dwóch różnych funkcji, takich jak generuj_serial() I generuj_współbieżnie() :

Wyjście

Poniższy zrzut ekranu pokazuje, że złożoność czasowa obu funkcji i złożoność czasowa jednoczesnego generowania tekstu jest lepsza niż w przypadku seryjnego generowania tekstu:

Chodzi o wykorzystanie biblioteki „asyncio” do budowania LLM w LangChain.

Wniosek

Aby korzystać z biblioteki asyncio w LangChain, po prostu zainstaluj moduły LangChain i OpenAI, aby rozpocząć proces. Async API może być pomocne podczas budowania modelu LLM do tworzenia chatbotów, które będą uczyć się na podstawie poprzednich rozmów. W tym przewodniku wyjaśniono proces używania biblioteki asyncio do obsługi LLM przy użyciu frameworka LangChain.