Wie verwende ich einen strukturierten Ausgabeparser in LangChain?

Wie Verwende Ich Einen Strukturierten Ausgabeparser In Langchain



LangChain ist das Framework zum Erstellen von Chat-Modellen und LLMs, um mithilfe der OpenAI-Umgebung Informationen aus dem Datensatz oder dem Internet abzurufen. Der strukturierte Ausgabeparser wird verwendet, um mehrere Felder oder Antworten wie die eigentliche Antwort und einige zusätzliche verwandte Informationen abzurufen. Die Ausgabe-Parser-Bibliotheken können mit LangChain verwendet werden, um Daten mithilfe der als LLMs oder Chat-Modelle erstellten Modelle zu extrahieren.

In diesem Beitrag wurde der Prozess der Verwendung des strukturierten Ausgabeparsers in LangChain demonstriert.







Wie verwende ich einen strukturierten Ausgabeparser in LangChain?

Um den strukturierten Ausgabeparser in LangChain zu verwenden, führen Sie einfach die folgenden Schritte aus:



Schritt 1: Voraussetzungen installieren



Starten Sie den Prozess, indem Sie das LangChain-Framework installieren, falls es noch nicht in Ihrer Python-Umgebung installiert ist:





Pip Installieren langchain



Installieren Sie das OpenAI-Framework, um auf seine Methoden zum Erstellen eines Parsers in LangChain zuzugreifen:

Pip Installieren openai

Stellen Sie anschließend einfach über den API-Schlüssel eine Verbindung zur OpenAI-Umgebung her, um über „“ auf die Umgebung zuzugreifen. Du ”-Bibliothek und stellen Sie den API-Schlüssel mithilfe der „ getpass ' Bibliothek:

Importieren Sie uns
getpass importieren

os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( „OpenAI-API-Schlüssel:“ )

Schritt 2: Erstellen Sie ein Schema für die Ausgabe/Antwort

Nachdem Sie die Verbindung zu OpenAI hergestellt haben, importieren Sie einfach die Bibliotheken, um das Schema für die Generierung der Ausgabe zu erstellen:

aus langchain.output_parsers importieren StructuredOutputParser, ResponseSchema
aus langchain.prompts importieren PromptTemplate, ChatPromptTemplate, HumanMessagePromptTemplate
aus langchain.llms OpenAI importieren
aus langchain.chat_models ChatOpenAI importieren

Geben Sie das Schema für die Antwort entsprechend der Anforderung an, damit das Modell die Antwort entsprechend generieren sollte:

Response_schemas = [
Antwortschema ( Name = 'Antwort' , Beschreibung = „Auf die Anfrage antworten“ ) ,
Antwortschema ( Name = 'Quelle' , Beschreibung = „Website-Quelle, die verwendet wird, um die Antwort zu erhalten“ )
]
Output_parser = StructuredOutputParser.from_response_schemas ( Antwortschemata )

Schritt 3: Vorlage formatieren

Nachdem Sie das Schema für die Ausgabe konfiguriert haben, legen Sie einfach die Vorlage für die Eingabe in der natürlichen Sprache fest, damit das Modell die Fragen verstehen kann, bevor es die Antwort darauf abruft:

format_instructions = Output_parser.get_format_instructions ( )
prompt = PromptTemplate (
Vorlage = „Geben Sie eine Antwort auf die Frage des Benutzers. \N {Vorlage} \N {Abfrage}' ,
Eingabevariablen = [ 'Abfrage' ] ,
Teilvariablen = { 'Vorlage' : format_instructions }
)

Methode 1: Verwendung des Sprachmodells

Nachdem Sie die Formatvorlagen für Fragen und Antworten konfiguriert haben, erstellen Sie das Modell einfach mit der OpenAI()-Funktion:

Modell = OpenAI ( Temperatur = 0 )

Stellen Sie die Eingabeaufforderung in „ Abfrage ”-Variable und übergeben Sie sie an die format_prompt() Funktion als Eingabe und speichern Sie dann die Antwort im „ Ausgabe ” Variable:

_input = prompt.format_prompt ( Abfrage = „Wie viele Kontinente gibt es auf der Welt?“ )
Ausgabe = Modell ( _input.to_string ( ) )

Ruf den parse() Funktion mit der Ausgabevariablen als Argument, um die Antwort aus dem Modell zu erhalten:

ausgabe_parser.parse ( Ausgabe )

Der Ausgabeparser erhält die Antwort auf die Anfrage und zeigt eine detaillierte Antwort mit dem Link zu der Seite der Website an, die zum Abrufen der Antwort verwendet wird:

Methode 2: Verwenden des Chat-Modells

Um Ergebnisse vom Ausgabeparser in LangChain zu erhalten, verwenden Sie die chat_model Variable unten:

chat_model = ChatOpenAI ( Temperatur = 0 )

Um die Eingabeaufforderung zu verstehen, konfigurieren Sie die Eingabeaufforderungsvorlage für das Chat-Modell. Generieren Sie dann die Antwort entsprechend der Eingabe:

prompt = ChatPromptTemplate (
Mitteilungen = [
        HumanMessagePromptTemplate.from_template ( „Geben Sie eine Antwort auf die Frage des Benutzers. \N {format_instructions} \N {Abfrage}' )
] ,
Eingabevariablen = [ 'Abfrage' ] ,
Teilvariablen = { „format_instructions“ : format_instructions }
)

Geben Sie danach einfach die Eingabe im Feld „ Abfrage ”-Variable und übergeben Sie sie dann an die chat_model() Funktion, um die Ausgabe des Modells zu erhalten:

_input = prompt.format_prompt ( Abfrage = „USA steht für“ )
Ausgabe = chat_model ( _input.to_messages ( ) )

Um die Antwort vom Chat-Modell zu erhalten, verwenden Sie den „output_parser“, der das Ergebnis aus „ Ausgabe ” Variable:

ausgabe_parser.parse ( Ausgabeinhalt )

Das Chat-Modell zeigte die Antwort auf die Anfrage und den Namen der Website an, über die die Antwort aus dem Internet abgerufen wurde:

Dabei geht es um die Verwendung eines strukturierten Ausgabeparsers in LangChain.

Abschluss

Um den strukturierten Ausgabeparser in LangChain zu verwenden, installieren Sie einfach die LangChain- und OpenAI-Module, um mit dem Prozess zu beginnen. Stellen Sie anschließend mithilfe des API-Schlüssels eine Verbindung zur OpenAI-Umgebung her und konfigurieren Sie dann die Eingabeaufforderungs- und Antwortvorlagen für das Modell. Der Ausgabeparser kann entweder mit einem Sprachmodell oder einem Chat-Modell verwendet werden. In dieser Anleitung wird die Verwendung des Ausgabeparsers mit beiden Methoden erläutert.