Schnellstart: Verwenden von Bildern in Ihren KI-Chats
Hier erfahren Sie alles über die ersten Schritte mit GPT-4 Turbo mit Bildern mit Azure OpenAI Service.
Hinweis
Modellauswahl
Die neuesten visionfähigen Modelle sind gpt-4o
und gpt-4o mini
. Sie befinden sich in der öffentlichen Vorschau. Das neueste verfügbare GA-Modell ist gpt-4
Version turbo-2024-04-09
.
Beginnen Sie mit der Erkundung der GPT-4 Turbo with Vision-Funktionen mit einem No-Code-Ansatz über Azure OpenAI Studio.
Voraussetzungen
- Ein Azure-Abonnement. Erstellen Sie ein kostenloses Konto.
- Eine Azure OpenAI Service-Ressource mit bereitgestelltem GPT-4 Turbo with Vision-Modell. Informationen zu den verfügbaren Regionen finden Sie unter GPT-4 and GPT-4 Turbo-Previewmodelle. Weitere Informationen zur Ressourcenerstellung finden Sie im Ressourcenbereitstellungsleitfaden.
Hinweis
Es wird derzeit nicht unterstützt, die Inhaltsfilterung für das GPT-4 Turbo mit Vision-Modell zu deaktivieren.
Wechseln Sie zu Azure OpenAI Studio
Navigieren Sie zu Azure OpenAI Studio, und melden Sie sich mit den Anmeldeinformationen für Ihre Azure OpenAI-Ressource an. Wählen Sie während oder nach dem Anmeldeworkflow das passende Verzeichnis, Azure-Abonnement und die Azure OpenAI-Ressource aus.
Wählen Sie unter Verwaltung die Option Bereitstellungen und dann Erstellen aus, um eine GPT-4 Turbo with Vision-Bereitstellung mit dem Modellnamen gpt-4 und der Modellversion vision-preview zu erstellen. Weitere Informationen zur Modellimplementierung finden Sie im Leitfaden zur Ressourcenbereitstellung.
Wählen Sie im Abschnitt Playground die Option Chat aus.
Playground
Auf dieser Seite können Sie die Modellfunktionen ganz einfach schrittweise erkunden und mit ihnen experimentieren.
Allgemeine Hilfe zum Einrichten von Assistenten, Chatsitzungen, Einstellungen und Panels finden Sie im Schnellstart zu Chats.
Starten einer Chatsitzung zum Analysieren von Bildern oder Videos
In dieser Chatsitzung weisen Sie den Assistenten an, Sie beim Verstehen der angegebenen Bilder zu unterstützen.
Wählen Sie zunächst Ihre GPT-4 Turbo with Vision-Bereitstellung aus der Dropdownliste aus.
Geben Sie im Bereich der Assistenteneinrichtung eine Systemmeldung an, um den Assistenten zu leiten. Die Standardmeldung des Systems lautet: „Sie sind ein KI-Assistent, der Personen hilft, Informationen zu finden.“ Sie können die Systemnachricht auf das Bild oder Szenario anpassen, das Sie hochladen.
Hinweis
Es wird empfohlen, die Systemnachricht so zu aktualisieren, dass sie spezifisch für die Aufgabe ist, damit das Modell nicht unvorteilhaft reagiert.
Speichern Sie Ihre Änderungen, und wenn Sie aufgefordert werden, die Sytemnachricht zu bestätigen, wählen Sie Weiter aus.
Geben Sie im Bereich Chatsitzung einen Textprompt wie „Beschreibe dieses Bild“ ein, und laden Sie ein Bild mit der Schaltfläche für Anlagen hoch. Sie können einen anderen Textprompt für Ihren Anwendungsfall verwenden. Wählen Sie dann Senden aus.
Sehen Sie sich die Ausgabe genau an. Erwägen Sie, Folgefragen im Zusammenhang mit der Analyse Ihres Bilds zu stellen, um mehr zu erfahren.
Bereinigen von Ressourcen
Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.
Dieser Artikel behandelt die ersten Schritte mit den Azure OpenAI-REST-APIs, um das GPT-4 Turbo with Vision-Modell bereitzustellen und zu verwenden.
Voraussetzungen
- Ein Azure-Abonnement. Erstellen Sie ein kostenloses Konto.
- Python 3.8 oder eine höhere Version
- Die folgenden Python-Bibliotheken:
requests
,json
- Eine Azure OpenAI Service-Ressource mit bereitgestelltem GPT-4 Turbo with Vision-Modell. Informationen zu den verfügbaren Regionen finden Sie unter GPT-4 and GPT-4 Turbo-Previewmodelle. Weitere Informationen zur Ressourcenerstellung finden Sie im Ressourcenbereitstellungsleitfaden.
Hinweis
Es wird derzeit nicht unterstützt, die Inhaltsfilterung für das GPT-4 Turbo mit Vision-Modell zu deaktivieren.
Abrufen von Schlüssel und Endpunkt
Um die Azure OpenAI-APIs erfolgreich aufzurufen, benötigen Sie die folgenden Informationen zu Ihrer Azure OpenAI-Ressource:
Variable | Name | Wert |
---|---|---|
Endpunkt | api_base |
Der Endpunktwert befindet sich unter Schlüssel und Endpunkt für Ihre Ressource im Azure-Portal. Sie finden den Endpunkt auch über die Seite Bereitstellungen in Azure KI Studio. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/ . |
Schlüssel | api_key |
Den Schlüsselwert finden Sie ebenfalls unter Schlüssel und Endpunkt für Ihre Ressource im Azure-Portal. Azure generiert zwei Schlüssel für Ihre Ressource. Sie können beide Werte verwenden. |
Wechseln Sie zu Ihrer Ressource im Azure-Portal. Wählen Sie im Navigationsbereich unter Ressourcenverwaltung die Option Schlüssel und Endpunkt aus. Kopieren Sie den Wert unter Endpunkt und einen Zugriffsschlüsselwert. Sie können entweder den Wert unter SCHLÜSSEL 1 oder unter SCHLÜSSEL 2 verwenden. Wenn Sie zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und erneut generieren, ohne Dienstunterbrechungen zu verursachen.
Erstellen einer neuen Python-Anwendung
Erstellen Sie eine neue Python-Datei namens quickstart.py. Öffnen Sie die Datei in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE.
Ersetzen Sie den Inhalt von quickstart.py durch den folgenden Code.
# Packages required: import requests import json api_base = '<your_azure_openai_endpoint>' deployment_name = '<your_deployment_name>' API_KEY = '<your_azure_openai_key>' base_url = f"{api_base}openai/deployments/{deployment_name}" headers = { "Content-Type": "application/json", "api-key": API_KEY } # Prepare endpoint, headers, and request body endpoint = f"{base_url}/chat/completions?api-version=2023-12-01-preview" data = { "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": [ { "type": "text", "text": "Describe this picture:" }, { "type": "image_url", "image_url": { "url": "<image URL>" } } ] } ], "max_tokens": 2000 } # Make the API call response = requests.post(endpoint, headers=headers, data=json.dumps(data)) print(f"Status Code: {response.status_code}") print(response.text)
Nehmen Sie die folgenden Änderungen vor:
- Geben Sie Ihre Endpunkt-URL und ihren Schlüssel in die entsprechenden Felder ein.
- Geben Sie Ihren GPT-4 Turbo with Vision-Bereitstellungsnamen in das entsprechende Feld ein.
- Ändern Sie den Wert des
"image"
-Felds in die URL Ihres Bilds.Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in der Schrittanleitung für GPT-4 Turbo mit Vision.
Führen Sie die Anwendung mit Befehl
python
aus:python quickstart.py
Bereinigen von Ressourcen
Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.
Dieser Artikel behandelt die ersten Schritte mit dem Python-SDK von Azure OpenAI, um das Modell für GPT-4 Turbo mit Vision bereitzustellen und zu verwenden.
Quellcode der Bibliothek | Paket (PyPi) |
Voraussetzungen
- Ein Azure-Abonnement. Erstellen Sie ein kostenloses Konto.
- Python 3.8 oder eine höhere Version
- Die folgenden Python-Bibliotheken:
os
- Eine Azure OpenAI Service-Ressource mit bereitgestelltem GPT-4 Turbo with Vision-Modell. Informationen zu den verfügbaren Regionen finden Sie unter GPT-4 and GPT-4 Turbo-Previewmodelle. Weitere Informationen zur Ressourcenerstellung finden Sie im Ressourcenbereitstellungsleitfaden.
Einrichten
Installieren Sie die OpenAI Python-Clientbibliothek mit:
pip install openai
Hinweis
Diese Bibliothek wird von OpenAI verwaltet. Lesen Sie den Versionsverlauf, um die neuesten Updates für die Bibliothek nachzuverfolgen.
Abrufen von Schlüssel und Endpunkt
Für erfolgreiche Azure OpenAI-Aufrufe benötigen Sie einen Endpunkt und einen Schlüssel.
Variablenname | Wert |
---|---|
ENDPOINT |
Der Dienstendpunkt befindet sich im Abschnitt Schlüssel und Endpunkt, wenn Sie Ihre Ressource aus dem Azure-Portal untersuchen. Alternativ können Sie den Endpunkt über die Seite Bereitstellungen in Azure KI Studio finden. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/ . |
API-KEY |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. Sie können KEY1 oder KEY2 verwenden. |
Wechseln Sie zu Ihrer Ressource im Azure-Portal. Den Abschnitt Schlüssel und Endpunkt finden Sie im Abschnitt Ressourcenverwaltung. Kopieren Sie die Werte für Endpunkt und Zugriffsschlüssel, da Sie beide für die Authentifizierung Ihrer API-Aufrufe benötigen. Sie können KEY1
oder KEY2
verwenden. Wenn Sie jederzeit zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und neu generieren, ohne Dienstunterbrechungen zu verursachen.
Umgebungsvariablen
Erstellen und Zuweisen von beständigen Umgebungsvariablen für Ihren Schlüssel und Endpunkt.
Wichtig
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Erstellen einer neuen Python-Anwendung
Erstellen Sie eine neue Python-Datei namens quickstart.py. Öffnen Sie die Datei in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE.
Ersetzen Sie den Inhalt von quickstart.py durch den folgenden Code.
from openai import AzureOpenAI api_base = os.getenv("AZURE_OPENAI_ENDPOINT") api_key= os.getenv("AZURE_OPENAI_API_KEY") deployment_name = '<your_deployment_name>' api_version = '2023-12-01-preview' # this might change in the future client = AzureOpenAI( api_key=api_key, api_version=api_version, base_url=f"{api_base}/openai/deployments/{deployment_name}" ) response = client.chat.completions.create( model=deployment_name, messages=[ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": [ { "type": "text", "text": "Describe this picture:" }, { "type": "image_url", "image_url": { "url": "<image URL>" } } ] } ], max_tokens=2000 ) print(response)
Nehmen Sie die folgenden Änderungen vor:
- Geben Sie den Namen Ihrer Bereitstellung für GPT-4 Turbo mit Vision in das entsprechende Feld ein.
- Ändern Sie den Wert des
"url"
-Felds in die URL Ihres Bilds.Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in der Schrittanleitung für GPT-4 Turbo mit Vision.
Führen Sie die Anwendung mit Befehl
python
aus:python quickstart.py
Bereinigen von Ressourcen
Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.
Dieser Artikel behandelt die ersten Schritte mit dem JavaScript SDK für OpenAI, um das Modell für GPT-4 Turbo mit Vision bereitzustellen und zu verwenden.
Dieses SDK wird von OpenAI mit Azure-spezifischen Typen bereitgestellt, die von Azure bereitgestellt werden.
Referenzdokumentation | Quellcode der Bibliothek | Paket (npm) | Beispiele
Voraussetzungen
- Azure-Abonnement: Kostenloses Azure-Konto
- LTS-Versionen von Node.js
- Die Azure CLI wird für die kennwortlose Authentifizierung in einer lokalen Entwicklungsumgebung verwendet. Erstellen Sie den erforderlichen Kontext, indem Sie sich mit der Azure CLI anmelden.
- Eine Azure OpenAI-Ressource, die in einer unterstützten Region erstellt wurde (siehe Regionale Verfügbarkeit). Weitere Informationen finden Sie unter Erstellen einer Ressource und Bereitstellen eines Modells mit Azure OpenAI.
Hinweis
Diese Bibliothek wird von OpenAI verwaltet. Lesen Sie den Versionsverlauf, um die neuesten Updates für die Bibliothek nachzuverfolgen.
Abrufen von Schlüssel und Endpunkt
Für erfolgreiche Azure OpenAI-Aufrufe benötigen Sie einen Endpunkt und einen Schlüssel.
Variablenname | Wert |
---|---|
ENDPOINT |
Der Dienstendpunkt befindet sich im Abschnitt Schlüssel und Endpunkt, wenn Sie Ihre Ressource aus dem Azure-Portal untersuchen. Alternativ können Sie den Endpunkt über die Seite Bereitstellungen in Azure KI Studio finden. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/ . |
API-KEY |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. Sie können KEY1 oder KEY2 verwenden. |
Wechseln Sie zu Ihrer Ressource im Azure-Portal. Den Abschnitt Schlüssel und Endpunkt finden Sie im Abschnitt Ressourcenverwaltung. Kopieren Sie die Werte für Endpunkt und Zugriffsschlüssel, da Sie beide für die Authentifizierung Ihrer API-Aufrufe benötigen. Sie können KEY1
oder KEY2
verwenden. Wenn Sie jederzeit zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und neu generieren, ohne Dienstunterbrechungen zu verursachen.
Umgebungsvariablen
Erstellen und Zuweisen von beständigen Umgebungsvariablen für Ihren Schlüssel und Endpunkt.
Wichtig
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Erstellen einer Node.-Anwendung
Erstellen Sie in einem Konsolenfenster (etwa cmd, PowerShell oder Bash) ein neues Verzeichnis für Ihre App, und rufen Sie es auf. Führen Sie dann den Befehl npm init
aus, um eine Knotenanwendung mit einer Datei des Typs package.json zu erstellen.
npm init
Installieren der Clientbibliothek
Installieren der Clientbibliotheken:
npm install openai @azure/identity
Die Datei package.json Ihrer App wird mit den Abhängigkeiten aktualisiert.
Erstellen einer neuen JavaScript-Anwendung für Bildprompts
Wählen Sie ein Bild unter azure-samples/cognitive-services-sample-data-files aus, und legen Sie die URL für ein Bild in den Umgebungsvariablen fest.
Ersetzen Sie den Inhalt von quickstart.js durch den folgenden Code.
const AzureOpenAI = require('openai').AzureOpenAI; const { DefaultAzureCredential, getBearerTokenProvider } = require('@azure/identity'); // You will need to set these environment variables or edit the following values const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>"; const imageUrl = process.env["IMAGE_URL"] || "<image url>"; // Required Azure OpenAI deployment name and API version const apiVersion = "2024-07-01-preview"; const deploymentName = "gpt-4-with-turbo"; // keyless authentication const credential = new DefaultAzureCredential(); const scope = "https://cognitiveservices.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope); function getClient(): AzureOpenAI { return new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment: deploymentName, }); } function createMessages() { return { messages: [ { role: "system", content: "You are a helpful assistant." }, { role: "user", content: [ { type: "text", text: "Describe this picture:", }, { type: "image_url", image_url: { url: imageUrl, }, }, ], }, ], model: "", max_tokens: 2000, }; } async function printChoices(completion) { for (const choice of completion.choices) { console.log(choice.message); } } export async function main() { console.log("== Get GPT-4 Turbo with vision Sample =="); const client = getClient(); const messages = createMessages(); const completion = await client.chat.completions.create(messages); await printChoices(completion); } main().catch((err) => { console.error("Error occurred:", err); });
Nehmen Sie die folgenden Änderungen vor:
- Geben Sie den Namen Ihrer Bereitstellung für GPT-4 Turbo mit Vision in das entsprechende Feld ein.
- Ändern Sie den Wert des
"url"
-Felds in die URL Ihres Bilds.Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in der Schrittanleitung für GPT-4 Turbo mit Vision.
Führen Sie die Anwendung mit dem folgenden Befehl aus:
node quickstart.js
Bereinigen von Ressourcen
Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.
Dieser Artikel behandelt die ersten Schritte mit dem JavaScript SDK für OpenAI, um das Modell für GPT-4 Turbo mit Vision bereitzustellen und zu verwenden.
Dieses SDK wird von OpenAI mit Azure-spezifischen Typen bereitgestellt, die von Azure bereitgestellt werden.
Referenzdokumentation | Quellcode der Bibliothek | Paket (npm) | Beispiele
Voraussetzungen
- Azure-Abonnement: Kostenloses Azure-Konto
- LTS-Versionen von Node.js
- TypeScript
- Die Azure CLI wird für die kennwortlose Authentifizierung in einer lokalen Entwicklungsumgebung verwendet. Erstellen Sie den erforderlichen Kontext, indem Sie sich mit der Azure CLI anmelden.
- Eine Azure OpenAI-Ressource, die in einer unterstützten Region erstellt wurde (siehe Regionale Verfügbarkeit). Weitere Informationen finden Sie unter Erstellen einer Ressource und Bereitstellen eines Modells mit Azure OpenAI.
Hinweis
Diese Bibliothek wird von OpenAI verwaltet. Lesen Sie den Versionsverlauf, um die neuesten Updates für die Bibliothek nachzuverfolgen.
Abrufen von Schlüssel und Endpunkt
Für erfolgreiche Azure OpenAI-Aufrufe benötigen Sie einen Endpunkt und einen Schlüssel.
Variablenname | Wert |
---|---|
ENDPOINT |
Der Dienstendpunkt befindet sich im Abschnitt Schlüssel und Endpunkt, wenn Sie Ihre Ressource aus dem Azure-Portal untersuchen. Alternativ können Sie den Endpunkt über die Seite Bereitstellungen in Azure KI Studio finden. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/ . |
API-KEY |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. Sie können KEY1 oder KEY2 verwenden. |
Wechseln Sie zu Ihrer Ressource im Azure-Portal. Den Abschnitt Schlüssel und Endpunkt finden Sie im Abschnitt Ressourcenverwaltung. Kopieren Sie die Werte für Endpunkt und Zugriffsschlüssel, da Sie beide für die Authentifizierung Ihrer API-Aufrufe benötigen. Sie können KEY1
oder KEY2
verwenden. Wenn Sie jederzeit zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und neu generieren, ohne Dienstunterbrechungen zu verursachen.
Umgebungsvariablen
Erstellen und Zuweisen von beständigen Umgebungsvariablen für Ihren Schlüssel und Endpunkt.
Wichtig
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Erstellen einer Node.-Anwendung
Erstellen Sie in einem Konsolenfenster (etwa cmd, PowerShell oder Bash) ein neues Verzeichnis für Ihre App, und rufen Sie es auf. Führen Sie dann den Befehl npm init
aus, um eine Knotenanwendung mit einer Datei des Typs package.json zu erstellen.
npm init
Installieren der Clientbibliothek
Installieren der Clientbibliotheken:
npm install openai @azure/identity
Die Datei package.json Ihrer App wird mit den Abhängigkeiten aktualisiert.
Erstellen einer neuen JavaScript-Anwendung für Bildprompts
Wählen Sie ein Bild unter azure-samples/cognitive-services-sample-data-files aus, und legen Sie die URL für ein Bild in den Umgebungsvariablen fest.
Erstellen Sie die Datei quickstart.ts, und fügen Sie den folgenden Code ein.
import { AzureOpenAI } from "openai"; import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity"; import type { ChatCompletion, ChatCompletionCreateParamsNonStreaming, } from "openai/resources/index"; // You will need to set these environment variables or edit the following values const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>"; const imageUrl = process.env["IMAGE_URL"] || "<image url>"; // Required Azure OpenAI deployment name and API version const apiVersion = "2024-07-01-preview"; const deploymentName = "gpt-4-with-turbo"; // keyless authentication const credential = new DefaultAzureCredential(); const scope = "https://cognitiveservices.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope); function getClient(): AzureOpenAI { return new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment: deploymentName, }); } function createMessages(): ChatCompletionCreateParamsNonStreaming { return { messages: [ { role: "system", content: "You are a helpful assistant." }, { role: "user", content: [ { type: "text", text: "Describe this picture:", }, { type: "image_url", image_url: { url: imageUrl, }, }, ], }, ], model: "", max_tokens: 2000, }; } async function printChoices(completion: ChatCompletion): Promise<void> { for (const choice of completion.choices) { console.log(choice.message); } } export async function main() { console.log("== Get GPT-4 Turbo with vision Sample =="); const client = getClient(); const messages = createMessages(); const completion = await client.chat.completions.create(messages); await printChoices(completion); } main().catch((err) => { console.error("Error occurred:", err); });
Nehmen Sie die folgenden Änderungen vor:
- Geben Sie den Namen Ihrer Bereitstellung für GPT-4 Turbo mit Vision in das entsprechende Feld ein.
- Ändern Sie den Wert des
"url"
-Felds in die URL Ihres Bilds.Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in der Schrittanleitung für GPT-4 Turbo mit Vision.
Erstellen Sie die Anwendung mit dem folgenden Befehl:
tsc
Führen Sie die Anwendung mit dem folgenden Befehl aus:
node quickstart.js
Bereinigen von Ressourcen
Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.
Dieser Artikel behandelt die ersten Schritte mit dem .NET SDK von Azure OpenAI, um das Modell für GPT-4 Turbo mit Vision bereitzustellen und zu verwenden.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- The .NET 8.0 SDK
- Eine Azure OpenAI Service-Ressource mit bereitgestelltem GPT-4 Turbo with Vision-Modell. Informationen zu den verfügbaren Regionen finden Sie unter GPT-4 and GPT-4 Turbo-Previewmodelle. Weitere Informationen zur Ressourcenerstellung finden Sie im Ressourcenbereitstellungsleitfaden.
Einrichten
Abrufen von Schlüssel und Endpunkt
Für erfolgreiche Azure OpenAI-Aufrufe benötigen Sie einen Endpunkt und einen Schlüssel.
Variablenname | Wert |
---|---|
AZURE_OPENAI_ENDPOINT |
Der Dienstendpunkt befindet sich im Abschnitt Schlüssel und Endpunkt, wenn Sie Ihre Ressource aus dem Azure-Portal untersuchen. Alternativ können Sie den Endpunkt über die Seite Bereitstellungen in Azure KI Studio finden. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. Sie können KEY1 oder KEY2 verwenden. |
Wechseln Sie zu Ihrer Ressource im Azure-Portal. Die Werte für Endpunkt und Schlüssel finden Sie im Abschnitt Ressourcenverwaltung. Kopieren Sie die Werte für Endpunkt und Zugriffsschlüssel, da Sie beide für die Authentifizierung Ihrer API-Aufrufe benötigen. Sie können KEY1
oder KEY2
verwenden. Wenn Sie jederzeit zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und neu generieren, ohne Dienstunterbrechungen zu verursachen.
Erstellen der .NET App
Erstellen Sie eine .NET-App mit dem Befehl
dotnet new
:dotnet new console -n OpenAISpeech
Wechseln Sie in das Verzeichnis der neuen App:
cd OpenAISpeech
Installieren der Clientbibliothek
Installieren der Azure.OpenAI
Clientbibliothek:
dotnet add package Azure.AI.OpenAI
Kennwortlose Authentifizierung wird empfohlen
Die passwortlose Authentifizierung ist sicherer als schlüsselbasierte Alternativen und ist der empfohlene Ansatz für die Verbindung mit Azure-Diensten. Wenn Sie die passwortlose Authentifizierung auswählen, müssen Sie Folgendes ausführen:
Fügen Sie das Paket
Azure.Identity
hinzu.dotnet add package Azure.Identity
Weisen Sie Ihrem Benutzerkonto die
Cognitive Services User
-Rolle zu. Dies kann im Azure-Portal auf Ihrer OpenAI-Ressource unter Access Control (IAM)>Rollenzuweisung hinzufügen erfolgen.Melden Sie sich mit Visual Studio oder der Azure CLI über
az login
in Azure an.
Aktualisieren des App-Codes
Ersetzen Sie den Inhalt von
program.cs
durch den folgenden Code, und aktualisieren Sie die Platzhalterwerte durch Ihren eigenen.using Azure; using Azure.AI.OpenAI; using Azure.Identity; using OpenAI.Chat; // Required for Passwordless auth var endpoint = new Uri("YOUR_AZURE_OPENAI_ENDPOINT"); var credentials = new AzureKeyCredential("YOUR_AZURE_OPENAI_KEY"); // var credentials = new DefaultAzureCredential(); // Use this line for Passwordless auth var deploymentName = "gpt-4"; // Default name, update with your own if needed var openAIClient = new AzureOpenAIClient(endpoint, credentials); var chatClient = openAIClient.GetChatClient(deploymentName); var imageUri = "YOUR_IMAGE_URL"; List<ChatMessage> messages = [ new UserChatMessage( ChatMessageContentPart.CreateTextMessageContentPart("Please describe the following image:"), ChatMessageContentPart.CreateImageMessageContentPart(new Uri(imageUri), "image/png")) ]; ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(messages); Console.WriteLine($"[ASSISTANT]:"); Console.WriteLine($"{chatCompletion.Content[0].Text}");
Wichtig
Verwenden Sie in der Produktion eine sichere Speicher- und Zugriffsmethode für Ihre Anmeldeinformationen (beispielsweise Azure Key Vault). Weitere Informationen zur Sicherheit von Anmeldeinformationen finden Sie unter Azure KI Services-Sicherheit.
Führen Sie die Anwendung mit dem Befehl
dotnet run
oder der Schaltfläche „Ausführen“ oben in Visual Studio aus:dotnet run
Die App generiert eine Audiodatei an dem Speicherort, den Sie für die Variable speechFilePath
angegeben haben. Geben Sie die Datei auf Ihrem Gerät wieder, um die generierte Audiowiedergabe zu hören.
Bereinigen von Ressourcen
Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.
Nächste Schritte
- Erfahren Sie mehr über diese APIs im GPT-4 Turbo mit Vision-Anleitung
- Häufig gestellte Fragen zu GPT-4 Turbo mit Vision
- API-Referenz zu GPT-4 Turbo mit Vision