Ako používať štruktúrovaný výstupný analyzátor v LangChain?

Ako Pouzivat Strukturovany Vystupny Analyzator V Langchain



LangChain je rámec na vytváranie modelov chatov a LLM na získavanie informácií zo súboru údajov alebo internetu pomocou prostredia OpenAI. Štruktúrovaný výstupný analyzátor sa používa na získanie viacerých polí alebo odpovedí, ako je skutočná odpoveď a niektoré ďalšie súvisiace informácie. Knižnice výstupných analyzátorov možno použiť s LangChainom na extrahovanie údajov pomocou modelov vytvorených ako LLM alebo chatovacie modely.

Tento príspevok demonštroval proces používania štruktúrovaného výstupného analyzátora v LangChain.







Ako používať štruktúrovaný výstupný analyzátor v LangChain?

Ak chcete použiť analyzátor štruktúrovaného výstupu v LangChain, jednoducho prejdite týmito krokmi:



Krok 1: Predpoklady inštalácie



Začnite proces inštaláciou rámca LangChain, ak ešte nie je nainštalovaný vo vašom prostredí Python:





pip Inštalácia langchain



Nainštalujte si rámec OpenAI, aby ste získali prístup k jeho metódam na zostavenie analyzátora v LangChain:

pip Inštalácia openai

Potom sa jednoducho pripojte k prostrediu OpenAI pomocou jeho kľúča API a získajte prístup k jeho prostrediu pomocou „ vy ” a poskytnite kľúč API pomocou “ getpass “knižnica:

importujte nás
importovať getpass

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

Krok 2: Vytvorte schému pre výstup/odpoveď

Po pripojení k OpenAI jednoducho importujte knižnice na vytvorenie schémy na generovanie výstupu:

z langchain.output_parsers importovať StructuredOutputParser, ResponseSchema
from langchain.prompts import PromptTemplate, ChatPromptTemplate, HumanMessagePromptTemplate
z langchain.llms importujte OpenAI
z langchain.chat_models importujte ChatOpenAI

Špecifikujte schému pre odpoveď podľa požiadavky, takže model by mal generovať odpoveď podľa toho:

response_schemas = [
ResponseSchema ( názov = 'odpovedať' , popis = 'odpovedať na dotaz' ) ,
ResponseSchema ( názov = 'zdroj' , popis = 'zdroj webovej stránky, ktorý sa používa na získanie odpovede' )
]
output_parser = StructuredOutputParser.from_response_schemas ( odpovede_schémy )

Krok 3: Formátovanie šablóny

Po konfigurácii schémy pre výstup jednoducho nastavte šablónu pre vstup v prirodzenom jazyku, aby model porozumel otázkam pred tým, ako preň získa odpoveď:

format_instructions = output_parser.get_format_instructions ( )
prompt = PromptTemplate (
šablóna = „Odpovedzte na otázku používateľa. \n {template} \n {dopyt}' ,
vstupné_premenné = [ 'dopyt' ] ,
čiastočné_premenné = { 'šablóna' : format_instructions }
)

Metóda 1: Použitie jazykového modelu

Po konfigurácii šablón formátu pre otázky a odpovede jednoducho vytvorte model pomocou funkcie OpenAI():

model = OpenAI ( teplota = 0 )

Nastavte výzvu v „ dopyt ” premennej a odovzdajte ho do format_prompt() fungovať ako vstup a potom uložiť odpoveď do „ výkon ” premenná:

_input = prompt.format_prompt ( dopyt = 'koľko kontinentov je na svete' )
výstup = model ( _input.to_string ( ) )

Zavolajte na analyzovať () funkcia s výstupnou premennou ako jej argumentom na získanie odpovede z modelu:

output_parser.parse ( výkon )

Výstupný analyzátor dostane odpoveď na dotaz a zobrazí podrobnú odpoveď s odkazom na stránku webovej lokality, ktorá sa používa na získanie odpovede:

Metóda 2: Použitie modelu chatu

Ak chcete získať výsledky z výstupného analyzátora v LangChain, použite chat_model premenná nižšie:

chat_model = ChatOpenAI ( teplota = 0 )

Ak chcete porozumieť výzve, nakonfigurujte šablónu výzvy pre model rozhovoru. Potom vygenerujte odpoveď podľa vstupu:

prompt = ChatPromptTemplate (
správy = [
HumanMessagePromptTemplate.from_template ( „Odpovedzte na otázku používateľa. \n {format_instructions} \n {dopyt}' )
] ,
vstupné_premenné = [ 'dopyt' ] ,
čiastočné_premenné = { 'format_instructions' : format_instructions }
)

Potom jednoducho zadajte vstup do „ dopyt ” premennej a potom ju odovzdajte do chat_model() funkcia na získanie výstupu z modelu:

_input = prompt.format_prompt ( dopyt = 'USA znamená' )
výstup = chat_model ( _input.to_messages ( ) )

Ak chcete získať odpoveď z modelu chatu, použite parameter output_parser, ktorý ukladá výsledok z „ výkon ” premenná:

output_parser.parse ( výstup.obsah )

Model chatu zobrazil odpoveď na dotaz a názov webovej stránky, ktorá sa používa na získanie odpovede z internetu:

To je všetko o použití štruktúrovaného výstupného analyzátora v LangChain.

Záver

Ak chcete použiť analyzátor štruktúrovaného výstupu v LangChain, jednoducho nainštalujte moduly LangChain a OpenAI, aby ste mohli začať s procesom. Potom sa pripojte k prostrediu OpenAI pomocou jeho kľúča API a potom nakonfigurujte šablóny výziev a odpovedí pre model. Výstupný analyzátor možno použiť buď s jazykovým modelom, alebo s modelom chatu. Táto príručka vysvetľuje použitie výstupného analyzátora pri oboch metódach.