Hur man använder LangChain LLMChain-funktionen i Python

Hur Man Anvander Langchain Llmchain Funktionen I Python



LangChain har en uppsjö av moduler för att skapa språkmodellapplikationer. Tillämpningar kan göras mer komplicerade genom att kombinera moduler, eller så kan de göras enklare med en enda modul. Att anropa en LLM på en viss ingång är den viktigaste LangChain-komponenten.

Kedjor fungerar inte bara för ett enda LLM-samtal; de är samlingar av samtal, antingen till en LLM eller ett annat verktyg. End-to-end-kedjor för allmänt använda applikationer tillhandahålls av LangChain tillsammans med ett standardkedje-API och många verktygsintegrationer.

Flexibiliteten och förmågan att länka flera element till en enda enhet kan vara användbar när vi vill designa en kedja som accepterar användarinput, ställer in den med en PromptMall och sedan levererar det genererade resultatet till en LLM.







Den här artikeln hjälper dig att förstå användningen av en LangChain LLMchain-funktion i Python.



Exempel: Hur man använder LLMchain-funktionen i LangChain

Vi pratade om vad kedjor är. Nu kommer vi att se en praktisk demonstration av dessa kedjor som är implementerade i ett Python-skript. I det här exemplet använder vi den mest grundläggande LangChain-kedjan som är LLMchain. Den innehåller en PromptMall och en LLM, och kopplar ihop dem för att generera en utdata.



För att börja implementera konceptet måste vi installera några obligatoriska bibliotek som inte ingår i Pythons standardbibliotek. De bibliotek som vi behöver installera är LangChain och OpenAI. Vi installerar LangChain-biblioteket eftersom vi behöver använda dess LLMchain-modul samt PromptTemplate. OpenAI-biblioteket låter oss använda OpenAI:s modeller för att förutsäga utgångarna, det vill säga GPT-3.





För att installera LangChain-biblioteket, kör följande kommando på terminalen:

$ pip installera langkedja

Installera OpenAI-biblioteket med följande kommando:



$ pip installera openai

När installationerna är klara kan vi börja arbeta med huvudprojektet.

från långkedja. uppmaningar importera PromptMall

från långkedja. llms importera OpenAI

importera du

du . ungefär [ 'OPENAI_API_KEY' ] = 'sk-DIN API-NYCKEL'

Huvudprojektet börjar med att importera de nödvändiga modulerna. Så vi importerar först PromptTemplate från 'langchain.prompts'-biblioteket. Sedan importerar vi OpenAI från 'langchain.llms'-biblioteket. Därefter importerar vi 'os' för att ställa in miljövariabeln.

Till en början satte vi OpenAI API-nyckeln som miljövariabel. Miljövariabeln är en variabel som består av ett namn och ett värde och ställs in i vårt operativsystem. 'os.environ' är ett objekt som används för att kartlägga miljövariablerna. Så vi kallar 'os.environ'. Namnet som vi anger för API-nyckeln är OPENAI_API_KEY. Vi tilldelar sedan API-nyckeln som dess värde. API-nyckeln är unik för varje användare. Så när du övar på detta kodskript, skriv din hemliga API-nyckel.

llm = OpenAI ( temperatur = 0,9 )

prompt = PromptMall (

input_variables = [ 'Produkter' ] ,

mall = 'Vad skulle ett varumärke heta som säljer {produkter}?' ,

)

Nu när nyckeln är inställd som miljövariabel initierar vi ett omslag. Ställ in temperaturen för OpenAI GPT-modellerna. Temperaturen är en egenskap som hjälper oss att avgöra hur oförutsägbar responsen kommer att bli. Ju högre temperaturvärde, desto ojämnare är svaren. Vi ställer in temperaturvärdet till 0,9 här. Därmed får vi de mest slumpmässiga resultaten.

Sedan initierar vi en PromptTemplate-klass. När vi använder LLM genererar vi en prompt från indata som tas från användaren och skickar den sedan till LLM istället för att skicka indata direkt till LLM som kräver hårdkodning (en prompt är en input som vi tog från LLM) användare och på vilken den definierade AI-modellen ska skapa ett svar). Så vi initierar PromptTemplate. Sedan, inom dess lockiga hängslen, definierar vi input_variablen som 'Produkter' och malltexten är 'Vad skulle ett varumärke heta som säljer {produkter}?' Användarinmatningen berättar vad varumärket gör. Sedan formaterar den prompten baserat på denna information.

från långkedja. kedjor importera LLMChain

kedja = LLMChain ( llm = llm , prompt = prompt )

Nu när vår PromptTemplate är formaterad är nästa steg att skapa en LLMchain. Importera först LLMchain-modulen från 'langchain.chain'-biblioteket. Sedan skapar vi en kedja genom att anropa funktionen LLMchain() som tar användarinmatningen och formaterar prompten med den. Slutligen skickar den svaret till LLM. Så den ansluter PromptTemplate och LLM.

skriva ut ( kedja. springa ( 'Konstmaterial' ) )

För att köra kedjan anropar vi metoden chain.run() och tillhandahåller användarindata som parametern som definieras som 'Art Supplies'. Sedan skickar vi denna metod till Python print()-funktionen för att visa det förutsagda resultatet på Python-konsolen.

AI-modellen läser uppmaningen och ger ett svar baserat på den.

Eftersom vi bad om att namnge ett varumärke som säljer konsttillbehör, kan det förutspådda namnet av AI-modellen ses i följande ögonblicksbild:

Det här exemplet visar oss LLMchaining när en enda indatavariabel tillhandahålls. Detta är också möjligt när du använder flera variabler. För det måste vi helt enkelt skapa en ordbok med variabler för att mata in dem helt och hållet. Låt oss se hur detta fungerar:

från långkedja. uppmaningar importera PromptMall

från långkedja. llms importera OpenAI

importera du

du . ungefär [ 'OPENAI_API_KEY' ] = 'sk-Din-API-KEY'

llm = OpenAI(temperatur=0,9)

prompt = PromptMall(

input_variables=['
varumärke ', ' Produkt '],

mall='
Vad skulle heta { varumärke } som säljer { Produkt } ? ',

)

från langchain.chains import LLMChain

kedja = LLMChain(llm=llm, prompt=prompt)

print(chain.run({

'Varumärke': '
Konsttillbehör ',

'Produkt': '
färger '

}))

Koden går på samma sätt som i föregående exempel, förutom att vi måste skicka två variabler i klassen promptmall. Så skapa en ordbok med input_variables. De långa parenteserna representerar en ordbok. Här har vi två variabler - 'Varumärke' och 'Produkt' - som separeras med ett kommatecken. Nu är malltexten som vi tillhandahåller 'Vad skulle heta {Brand} som säljer {Produkt}?' Således förutspår AI-modellen ett namn som fokuserar på dessa två indatavariabler.

Sedan skapar vi en LLMchain som formaterar användarinmatningen med uppmaningen att skicka svaret till LLM. För att köra den här kedjan använder vi metoden chain.run() och skickar ordlistan över variabler med användarinmatningen som 'Varumärke': 'Konsttillbehör' och 'Produkt' som 'Färger'. Sedan skickar vi denna metod till Python print()-funktionen för att visa det erhållna svaret.

Utdatabilden visar det förväntade resultatet:

Slutsats

Kedjor är byggstenarna i LangChain. Den här artikeln går igenom konceptet med att använda LLMchain i LangChain. Vi gjorde en introduktion till LLMchain och skildrade behovet av att använda dem i Python-projektet. Sedan utförde vi en praktisk illustration som visar implementeringen av LLMchain genom att koppla PromptTemplate och LLM. Du kan skapa dessa kedjor med en enda indatavariabel såväl som flera användarangivna variabler. De genererade svaren från GPT-modellen tillhandahålls också.