Kaip naudoti struktūrinį išvesties analizatorių „LangChain“?

Kaip Naudoti Strukturini Isvesties Analizatoriu Langchain



„LangChain“ yra sistema, skirta kurti pokalbių modelius ir LLM, siekiant gauti informacijos iš duomenų rinkinio arba interneto naudojant OpenAI aplinką. Struktūrinis išvesties analizatorius naudojamas norint gauti kelis laukus arba atsakymus, pvz., tikrąjį atsakymą ir papildomą susijusią informaciją. Išvesties analizatorių bibliotekos gali būti naudojamos su „LangChain“, kad būtų galima išgauti duomenis naudojant modelius, sukurtus kaip LLM arba pokalbių modelius.

Šis įrašas parodė struktūrinio išvesties analizatoriaus naudojimo procesą „LangChain“.





Kaip naudoti struktūrinį išvesties analizatorių „LangChain“?

Norėdami naudoti struktūrinės išvesties analizatorių LangChain, tiesiog atlikite šiuos veiksmus:



1 veiksmas: įdiekite būtinas sąlygas



Pradėkite procesą įdiegdami LangChain sistemą, jei ji dar neįdiegta jūsų Python aplinkoje:





pip diegti langchain



Įdiekite OpenAI sistemą, kad pasiektumėte jos metodus, kaip sukurti analizatorių LangChain:

pip diegti openai

Po to tiesiog prisijunkite prie OpenAI aplinkos naudodami API raktą, kad pasiektumėte aplinką naudodami „ tu “ biblioteką ir pateikite API raktą naudodami „ gauti pasą biblioteka:

importuoti mus
importuoti getpass

os.aplinka [ „OPENAI_API_KEY“ ] = getpass.getpass ( „OpenAI API raktas:“ )

2 veiksmas: sukurkite išvesties / atsako schemą

Prisijungę prie OpenAI, tiesiog importuokite bibliotekas, kad sukurtumėte išvesties generavimo schemą:

iš langchain.output_parsers importuoti StructuredOutputParser, ResponseSchema
iš langchain.prompts importuoti PromptTemplate, ChatPromptTemplate, HumanMessagePromptTemplate
iš langchain.llms importuoti OpenAI
iš langchain.chat_models importuoti ChatOpenAI

Nurodykite atsakymo schemą pagal reikalavimą, kad modelis turėtų atitinkamai generuoti atsakymą:

atsakymo_schemos = [
Atsakymo schema ( vardas = 'atsakyti' , apibūdinimas = 'atsakyti į užklausą' ) ,
Atsakymo schema ( vardas = 'šaltinis' , apibūdinimas = 'svetainės šaltinis, naudojamas atsakymui gauti' )
]
output_parser = StructuredOutputParser.from_response_schemas ( atsakymo_schemos )

3 veiksmas: formatuokite šabloną

Sukonfigūravę išvesties schemą, tiesiog nustatykite įvesties šabloną natūralia kalba, kad modelis suprastų klausimus prieš gaudamas atsakymą:

format_instructions = output_parser.get_format_instructions ( )
prompt = PromptTemplate (
šabloną = „Atsakykite į vartotojo klausimą. \n {template} \n {query}' ,
įvesties_kintamieji = [ 'užklausa' ] ,
daliniai_kintamieji = { 'šablonas' : format_instructions }
)

1 būdas: kalbos modelio naudojimas

Sukonfigūravę klausimų ir atsakymų formato šablonus, tiesiog sukurkite modelį naudodami OpenAI() funkciją:

modelis = OpenAI ( temperatūros = 0 )

Nustatykite raginimą „ užklausą “ kintamąjį ir perduokite jį į format_prompt() veikia kaip įvestis, o tada išsaugokite atsakymą „ išvestis “ kintamasis:

_input = prompt.format_prompt ( užklausą = 'kiek žemynų yra pasaulyje' )
produkcija = modelis ( _input.to_string ( ) )

Paskambinkite į parse () funkcija su išvesties kintamuoju kaip argumentu, kad gautumėte atsakymą iš modelio:

output_parser.parse ( išvestis )

Išvesties analizatorius gauna atsakymą į užklausą ir pateikia išsamų atsakymą su nuoroda į svetainės puslapį, kuris naudojamas atsakymui gauti:

2 būdas: pokalbių modelio naudojimas

Norėdami gauti rezultatus iš išvesties analizatoriaus LangChain, naudokite pokalbių_modelis kintamasis žemiau:

chat_model = ChatOpenAI ( temperatūros = 0 )

Norėdami suprasti raginimą, sukonfigūruokite raginimo šabloną pokalbio modeliui. Tada sugeneruokite atsakymą pagal įvestį:

prompt = ChatPromptTemplate (
žinutes = [
HumanMessagePromptTemplate.from_template ( „Atsakykite į vartotojo klausimą. \n {format_instructions} \n {query}' )
] ,
įvesties_kintamieji = [ 'užklausa' ] ,
daliniai_kintamieji = { 'formato_instrukcijos' : format_instructions }
)

Po to tiesiog įveskite įvestį lauke „ užklausą “ kintamąjį ir perduokite jį į chat_model() funkcija gauti modelio išvestį:

_input = prompt.format_prompt ( užklausą = „JAV reiškia“ )
output = chat_model ( _input.to_messages ( ) )

Norėdami gauti atsakymą iš pokalbio modelio, naudokite output_parser, kuris saugo rezultatą iš ' išvestis “ kintamasis:

output_parser.parse ( išvestis.turinys )

Pokalbių modelis rodė atsakymą į užklausą ir svetainės, kuri naudojama atsakymui iš interneto gauti, pavadinimą:

Tai viskas apie struktūrinio išvesties analizatoriaus naudojimą „LangChain“.

Išvada

Norėdami naudoti struktūrinės išvesties analizatorių LangChain, tiesiog įdiekite LangChain ir OpenAI modulius, kad pradėtumėte procesą. Po to prisijunkite prie OpenAI aplinkos naudodami API raktą ir sukonfigūruokite modelio raginimo ir atsakymo šablonus. Išvesties analizatorius gali būti naudojamas su kalbos modeliu arba pokalbių modeliu. Šiame vadove paaiškinamas išvesties analizatoriaus naudojimas abiem būdais.