Kuinka käyttää Structured Output Parser -ohjelmaa LangChainissa?

Kuinka Kayttaa Structured Output Parser Ohjelmaa Langchainissa



LangChain on kehys chat-mallien ja LLM:ien rakentamiseen saadakseen tietoa tietojoukosta tai Internetistä OpenAI-ympäristön avulla. Jäsenneltyä tulosten jäsennintä käytetään useiden kenttien tai vastausten, kuten varsinaisen vastauksen ja joidenkin lisätietojen saamiseksi. Lähdön jäsennyskirjastoja voidaan käyttää LangChainin kanssa tietojen poimimiseen käyttämällä LLM- tai chat-malleina rakennettuja malleja.

Tämä viesti osoitti strukturoidun tulosteen jäsentimen käyttöprosessia LangChainissa.





Kuinka käyttää Structured Output Parser -ohjelmaa LangChainissa?

Jos haluat käyttää strukturoidun tulosteen jäsennintä LangChainissa, suorita seuraavat vaiheet:



Vaihe 1: Asenna edellytykset



Aloita prosessi asentamalla LangChain-kehys, jos sitä ei ole vielä asennettu Python-ympäristöösi:





pip Asentaa langchain



Asenna OpenAI-kehys, jotta voit käyttää sen menetelmiä jäsentimen rakentamiseksi LangChainissa:

pip Asentaa openai

Sen jälkeen muodosta yhteys OpenAI-ympäristöön sen API-avaimella päästäksesi sen ympäristöön käyttämällä ' sinä -kirjasto ja anna API-avain käyttämällä ' getpass ' kirjasto:

tuo meille
tuoda getpass

os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'OpenAI API Key:' )

Vaihe 2: Luo kaavio lähdölle/vastaukselle

Kun olet muodostanut yhteyden OpenAI:hen, tuo kirjastot yksinkertaisesti luodaksesi skeeman tulosteen luomista varten:

langchain.output_parsers tuonti StructuredOutputParser, ResponseSchema
langchain.promptsista tuonti PromptTemplate, ChatPromptTemplate, HumanMessagePromptTemplate
Tuo OpenAI osoitteesta langchain.llms
langchain.chat_modelsista tuo ChatOpenAI

Määritä vastauksen skeema vaatimusten mukaisesti, jotta mallin tulisi luoda vastaus vastaavasti:

vastaus_skeemat = [
ResponseSchema ( nimi = 'vastaus' , kuvaus = 'vastaa kyselyyn' ) ,
ResponseSchema ( nimi = 'lähde' , kuvaus = 'verkkosivuston lähde, jota käytetään vastauksen saamiseen' )
]
output_parser = StructuredOutputParser.from_response_schemas ( vastaus_skeemat )

Vaihe 3: Muotoile malli

Kun olet määrittänyt tulosteen skeeman, aseta vain syötteen malli luonnollisella kielellä, jotta malli voi ymmärtää kysymykset ennen vastauksen hakemista:

format_instructions = output_parser.get_format_instructions ( )
kehote = PromptTemplate (
sapluuna = 'Vastaa käyttäjän kysymykseen. \n {sapluuna} \n {kysely}' ,
input_variables = [ 'kysely' ] ,
osittaiset_muuttujat = { 'sapluuna' : format_instructions }
)

Tapa 1: Kielimallin käyttäminen

Kun olet määrittänyt kysymysten ja vastausten muotomallit, rakenna malli käyttämällä OpenAI()-funktiota:

malli = OpenAI ( lämpötila = 0 )

Aseta kehote ' kysely ”-muuttuja ja välitä se format_prompt() toimii syötteenä ja tallenna sitten vastaus ' ulostulo ”muuttuja:

_input = kehote.format_prompt ( kysely = 'kuinka monta maanosaa maailmassa on' )
lähtö = malli ( _input.to_string ( ) )

Soita jäsentää() funktio, jonka argumentti on lähtömuuttuja saadakseen vastauksen mallista:

output_parser.parse ( ulostulo )

Tulosten jäsentäjä saa vastauksen kyselyyn ja näyttää yksityiskohtaisen vastauksen, jossa on linkki sivuston sivulle, jota käytetään vastauksen saamiseen:

Tapa 2: Chat-mallin käyttäminen

Jos haluat saada tuloksia LangChainin tulosten jäsentimestä, käytä chat_malli muuttuja alla:

chat_model = ChatOpenAI ( lämpötila = 0 )

Ymmärtääksesi kehotteen, määritä kehotemalli chat-mallille. Luo sitten vastaus syötteen mukaan:

kehote = ChatPromptTemplate (
viestejä = [
HumanMessagePromptTemplate.from_template ( 'Vastaa käyttäjän kysymykseen. \n {format_instructions} \n {kysely}' )
] ,
input_variables = [ 'kysely' ] ,
osittaiset_muuttujat = { 'muoto_ohjeet' : format_instructions }
)

Anna sen jälkeen syöttö ' kysely ”-muuttuja ja välitä se sitten chat_model() toiminto mallin tulosteen saamiseksi:

_input = kehote.format_prompt ( kysely = 'USA tarkoittaa' )
output = chat_model ( _input.to_messages ( ) )

Saadaksesi vastauksen chat-mallista, käytä output_parser-komentoa, joka tallentaa tuloksen ' ulostulo ”muuttuja:

output_parser.parse ( output.content )

Chat-malli näytti vastauksen kyselyyn ja verkkosivuston nimen, jota käytetään vastauksen saamiseen Internetistä:

Siinä on kyse strukturoidun tulosten jäsentimen käyttämisestä LangChainissa.

Johtopäätös

Jos haluat käyttää LangChainin strukturoitua lähdön jäsentäjää, aloita prosessi asentamalla LangChain- ja OpenAI-moduulit. Tämän jälkeen muodosta yhteys OpenAI-ympäristöön sen API-avaimella ja määritä sitten mallin kehote- ja vastausmallit. Lähtöjäsennintä voidaan käyttää joko kielimallin tai chat-mallin kanssa. Tämä opas selittää tulosten jäsentimen käytön molemmilla tavoilla.