Jak korzystać z agenta Async API w LangChain?

Jak Korzystac Z Agenta Async Api W Langchain



LangChain to framework zawierający wszystkie zależności do budowy modelu językowego lub modeli chatu w języku naturalnym. Model wykorzystuje sztuczną inteligencję do szkolenia tych modeli, aby mogły one zrozumieć pytania zadawane przez ludzi. Modele czatu są trenowane przy użyciu szablonu podpowiedzi, aby uzyskać strukturę interfejsu czatu przy użyciu szablonów wbudowanych lub niestandardowych.

Szybki zarys

Ten post zawiera następujące sekcje:

Jak korzystać z agenta Async API w LangChain?

Modele czatu wykonują jednocześnie wiele zadań, takich jak zrozumienie struktury podpowiedzi, jej złożoności, wyodrębnianie informacji i wiele innych. Korzystanie z agenta Async API w LangChain pozwala użytkownikowi budować wydajne modele czatów, które mogą odpowiadać na wiele pytań jednocześnie. Aby poznać proces korzystania z agenta Async API w LangChain, wystarczy postępować zgodnie z tym przewodnikiem:







Krok 1: Instalowanie frameworków

Przede wszystkim zainstaluj framework LangChain, aby uzyskać jego zależności z menedżera pakietów Pythona:



pip zainstaluj langchain



Następnie zainstaluj moduł OpenAI, aby zbudować model języka taki jak llm i ustawić jego środowisko:





pip zainstaluj openai

Krok 2: Środowisko OpenAI

Kolejnym krokiem po instalacji modułów jest konfigurowanie środowiska za pomocą klucza API OpenAI i Serperowe API aby wyszukać dane z Google:



import Ty
import przejść dalej

Ty . około [ „OPENAI_API_KEY” ] = przejść dalej . przejść dalej ( „Klucz API OpenAI:” )
Ty . około [ „SERPER_API_KEY” ] = przejść dalej . przejść dalej ( „Klucz API serwera:” )

Krok 3: Importowanie bibliotek

Teraz, gdy środowisko jest ustawione, po prostu zaimportuj wymagane biblioteki, takie jak asyncio i inne biblioteki, korzystając z zależności LangChain:

z łańcuch językowy. agenci import zainicjuj_agent , ład_narzędzia
import czas
import asyncio
z łańcuch językowy. agenci import Typ agenta
z łańcuch językowy. llms import OpenAI
z łańcuch językowy. oddzwonienia . standardowe wyjście import StdOutCallbackHandler
z łańcuch językowy. oddzwonienia . znaczniki import LangChainTracer
z aiohttp import Sesja Klienta

Krok 4: Skonfiguruj pytania

Ustaw zestaw danych pytań zawierający wiele zapytań związanych z różnymi domenami lub tematami, które można wyszukiwać w Internecie (Google):

pytania = [
„Kto jest zwycięzcą mistrzostw US Open w 2021 roku” ,
„W jakim wieku jest chłopak Olivii Wilde” ,
„Kto jest zdobywcą tytułu mistrza świata formuły 1” ,
„Kto wygrała finał kobiet US Open w 2021 roku” ,
„Kim jest mąż Beyonce i w jakim jest wieku” ,
]

Metoda 1: Korzystanie z wykonywania szeregowego

Po wykonaniu wszystkich kroków po prostu wykonaj pytania, aby uzyskać wszystkie odpowiedzi, korzystając z wykonania seryjnego. Oznacza to, że jedno pytanie zostanie wykonane/wyświetlone na raz, a także zwróci całkowity czas potrzebny na wykonanie tych pytań:

llm = OpenAI ( temperatura = 0 )
narzędzia = ład_narzędzia ( [ „nagłówek Google” , „llm-matematyka” ] , llm = llm )
agent = zainicjuj_agent (
narzędzia , llm , agent = Typ agenta. ZERO_SHOT_REACT_DESCRIPTION , gadatliwy = PRAWDA
)
S = czas . licznik_perf ( )
#konfigurowanie licznika czasu, aby uzyskać czas wykorzystany na cały proces
Do Q W pytania:
agent. uruchomić ( Q )
upłynął = czas . licznik_perf ( ) - S
#wydrukuj całkowity czas spędzony przez agenta na uzyskaniu odpowiedzi
wydrukować ( F „Serial wykonany w ciągu {elapsed:0,2f} sekund.” )

Wyjście
Poniższy zrzut ekranu pokazuje, że odpowiedź na każde pytanie znajduje się w oddzielnym łańcuchu, a po zakończeniu pierwszego łańcucha drugi staje się aktywny. Wykonanie szeregowe zajmuje więcej czasu, aby uzyskać wszystkie odpowiedzi indywidualnie:

Metoda 2: Korzystanie z wykonywania współbieżnego

Metoda współbieżnego wykonania uwzględnia wszystkie pytania i jednocześnie uzyskuje na nie odpowiedzi.

llm = OpenAI ( temperatura = 0 )
narzędzia = ład_narzędzia ( [ „nagłówek Google” , „llm-matematyka” ] , llm = llm )
#Konfiguracja agenta przy użyciu powyższych narzędzi w celu jednoczesnego uzyskiwania odpowiedzi
agent = zainicjuj_agent (
narzędzia , llm , agent = Typ agenta. ZERO_SHOT_REACT_DESCRIPTION , gadatliwy = PRAWDA
)
#konfigurowanie licznika czasu, aby uzyskać czas wykorzystany na cały proces
S = czas . licznik_perf ( )
zadania = [ agent. choroba ( Q ) Do Q W pytania ]
poczekaj na asyncio. zebrać ( *zadania )
upłynął = czas . licznik_perf ( ) - S
#wydrukuj całkowity czas spędzony przez agenta na uzyskaniu odpowiedzi
wydrukować ( F „Równoczesne wykonanie w ciągu {elapsed:0,2f} sekund” )

Wyjście
Wykonanie współbieżne wyodrębnia wszystkie dane w tym samym czasie i zajmuje znacznie mniej czasu niż wykonanie szeregowe:

To wszystko na temat korzystania z agenta Async API w LangChain.

Wniosek

Aby użyć agenta Async API w LangChain, wystarczy zainstalować moduły, aby zaimportować biblioteki z ich zależności i uzyskać bibliotekę asyncio. Następnie skonfiguruj środowiska przy użyciu kluczy OpenAI i Serper API, logując się na odpowiednie konta. Skonfiguruj zestaw pytań związanych z różnymi tematami i wykonuj łańcuchy szeregowo i jednocześnie, aby uzyskać czas ich wykonania. W tym przewodniku szczegółowo opisano proces korzystania z agenta Async API w LangChain.