Inhaltsverzeichnis
Verwenden von OpenAI ohne Funktionsaufruf
OpenAI -Funktion Aufrufe Beispiel
Mehrere benutzerdefinierte Funktionen
Anwendungen des Funktionsaufrufs
Schlussfolgerung
Was passiert, wenn der Funktionsaufruf des Modells keine definierten Funktionen übereinstimmt? Dies gewährleistet die Flexibilität bei der Handhabung unterschiedlicher Eingabetypen.
Heim Technologie-Peripheriegeräte KI OpenAI -Funktion Aufruf Tutorial: Erzeugen Sie strukturierte Ausgabe

OpenAI -Funktion Aufruf Tutorial: Erzeugen Sie strukturierte Ausgabe

Mar 10, 2025 pm 12:02 PM

Verwenden von OpenAI ohne Funktionsaufruf

In diesem Abschnitt generieren wir Antworten mit dem GPT-3.5-Turbo-Modell ohne Funktion, um festzustellen, ob wir konsistente Ausgabe erhalten oder nicht.

Bevor Sie die OpenAI -Python -API installieren, müssen Sie einen API -Schlüssel erhalten und auf Ihrem lokalen System einrichten. Folgen Sie dem GPT-3.5 und GPT-4 über die OpenAI-API im Python-Tutorial, um zu erfahren, wie Sie den API-Schlüssel erhalten und einrichten. Das Tutorial enthält auch Beispiele für das Einrichten von Umgebungsvariablen in Datalab, DataCamps Ai-fähiges Data Notebook.

Weitere Unterstützung finden Sie im Code in der OpenAI -Funktion, die die Arbeitsmappe auf Datalab aufruft.

Upgrade der OpenAI Python -API auf V1 mit:

pip install --upgrade openai -q
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Initiieren Sie danach den OpenAI -Client mit dem API -Schlüssel.

import os
from openai import OpenAI

client = OpenAI(
  api_key=os.environ['OPENAI_API_KEY'],
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Hinweis : OpenAI bietet neuen Benutzern keine kostenlosen Credits mehr an, daher müssen Sie sie kaufen, um die API zu verwenden.

Wir werden eine zufällige Beschreibung der Schüler schreiben. Entweder können Sie Ihren eigenen Text erstellen oder Chatgpt verwenden, um einen für Sie zu generieren.

student_1_description = "David Nguyen is a sophomore majoring in computer science at Stanford University. He is Asian American and has a 3.8 GPA. David is known for his programming skills and is an active member of the university's Robotics Club. He hopes to pursue a career in artificial intelligence after graduating."
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Im nächsten Teil schreiben wir eine Aufforderung, Schülerinformationen aus dem Text zu extrahieren und die Ausgabe als JSON -Objekt zurückzugeben. Wir werden den Namen, die Major, die Schule, die Noten und die Clubs in der Beschreibung der Schüler extrahieren.

# A simple prompt to extract information from "student_description" in a JSON format.
prompt1 = f'''
Please extract the following information from the given text and return it as a JSON object:

name
major
school
grades
club

This is the body of text to extract the information from:
{student_1_description}
'''
Nach dem Login kopieren
Nach dem Login kopieren

Fügen Sie die Eingabeaufforderung dem OpenAI -API -Chat -CHAT -Abschlussmodul hinzu, um die Antwort zu generieren.

# Generating response back from gpt-3.5-turbo
openai_response = client.chat.completions.create(
    model = 'gpt-3.5-turbo',
    messages = [{'role': 'user', 'content': prompt_1}]
)

openai_response.choices[0].message.content
Nach dem Login kopieren
Nach dem Login kopieren

Die Antwort ist ziemlich gut. Konvertieren wir es in JSON, um es besser zu verstehen.

'{\n  "name": "David Nguyen",\n  "major": "computer science",\n  "school": "Stanford University",\n  "grades": "3.8 GPA",\n  "club": "Robotics Club"\n}'
Nach dem Login kopieren
Nach dem Login kopieren

Wir werden die `JSON` -Bibliothek verwenden, um den Text in ein JSON -Objekt umzuwandeln.

import json

# Loading the response as a JSON object
json_response = json.loads(openai_response.choices[0].message.content)
json_response
Nach dem Login kopieren
Nach dem Login kopieren

Das Endergebnis ist ziemlich perfekt. Also, warum brauchen wir Funktionsaufrufe?

{'name': 'David Nguyen',
 'major': 'computer science',
 'school': 'Stanford University',
 'grades': '3.8 GPA',
 'club': 'Robotics Club'}
Nach dem Login kopieren

Versuchen wir dieselbe Eingabeaufforderung, aber mit einer anderen Schülerbeschreibung.

student_2_description="Ravi Patel is a sophomore majoring in computer science at the University of Michigan. He is South Asian Indian American and has a 3.7 GPA. Ravi is an active member of the university's Chess Club and the South Asian Student Association. He hopes to pursue a career in software engineering after graduating."
Nach dem Login kopieren

Wir werden einfach den Text der Schülerbeschreibung in der Eingabeaufforderung ändern.

prompt2 = f'''
Please extract the following information from the given text and return it as a JSON object:

name
major
school
grades
club

This is the body of text to extract the information from:
{student_2_description}
'''
Nach dem Login kopieren

und führen Sie die Chat -Abschlussfunktion mit der zweiten Eingabeaufforderung aus.

# Generating response back from gpt-3.5-turbo
openai_response = client.chat.completions.create(
    model = 'gpt-3.5-turbo',
    messages = [{'role': 'user', 'content': prompt_2}]
)

# Loading the response as a JSON object
json_response = json.loads(openai_response.choices[0].message.content)
json_response
Nach dem Login kopieren

Wie Sie sehen können, ist es nicht konsistent. Anstatt einen Club zurückzugeben, hat es die Liste der Clubs zurückgegeben, die von Ravi verbunden sind. Es unterscheidet sich auch vom ersten Schüler.

{'name': 'Ravi Patel',
 'major': 'computer science',
 'school': 'University of Michigan',
 'grades': '3.7 GPA',
 'club': ['Chess Club', 'South Asian Student Association']}
Nach dem Login kopieren

OpenAI -Funktion Aufrufe Beispiel

Um dieses Problem zu beheben, werden wir nun eine kürzlich eingeführte Funktion namens Function Calling verwenden. Es ist wichtig, eine benutzerdefinierte Funktion zu erstellen, um die erforderlichen Informationen zu einer Liste von Wörterbüchern hinzuzufügen, damit die OpenAI -API ihre Funktionalität verstehen kann.

  • Name : Schreiben Sie den Python -Funktionsnamen, den Sie kürzlich erstellt haben.
  • Beschreibung : Die Funktionalität der Funktion.
  • Parameter : Innerhalb der „Eigenschaften“ schreiben wir den Namen der Argumente, den Typ und die Beschreibung. Es wird helfen, die API zu eröffnen, um die Welt zu identifizieren, nach der wir suchen.

Hinweis : Stellen Sie sicher, dass Sie das richtige Muster verfolgen. Erfahren Sie mehr über Funktionsaufrufe, indem Sie die offizielle Dokumentation lesen.

pip install --upgrade openai -q
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Als nächstes werden wir Antworten für zwei Schülerbeschreibungen unter Verwendung einer benutzerdefinierten Funktion generieren, die dem Argument "Funktionen" hinzugefügt wurde. Danach werden wir die Textantwort in ein JSON -Objekt umwandeln und sie drucken.

import os
from openai import OpenAI

client = OpenAI(
  api_key=os.environ['OPENAI_API_KEY'],
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Wie wir sehen, haben wir einheitliche Ausgabe. Wir haben sogar Noten in numerischer anstelle von String erhalten. Die konsistente Ausgabe ist für das Erstellen von Fehlerfreien AI-Anwendungen unerlässlich.

student_1_description = "David Nguyen is a sophomore majoring in computer science at Stanford University. He is Asian American and has a 3.8 GPA. David is known for his programming skills and is an active member of the university's Robotics Club. He hopes to pursue a career in artificial intelligence after graduating."
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Mehrere benutzerdefinierte Funktionen

Sie können der Chat -Abschlussfunktion mehrere benutzerdefinierte Funktionen hinzufügen. In diesem Abschnitt sehen wir die magischen Funktionen der OpenAI -API und wie sie automatisch die richtige Funktion auswählt und die richtigen Argumente zurückgibt.

In der Python -Liste des Wörterbuchs werden wir eine andere Funktion mit dem Namen „Extract_School_info“ hinzufügen, die uns hilft, Universitätsinformationen aus dem Text zu extrahieren.

Um dies zu erreichen, müssen Sie ein weiteres Wörterbuch einer Funktion mit Namen, Beschreibung und Parametern hinzufügen.

# A simple prompt to extract information from "student_description" in a JSON format.
prompt1 = f'''
Please extract the following information from the given text and return it as a JSON object:

name
major
school
grades
club

This is the body of text to extract the information from:
{student_1_description}
'''
Nach dem Login kopieren
Nach dem Login kopieren

Wir werden eine Beschreibung der Stanford University unter Verwendung von ChatGPT generieren, um unsere Funktion zu testen.

# Generating response back from gpt-3.5-turbo
openai_response = client.chat.completions.create(
    model = 'gpt-3.5-turbo',
    messages = [{'role': 'user', 'content': prompt_1}]
)

openai_response.choices[0].message.content
Nach dem Login kopieren
Nach dem Login kopieren

Erstellen Sie die Liste der Schüler- und Schulbeschreibungen und geben Sie sie durch die OpenAI -Chat -Abschlussfunktion, um die Antwort zu generieren. Stellen Sie sicher, dass Sie die aktualisierte benutzerdefinierte Funktion bereitgestellt haben.

'{\n  "name": "David Nguyen",\n  "major": "computer science",\n  "school": "Stanford University",\n  "grades": "3.8 GPA",\n  "club": "Robotics Club"\n}'
Nach dem Login kopieren
Nach dem Login kopieren

Das GPT-3.5-Turbo-Modell hat automatisch die richtige Funktion für verschiedene Beschreibungstypen ausgewählt. Wir erhalten eine perfekte JSON -Ausgabe für den Schüler und die Schule.

import json

# Loading the response as a JSON object
json_response = json.loads(openai_response.choices[0].message.content)
json_response
Nach dem Login kopieren
Nach dem Login kopieren

Wir können sogar unter dem Namen schauen, den die Ruhe unter Verwendung der Funktion „extract_school_info“ erzeugt.

OpenAI -Funktion Aufruf Tutorial: Erzeugen Sie strukturierte Ausgabe

Anwendungen des Funktionsaufrufs

In diesem Abschnitt erstellen wir einen stabilen Textübersichtsers zusammen, der die Schul- und Schülerinformationen auf eine bestimmte Weise zusammenfasst.

Erstens erstellen wir zwei Python -Funktionen, extract_student_info und extract_school_info, die die Argumente aus Funktionsaufrufen entnehmen und eine zusammengefasste Zeichenfolge zurückgeben.

pip install --upgrade openai -q
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  1. Erstellen Sie die Python -Liste, die aus einer Beschreibung der Schüler, einer zufälligen Eingabeaufforderung und einer Beschreibung besteht. Die zufällige Eingabeaufforderung wird hinzugefügt, um den automatischen Funktionsaufruf Mechaniker zu validieren.
  2. wir generieren die Antwort mit jedem Text in der Liste "Beschreibungen".
  3. Wenn ein Funktionsaufruf verwendet wird, erhalten wir den Namen der Funktion und wenden Sie basierend darauf die entsprechenden Argumente mit der Antwort auf die Funktion an. Andernfalls geben Sie die normale Reaktion zurück.
  4. Drucken Sie die Ausgänge aller drei Proben aus.
import os
from openai import OpenAI

client = OpenAI(
  api_key=os.environ['OPENAI_API_KEY'],
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  • Beispiel#1 : Das GPT -Modell hat "extract_student_info" ausgewählt, und wir haben eine kurze Zusammenfassung über den Schüler erhalten.
  • Beispiel#2 : Das GPT -Modell hat keine Funktion ausgewählt und die Eingabeaufforderung als regelmäßige Frage behandelt, und als Ergebnis haben wir die Biographie von Abraham Lincoln erhalten.
  • Beispiel#3 : Das GPT -Modell hat "extract_school_info" ausgewählt, und wir haben eine kurze Zusammenfassung über die Stanford University erhalten.
student_1_description = "David Nguyen is a sophomore majoring in computer science at Stanford University. He is Asian American and has a 3.8 GPA. David is known for his programming skills and is an active member of the university's Robotics Club. He hopes to pursue a career in artificial intelligence after graduating."
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Schlussfolgerung

In diesem Tutorial haben wir über OpenAys Funktionsanruf erfahren. Wir haben auch gelernt, wie man es verwendet, um konsistente Ausgänge zu generieren, mehrere Funktionen zu erstellen und einen zuverlässigen Textzusammenfassungen zu erstellen.

Wenn Sie mehr über die OpenAI-API erfahren möchten, sollten Sie die Arbeit mit dem OpenAI-API-Kurs nehmen und die OpenAI-API in Python-Cheat-Blatt verwenden. Definieren Sie verschachtelte JSON -Strukturen im Funktionsschema. Durch Angeben der hierarchischen Beziehungen innerhalb der Parametereigenschaft können Sie sicherstellen, dass das Modell ordnungsgemäß verschachtelte und strukturierte JSON -Ausgänge für komplexe Datenanforderungen erzeugt. API -Aufrufe oder Datenbankabfragen basierend auf den aus dem Modell übergebenen Argumenten ausführen. Dies ermöglicht dynamische Wechselwirkungen mit externen Systemen gleichzeitig gleichzeitig konsistente und strukturierte Antworten.

Was passiert, wenn der Funktionsaufruf des Modells keine definierten Funktionen übereinstimmt? Dies gewährleistet die Flexibilität bei der Handhabung unterschiedlicher Eingabetypen.

Das obige ist der detaillierte Inhalt vonOpenAI -Funktion Aufruf Tutorial: Erzeugen Sie strukturierte Ausgabe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ich habe versucht, die Vibe -Codierung mit Cursor AI und es ist erstaunlich! Ich habe versucht, die Vibe -Codierung mit Cursor AI und es ist erstaunlich! Mar 20, 2025 pm 03:34 PM

Die Vibe -Codierung verändert die Welt der Softwareentwicklung, indem wir Anwendungen mit natürlicher Sprache anstelle von endlosen Codezeilen erstellen können. Inspiriert von Visionären wie Andrej Karpathy, lässt dieser innovative Ansatz Dev

Top 5 Genai Starts vom Februar 2025: GPT-4,5, GROK-3 & MEHR! Top 5 Genai Starts vom Februar 2025: GPT-4,5, GROK-3 & MEHR! Mar 22, 2025 am 10:58 AM

Februar 2025 war ein weiterer bahnbrechender Monat für die Generative KI, die uns einige der am meisten erwarteten Modell-Upgrades und bahnbrechenden neuen Funktionen gebracht hat. Von Xais Grok 3 und Anthropics Claude 3.7 -Sonett, um g zu eröffnen

Wie benutze ich Yolo V12 zur Objekterkennung? Wie benutze ich Yolo V12 zur Objekterkennung? Mar 22, 2025 am 11:07 AM

Yolo (Sie schauen nur einmal) war ein führender Echtzeit-Objekterkennungsrahmen, wobei jede Iteration die vorherigen Versionen verbessert. Die neueste Version Yolo V12 führt Fortschritte vor, die die Genauigkeit erheblich verbessern

Beste KI -Kunstgeneratoren (kostenlos & amp; bezahlt) für kreative Projekte Beste KI -Kunstgeneratoren (kostenlos & amp; bezahlt) für kreative Projekte Apr 02, 2025 pm 06:10 PM

Der Artikel überprüft Top -KI -Kunstgeneratoren, diskutiert ihre Funktionen, Eignung für kreative Projekte und Wert. Es zeigt MidJourney als den besten Wert für Fachkräfte und empfiehlt Dall-E 2 für hochwertige, anpassbare Kunst.

Ist Chatgpt 4 o verfügbar? Ist Chatgpt 4 o verfügbar? Mar 28, 2025 pm 05:29 PM

Chatgpt 4 ist derzeit verfügbar und weit verbreitet, wodurch im Vergleich zu seinen Vorgängern wie ChatGPT 3.5 signifikante Verbesserungen beim Verständnis des Kontextes und des Generierens kohärenter Antworten zeigt. Zukünftige Entwicklungen können mehr personalisierte Inters umfassen

Welche KI ist besser als Chatgpt? Welche KI ist besser als Chatgpt? Mar 18, 2025 pm 06:05 PM

Der Artikel erörtert KI -Modelle, die Chatgpt wie Lamda, Lama und Grok übertreffen und ihre Vorteile in Bezug auf Genauigkeit, Verständnis und Branchenauswirkungen hervorheben. (159 Charaktere)

So verwenden Sie Mistral OCR für Ihr nächstes Lappenmodell So verwenden Sie Mistral OCR für Ihr nächstes Lappenmodell Mar 21, 2025 am 11:11 AM

Mistral OCR: revolutionäre retrieval-ausgereifte Generation mit multimodalem Dokumentverständnis RAG-Systeme (Abrufen-Augment-Augmented Generation) haben erheblich fortschrittliche KI

Top -KI -Schreibassistenten, um Ihre Inhaltserstellung zu steigern Top -KI -Schreibassistenten, um Ihre Inhaltserstellung zu steigern Apr 02, 2025 pm 06:11 PM

In dem Artikel werden Top -KI -Schreibassistenten wie Grammarly, Jasper, Copy.ai, Writesonic und RYTR erläutert und sich auf ihre einzigartigen Funktionen für die Erstellung von Inhalten konzentrieren. Es wird argumentiert, dass Jasper in der SEO -Optimierung auszeichnet, während KI -Tools dazu beitragen, den Ton zu erhalten

See all articles