Den här guiden kommer att illustrera processen för att använda en konversationstokenbuffert i LangChain.
Hur man använder en konversationstokenbuffert i LangChain?
De ConversationTokenBufferMemory biblioteket kan importeras från LangChain-ramverket för att lagra de senaste meddelandena i buffertminnet. Tokens kan konfigureras för att begränsa antalet meddelanden som lagras i bufferten och de tidigare meddelandena kommer att tömmas automatiskt.
För att lära dig processen för att använda konversationstokenbufferten i LangChain, använd följande guide:
Steg 1: Installera moduler
Installera först LangChain-ramverket som innehåller alla nödvändiga moduler med hjälp av pip-kommandot:
pip installera langkedja
Installera nu OpenAI-modulen för att bygga LLM och kedjor med OpenAI()-metoden:
pip installera openai
När du har installerat modulerna, använd helt enkelt OpenAI:s API-nyckel för att sätta upp miljön med hjälp av OS- och Getpass-biblioteken:
importera duimportera getpass
du . ungefär [ 'OPENAI_API_KEY' ] = getpass . getpass ( 'OpenAI API Key:' )
Steg 2: Använda Conversation Token Buffer Memory
Bygg LLM:erna med OpenAI()-metoden efter att ha importerat ConversationTokenBufferMemory bibliotek från LangChain ramverket:
från långkedja. minne importera ConversationTokenBufferMemoryfrån långkedja. llms importera OpenAI
llm = OpenAI ( )
Konfigurera minnet för att ställa in token, det tömmer gamla meddelanden och lagrar dem i buffertminnet. Efter det, lagra meddelanden från konversationen och hämta de senaste för att använda dem som sammanhang:
minne = ConversationTokenBufferMemory ( llm = llm , max_token_limit = 10 )minne. save_context ( { 'inmatning' : 'Hallå' } , { 'produktion' : 'Hur mår du' } )
minne. save_context ( { 'inmatning' : 'Jag mår bra, du då' } , { 'produktion' : 'inte mycket' } )
Kör minnet för att få data lagrade i buffertminnet med metoden load_memory_variables():
minne. load_memory_variables ( { } )
Steg 3: Använda Conversation Token Buffer Memory i en kedja
Bygg kedjorna genom att konfigurera ConversationChain() metod med flera argument för att använda buffertminnet för konversationstoken:
från långkedja. kedjor importera ConversationChainkonversation_med_sammanfattning = ConversationChain (
llm = llm ,
minne = ConversationTokenBufferMemory ( llm = OpenAI ( ) , max_token_limit = 60 ) ,
mångordig = Sann ,
)
konversation_med_sammanfattning. förutse ( inmatning = 'Hej läget?' )
Få nu igång konversationen genom att ställa frågor med hjälp av uppmaningarna skrivna på naturligt språk:
konversation_med_sammanfattning. förutse ( inmatning = 'Arbetar bara på NLP-projektet' )
Få utdata från data lagrade i buffertminnet med hjälp av antalet tokens:
konversation_med_sammanfattning. förutse ( inmatning = 'Arbetar bara på att designa LLMs' )
Bufferten uppdateras kontinuerligt med varje ny ingång eftersom de tidigare meddelandena töms regelbundet:
konversation_med_sammanfattning. förutse (inmatning = 'LLM använder LangChain! Har du hört talas om det'
)
Det handlar om att använda konversationstokenbufferten i LangChain.
Slutsats
För att använda konversationstokenbufferten i LangChain, installera helt enkelt modulerna för att ställa in miljön med hjälp av API-nyckeln från OpenAI-kontot. Efter det, importera ConversationTokenBufferMemory-biblioteket med hjälp av LangChain-modulen för att lagra konversationen i bufferten. Buffertminnet kan användas i en kedja för att spola de äldre meddelandena med varje nytt meddelande i chatten. Det här inlägget har utvecklat hur man använder buffertminnet för konversationstoken i LangChain.