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 nasuvoz 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, ResponseSchemaiz 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.