Hvordan bruger man samtalevidensgraf i LangChain?

Hvordan Bruger Man Samtalevidensgraf I Langchain



LangChain er modulet til at skabe sprogmodeller, der kan efterligne samtaleformatet, ligesom mennesker interagerer med hinanden. Brugeren kan stille spørgsmål i form af strenge eller tekst på naturlige sprog, og modellen vil udtrække eller generere information til brugeren. Disse modeller har hukommelse knyttet til dem, så de kan gemme tidligere beskeder for at få konteksten for samtalen.

Denne guide vil illustrere processen med at bruge samtaleviden-grafen i LangChain.

Hvordan bruger man samtalevidensgraf i LangChain?

Det SamtaleKGMemory bibliotek kan bruges til at genskabe den hukommelse, der kan bruges til at få konteksten for interaktionen. For at lære processen med at bruge samtaleviden-grafen i LangChain skal du blot gennemgå de anførte trin:







Trin 1: Installer moduler

Først skal du komme i gang med processen med at bruge samtaleviden-grafen ved at installere LangChain-modulet:



pip installer langkæde



Installer OpenAI-modulet, som kan installeres ved hjælp af pip-kommandoen for at få dets biblioteker til at bygge store sprogmodeller:





pip installer openai

Nu, sætte miljøet op ved hjælp af OpenAI API-nøglen, der kan genereres fra dens konto:



importere du

importere getpass

du . rundt regnet [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API-nøgle:' )

Trin 2: Brug af hukommelse med LLM'er

Når modulerne er installeret, skal du begynde at bruge hukommelsen med LLM ved at importere de nødvendige biblioteker fra LangChain-modulet:

fra langkæde. hukommelse importere SamtaleKGMemory

fra langkæde. llms importere OpenAI

Byg LLM ved hjælp af OpenAI()-metoden og konfigurer hukommelsen ved hjælp af SamtaleKGMemory () metode. Gem derefter promptskabelonerne ved hjælp af flere input med deres respektive svar for at træne modellen på disse data:

llm = OpenAI ( temperatur = 0 )

hukommelse = SamtaleKGMemory ( llm = llm )

hukommelse. gem_kontekst ( { 'input' : 'sig hej til john' } , { 'produktion' : 'John! Hvem' } )

hukommelse. gem_kontekst ( { 'input' : 'han er en ven' } , { 'produktion' : 'jo da' } )

Test hukommelsen ved at indlæse memory_variables () metode ved hjælp af forespørgslen relateret til ovenstående data:

hukommelse. load_memory_variables ( { 'input' : 'hvem er john' } )

Konfigurer hukommelsen ved hjælp af ConversationKGMemory() metoden med return_beskeder argument for også at få historien om inputtet:

hukommelse = SamtaleKGMemory ( llm = llm , return_beskeder = Rigtigt )

hukommelse. gem_kontekst ( { 'input' : 'sig hej til john' } , { 'produktion' : 'John! Hvem' } )

hukommelse. gem_kontekst ( { 'input' : 'han er en ven' } , { 'produktion' : 'jo da' } )

Test blot hukommelsen ved at give input-argumentet dens værdi i form af en forespørgsel:

hukommelse. load_memory_variables ( { 'input' : 'hvem er john' } )

Test nu hukommelsen ved at stille spørgsmålet, der ikke er nævnt i træningsdataene, og modellen har ingen idé om svaret:

hukommelse. get_current_entities ( 'hvad er johns yndlingsfarve' )

Brug get_knowledge_tripletter () metode ved at svare på den tidligere stillede forespørgsel:

hukommelse. get_knowledge_tripletter ( 'hans yndlingsfarve er rød' )

Trin 3: Brug af Memory in Chain

Det næste trin bruger samtalehukommelsen med kæderne til at bygge LLM-modellen ved hjælp af OpenAI()-metoden. Konfigurer derefter promptskabelonen ved hjælp af samtalestrukturen, og teksten vil blive vist, mens du får output fra modellen:

llm = OpenAI ( temperatur = 0 )
fra langkæde. prompter . hurtig importere PromptTemplate
fra langkæde. kæder importere Samtalekæde

skabelon = '''Dette er skabelonen for interaktionen mellem mennesker og maskine
Systemet er en kunstig intelligens-model, der kan tale eller udtrække information om flere aspekter
Hvis den ikke forstår spørgsmålet eller har svaret, siger den blot det
Systemet uddrager data, der er gemt i afsnittet 'Specifikke' og hallucinerer ikke

Bestemt:

{historie}

Samtale:
Menneske: {input}
AI:'''

#Konfigurer skabelonen eller strukturen til at give prompter og få svar fra AI-systemet
hurtig = PromptTemplate ( input_variables = [ 'historie' , 'input' ] , skabelon = skabelon )
samtale_med_kg = Samtalekæde (
llm = llm , ordrig = Rigtigt , hurtig = hurtig , hukommelse = SamtaleKGMemory ( llm = llm )
)

Når modellen er oprettet, skal du blot ringe til samtale_med_kg model ved hjælp af predict() metoden med forespørgslen stillet af brugeren:

samtale_med_kg. forudsige ( input = 'Hej hvad så?' )

Træn nu modellen ved hjælp af samtalehukommelse ved at give informationen som input-argument for metoden:

samtale_med_kg. forudsige (

input = 'Jeg hedder James og jeg hjælper Will, han er ingeniør'

)

Her er tiden til at teste modellen ved at bede forespørgslerne om at udtrække information fra dataene:

samtale_med_kg. forudsige ( input = 'Hvem er Will' )

Det handler om at bruge samtaleviden-grafen i LangChain.

Konklusion

For at bruge samtaleviden-grafen i LangChain skal du installere modulerne eller rammerne for at importere biblioteker til brug af ConversationKGMemory()-metoden. Derefter skal du bygge modellen ved hjælp af hukommelsen til at bygge kæderne og udtrække information fra træningsdataene i konfigurationen. Denne guide har uddybet processen med at bruge samtaleviden-grafen i LangChain.