Kako uporabljati strukturirani izhodni razčlenjevalec v LangChain?

Kako Uporabljati Strukturirani Izhodni Razclenjevalec V Langchain



LangChain je ogrodje za gradnjo modelov klepeta in LLM-jev za pridobivanje informacij iz nabora podatkov ali interneta z uporabo okolja OpenAI. Strukturirani izhodni razčlenjevalnik se uporablja za pridobivanje več polj ali odgovorov, kot je dejanski odgovor in nekaj dodatnih povezanih informacij. Knjižnice razčlenjevalnika izhoda se lahko uporabljajo z LangChain za pridobivanje podatkov z uporabo modelov, zgrajenih kot LLM-ji ali modeli klepeta.

Ta objava je prikazala postopek uporabe strukturiranega izhodnega razčlenjevalnika v LangChainu.







Kako uporabljati strukturirani izhodni razčlenjevalec v LangChain?

Če želite uporabiti razčlenjevalnik strukturiranih izhodov v LangChain, preprosto pojdite skozi te korake:



1. korak: Namestite predpogoje



Začnite postopek z namestitvijo ogrodja LangChain, če še ni nameščeno v vašem okolju Python:





pip namestite Langchain



Namestite ogrodje OpenAI za dostop do njegovih metod za izdelavo razčlenjevalnika v LangChainu:

pip namestite openai

Po tem se preprosto povežite z okoljem OpenAI z njegovim ključem API za dostop do njegovega okolja s pomočjo » ti « in zagotovite ključ API z uporabo » getpass ' knjižnica:

uvažajte nas
uvoz getpass

os.okolje [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'Ključ OpenAI API:' )

2. korak: Zgradite shemo za izhod/odziv

Ko vzpostavite povezavo z OpenAI, preprosto uvozite knjižnice, da zgradite shemo za generiranje izhoda:

iz langchain.output_parsers uvozi StructuredOutputParser, ResponseSchema
iz langchain.prompts uvozi PromptTemplate, ChatPromptTemplate, HumanMessagePromptTemplate
iz langchain.llms uvozi OpenAI
iz langchain.chat_models uvozi ChatOpenAI

Določite shemo za odgovor glede na zahtevo, tako da mora model ustrezno ustvariti odgovor:

sheme_odzivov = [
ResponseSchema ( ime = 'odgovor' , opis = 'odgovori na vprašanje' ) ,
ResponseSchema ( ime = 'vir' , opis = 'vir spletnega mesta, ki se uporablja za pridobitev odgovora' )
]
output_parser = StructuredOutputParser.from_response_schemas ( odzivne_sheme )

3. korak: Oblikujte predlogo

Ko konfigurirate shemo za izhod, preprosto nastavite predlogo za vnos v naravnem jeziku, da lahko model razume vprašanja, preden pridobi odgovor zanj:

format_instructions = output_parser.get_format_instructions ( )
prompt = PromptTemplate (
predlogo = 'Odgovorite na vprašanje uporabnika. \n {template} \n {poizvedba}' ,
vhodne_spremenljivke = [ 'povpraševanje' ] ,
delne_spremenljivke = { 'predloga' : navodila za formatiranje }
)

1. način: Uporaba jezikovnega modela

Ko konfigurirate predloge oblikovanja za vprašanja in odgovore, preprosto zgradite model s funkcijo OpenAI():

model = OpenAI ( temperatura = 0 )

Nastavite poziv v » poizvedbo ” in jo posredujte v format_prompt() deluje kot vnos in nato shrani odgovor v » izhod ” spremenljivka:

_input = prompt.format_prompt ( poizvedbo = 'koliko celin je na svetu' )
izhod = model ( _input.to_string ( ) )

Pokličite razčleniti() funkcija z izhodno spremenljivko kot argumentom za pridobitev odgovora iz modela:

output_parser.parse ( izhod )

Izhodni razčlenjevalnik dobi odgovor na poizvedbo in prikaže podroben odgovor s povezavo do strani spletnega mesta, ki se uporablja za pridobitev odgovora:

2. način: Uporaba modela klepeta

Če želite pridobiti rezultate iz izhodnega razčlenjevalnika v LangChain, uporabite chat_model spremenljivka spodaj:

chat_model = ChatOpenAI ( temperatura = 0 )

Če želite razumeti poziv, konfigurirajte predlogo poziva za model klepeta. Nato ustvarite odgovor glede na vnos:

prompt = ChatPromptTemplate (
sporočila = [
HumanMessagePromptTemplate.from_template ( 'Odgovorite na vprašanje uporabnika. \n {format_instructions} \n {poizvedba}' )
] ,
vhodne_spremenljivke = [ 'povpraševanje' ] ,
delne_spremenljivke = { 'format_instructions' : navodila za formatiranje }
)

Po tem preprosto vnesite vnos v » poizvedbo ” in jo nato posredujte v chat_model() funkcija za pridobitev izhoda iz modela:

_input = prompt.format_prompt ( poizvedbo = 'ZDA se zavzemajo za' )
izhod = chat_model ( _input.to_messages ( ) )

Če želite dobiti odgovor iz modela klepeta, uporabite output_parser, ki shrani rezultat iz » izhod ” spremenljivka:

output_parser.parse ( izhod.vsebina )

Model klepeta je prikazal odgovor na poizvedbo in ime spletnega mesta, ki se uporablja za pridobivanje odgovora iz interneta:

To je vse o uporabi strukturiranega izhodnega razčlenjevalnika v LangChainu.

Zaključek

Če želite uporabiti razčlenjevalnik strukturiranih izhodov v LangChain, preprosto namestite modula LangChain in OpenAI, da začnete s postopkom. Po tem se povežite z okoljem OpenAI z njegovim ključem API in nato konfigurirajte predloge poziva in odziva za model. Izhodni razčlenjevalec se lahko uporablja z jezikovnim modelom ali modelom klepeta. Ta priročnik pojasnjuje uporabo izhodnega razčlenjevalnika z obema metodama.