Jak korzystać z Grafu wiedzy konwersacji w LangChain?

Jak Korzystac Z Grafu Wiedzy Konwersacji W Langchain



LangChain to moduł do tworzenia modeli językowych, które mogą imitować format konwersacji, tak jak ludzie wchodzą ze sobą w interakcję. Użytkownik może zadawać pytania w formie ciągów znaków lub tekstu w językach naturalnych, a model wyodrębni lub wygeneruje informacje dla użytkownika. Modele te mają dołączoną pamięć, dzięki czemu mogą przechowywać poprzednie wiadomości i poznać kontekst rozmowy.

Ten przewodnik zilustruje proces wykorzystania grafu wiedzy konwersacyjnej w LangChain.

Jak korzystać z Grafu wiedzy konwersacji w LangChain?

The RozmowaKGMemory Bibliotekę można wykorzystać do odtworzenia pamięci, której można użyć do uzyskania kontekstu interakcji. Aby poznać proces korzystania z wykresu wiedzy konwersacyjnej w LangChain, wystarczy wykonać poniższe kroki:







Krok 1: Zainstaluj moduły

Na początek rozpocznij proces korzystania z grafu wiedzy konwersacyjnej instalując moduł LangChain:



pip zainstaluj langchain



Zainstaluj moduł OpenAI, który można zainstalować za pomocą polecenia pip, aby uzyskać biblioteki do budowania dużych modeli językowych:





pip zainstaluj openai

Teraz, skonfiguruj środowisko za pomocą klucza OpenAI API, który można wygenerować ze swojego konta:



import Ty

import przejść dalej

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

Krok 2: Korzystanie z pamięci w LLM

Po zainstalowaniu modułów rozpocznij korzystanie z pamięci z LLM, importując wymagane biblioteki z modułu LangChain:

z łańcuch językowy. pamięć import RozmowaKGMemory

z łańcuch językowy. llms import OpenAI

Zbuduj LLM za pomocą metody OpenAI() i skonfiguruj pamięć za pomocą RozmowaKGMemory () metoda. Następnie zapisz szablony podpowiedzi, używając wielu danych wejściowych z odpowiadającymi im odpowiedziami, aby wytrenować model na tych danych:

llm = OpenAI ( temperatura = 0 )

pamięć = RozmowaKGMemory ( llm = llm )

pamięć. zapisz_kontekst ( { 'wejście' : „przywitaj się z Johnem” } , { 'wyjście' : „John! Kto” } )

pamięć. zapisz_kontekst ( { 'wejście' : 'on jest przyjacielem' } , { 'wyjście' : 'Jasne' } )

Przetestuj pamięć, ładując plik zmienne_pamięci () metoda wykorzystująca zapytanie dotyczące powyższych danych:

pamięć. zmienne_pamięci_ładowania ( { 'wejście' : „Kim jest Jan” } )

Skonfiguruj pamięć za pomocą metody ConversationKGMemory() z rozszerzeniem wiadomości_powrotne argument, aby uzyskać również historię danych wejściowych:

pamięć = RozmowaKGMemory ( llm = llm , wiadomości_powrotne = PRAWDA )

pamięć. zapisz_kontekst ( { 'wejście' : „przywitaj się z Johnem” } , { 'wyjście' : „John! Kto” } )

pamięć. zapisz_kontekst ( { 'wejście' : 'on jest przyjacielem' } , { 'wyjście' : 'Jasne' } )

Po prostu przetestuj pamięć, podając argument wejściowy z jego wartością w formie zapytania:

pamięć. zmienne_pamięci_ładowania ( { 'wejście' : „Kim jest Jan” } )

Teraz przetestuj pamięć, zadając pytanie, które nie jest wymienione w danych treningowych, a model nie ma pojęcia o odpowiedzi:

pamięć. get_current_entities ( „jaki jest ulubiony kolor Johna” )

Użyj get_knowledge_triplety () odpowiadając na wcześniej zadane zapytanie:

pamięć. get_knowledge_triplety ( „jego ulubiony kolor to czerwony” )

Krok 3: Używanie pamięci w łańcuchu

Następny krok wykorzystuje pamięć konwersacji z łańcuchami do zbudowania modelu LLM przy użyciu metody OpenAI(). Następnie skonfiguruj szablon podpowiedzi, korzystając ze struktury konwersacji, a tekst zostanie wyświetlony podczas uzyskiwania danych wyjściowych przez model:

llm = OpenAI ( temperatura = 0 )
z łańcuch językowy. monity . podpowiedź import Szablon podpowiedzi
z łańcuch językowy. więzy import Łańcuch Rozmów

szablon = '''To jest szablon interakcji pomiędzy człowiekiem i maszyną
System jest modelem sztucznej inteligencji, który może rozmawiać lub wydobywać informacje na temat wielu aspektów
Jeśli nie rozumie pytania lub nie zna odpowiedzi, po prostu to mówi
System wyodrębnia dane zapisane w sekcji „Specyficzne” i nie powoduje halucynacji

Konkretny:

{historia}

Rozmowa:
Człowiek: {wejście}
AI:'''

#Skonfiguruj szablon lub strukturę do wyświetlania podpowiedzi i uzyskiwania odpowiedzi z systemu AI
podpowiedź = Szablon podpowiedzi ( zmienne_wejściowe = [ 'historia' , 'wejście' ] , szablon = szablon )
rozmowa_z_kg = Łańcuch Rozmów (
llm = llm , gadatliwy = PRAWDA , podpowiedź = podpowiedź , pamięć = RozmowaKGMemory ( llm = llm )
)

Po utworzeniu modelu wystarczy wywołać funkcję rozmowa_z_kg model za pomocą metody przewidywania() z zapytaniem zadanym przez użytkownika:

rozmowa_z_kg. przewidywać ( wejście = 'Cześć co tam?' )

Teraz przetrenuj model, korzystając z pamięci konwersacji, podając informacje jako argument wejściowy metody:

rozmowa_z_kg. przewidywać (

wejście = „Nazywam się James i pomagam Willowi, jest inżynierem”

)

Nadszedł czas na przetestowanie modelu poprzez zadawanie zapytań wydobywających informacje z danych:

rozmowa_z_kg. przewidywać ( wejście = „Kim jest Will” )

Chodzi o wykorzystanie wykresu wiedzy konwersacyjnej w LangChain.

Wniosek

Aby skorzystać z wykresu wiedzy konwersacyjnej w LangChain, zainstaluj moduły lub frameworki do importowania bibliotek w celu korzystania z metody ConversationKGMemory(). Następnie zbuduj model, wykorzystując pamięć do zbudowania łańcuchów i wyodrębnienia informacji z danych szkoleniowych dostarczonych w konfiguracji. W tym przewodniku szczegółowo omówiono proces korzystania z wykresu wiedzy konwersacyjnej w LangChain.