Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Beginnen Sie damit, Bilder in Ihren Chats mit Azure OpenAI in den Microsoft Foundry-Modellen zu verwenden.
Von Bedeutung
Bei der Verwendung von Chatabschlussmodellen mit Vision-Funktionen können zusätzliche Nutzungsgebühren anfallen.
Verwenden Sie diesen Artikel, um mit der Verwendung von Microsoft Foundry zu beginnen, um ein Chatabschlussmodell mit Bildverständnis bereitzustellen und zu testen.
Voraussetzungen
- Ein Azure-Abonnement. Erstellen Sie ein kostenloses Konto.
- Sobald Sie Ihr Azure-Abonnement haben, erstellen Sie eine Azure OpenAI-Ressource. Weitere Informationen zur Ressourcenerstellung finden Sie im Ressourcenbereitstellungsleitfaden.
- Ein Foundry-Projekt mit Ihrer Azure OpenAI-Ressource, die als Verbindung hinzugefügt wird.
Vorbereiten Ihrer Medien
Sie benötigen ein Bild, um diesen Schnellstart abzuschließen. Sie können dieses Beispielbild oder ein beliebiges anderes Bild verwenden, das Ihnen zur Verfügung steht.
Zur Gießerei wechseln
- Navigieren Sie zu Foundry , und melden Sie sich mit den Anmeldeinformationen an, die Ihrer Azure OpenAI-Ressource zugeordnet sind. Wählen Sie während oder nach dem Anmeldeworkflow das passende Verzeichnis, Azure-Abonnement und die Azure OpenAI-Ressource aus.
- Wählen Sie das Projekt aus, in dem Sie arbeiten möchten.
- Wählen Sie im linken Navigationsmenü Modelle + Endpunkte aus und wählen Sie + Modell bereitstellen aus.
- Wählen Sie eine Bereitstellung mit Image aus, indem Sie als Modellnamen gpt-4o oder gpt-4o-mini auswählen. Wählen Sie im angezeigten Fenster einen Namen und einen Bereitstellungstyp aus. Stellen Sie sicher, dass Ihre Azure OpenAI-Ressource verbunden ist. Weitere Informationen zur Modellimplementierung finden Sie im Leitfaden zur Ressourcenbereitstellung.
- Klicken Sie auf Bereitstellen.
- Wählen Sie als Nächstes Ihr neues Modell aus, und wählen Sie In Playground öffnenaus. Im Chat-Playground sollte die von Ihnen erstellte-Bereitstellung in der Dropdownliste Bereitstellung ausgewählt sein.
Spielplatz
In dieser Chatsitzung weisen Sie den Assistenten an, Sie beim Verstehen von Bildern zu unterstützen, die Sie eingeben.
Allgemeine Hilfe zum Einrichten von Assistenten, Chatsitzungen, Einstellungen und Panels finden Sie im Schnellstart zu Chats.
Starten einer Chatsitzung zum Analysieren von Bildern
In dieser Chatsitzung weisen Sie den Assistenten an, Sie beim Verstehen der angegebenen Bilder zu unterstützen.
Stellen Sie zunächst sicher, dass Ihre Bereitstellung mit Image im Dropdownmenü Bereitstellung ausgewählt ist.
Geben Sie im Kontexttextfeld im Bereich Setup diesen Prompt ein an, den Assistenten zu leiten:
"You're an AI assistant that helps people find information."Sie können den Prompt auch auf Ihr Bild oder Szenario anpassen.Hinweis
Es wird empfohlen, die Systemnachricht so zu aktualisieren, dass sie spezifisch für die Aufgabe ist, damit das Modell sinnvoll antworten kann.
Wählen Sie zum Speichern der Änderungen Änderungen übernehmen aus.
Wählen Sie im Chatsitzungsbereich die Schaltfläche „Anlage“ und dann Bild hochladen aus. Wählen Sie Ihr Bild aus.
Fügen Sie den folgenden Prompt im Chatfeld hinzu:
Describe this image.Wählen Sie dann das Symbol „Senden“ aus, um ihn zu senden.Das Symbol „Senden“ wird durch eine Stoppschaltfläche ersetzt. Wenn Sie sie auswählen, beendet der Assistent die Verarbeitung Ihrer Anforderung. Lassen Sie den Assistenten die Antwort für diese Schnellstartanleitung abschließen.
Der Assistent antwortet mit einer Beschreibung des Bilds.
Senden Sie eine weitere Anweisung im Zusammenhang mit der Analyse Ihres Bilds. Sie können
"What should I highlight about this image to my insurance company?"eingeben.Sie sollten eine Antwort empfangen, die etwa dem folgenden Beispiel ähnelt:
When reporting the incident to your insurance company, you should highlight the following key points from the image: 1. **Location of Damage**: Clearly state that the front end of the car, particularly the driver's side, is damaged. Mention the crumpled hood, broken front bumper, and the damaged left headlight. 2. **Point of Impact**: Indicate that the car has collided with a guardrail, which may suggest that no other vehicles were involved in the accident. 3. **Condition of the Car**: Note that the damage seems to be concentrated on the front end, and there is no visible damage to the windshield or rear of the car from this perspective. 4. **License Plate Visibility**: Mention that the license plate is intact and can be used for identification purposes. 5. **Environment**: Report that the accident occurred near a roadside with a guardrail, possibly in a rural or semi-rural area, which might help in establishing the accident location and context. 6. **Other Observations**: If there were any other circumstances or details not visible in the image that may have contributed to the accident, such as weather conditions, road conditions, or any other relevant information, be sure to include those as well. Remember to be factual and descriptive, avoiding speculation about the cause of the accident, as the insurance company will conduct its own investigation.
Anzeigen und Exportieren von Code
Zu jedem Zeitpunkt in der Chatsitzung können Sie den Schalter JSON-Rohdaten anzeigen oben im Chatfenster aktivieren, um die als JSON formatierte Unterhaltung anzuzeigen. Hier sehen Sie den Status zu Beginn der Schnellstart-Chatsitzung:
[
{
"role": "system",
"content": [
"You are an AI assistant that helps people find information."
]
},
]
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.
Verwenden Sie diesen Artikel, um mit der Verwendung der Azure OpenAI-REST-APIs zu beginnen, um visionsfähige Chatmodelle 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. - Ein Azure OpenAI-Objekt in der Microsoft Foundry Models-Ressource mit einem vision-fähigen Modell wurde bereitgestellt. Siehe Modellverfügbarkeit für verfügbare Regionen. 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 " im Foundry-Portal. 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 Modellbereitstellungsnamen in das entsprechende Feld ein.
- Ändern Sie den Wert des
"image"Felds in die öffentlich zugängliche URL Ihres Bilds.Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in den Anleitungen zu Vision-Chats.
Führen Sie die Anwendung mit Befehl
pythonaus: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.
Verwenden Sie diesen Artikel, um mit der Verwendung des Azure OpenAI Python SDK zu beginnen, um ein visionsfähiges Chatmodell 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-Ressource in den Microsoft Foundry-Modellen mit einem visionsfähigen Chatmodell wurde bereitgestellt. Siehe Modellverfügbarkeit für verfügbare Regionen. 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 " im Microsoft Foundry-Portal 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.
Von Bedeutung
Wir empfehlen die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen , um zu vermeiden, dass Anmeldeinformationen mit Ihren Anwendungen gespeichert werden, die in der Cloud ausgeführt werden.
Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich. Wenn Sie API-Schlüssel verwenden, speichern Sie sie sicher in Azure Key Vault, rotieren Sie die Schlüssel regelmäßig, und beschränken Sie den Zugriff auf Azure Key Vault mithilfe von rollenbasierter Zugriffssteuerung und Netzwerkzugriffsbeschränkungen. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.
Weitere Informationen zur Sicherheit von KI-Diensten finden Sie unter Authentifizieren von Anforderungen an Azure AI-Dienste.
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 der Modellbereitstellung in das entsprechende Feld ein.
- Ändern Sie den Wert des
"url"Felds in die öffentlich zugängliche URL Ihres Bilds.Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in den Anleitungen zu Vision-Chats.
Führen Sie die Anwendung mit Befehl
pythonaus:python quickstart.py
Von Bedeutung
Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich. Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn sicher in Azure Key Vault. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.
Weitere Informationen zur Sicherheit von KI-Diensten finden Sie unter Authentifizieren von Anforderungen an Azure AI-Dienste.
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.
Verwenden Sie diesen Artikel, um mit der Verwendung des OpenAI JavaScript SDK zu beginnen, um ein visionsfähiges Chatmodell 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
- Ein Azure-Abonnement – Kostenlos erstellen
- 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.
Voraussetzungen für Microsoft Entra ID
Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:
- Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
- Weisen Sie Ihrem Benutzerkonto die
Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.
Einrichten
Erstellen Sie einen neuen Ordner
vision-quickstart, und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:mkdir vision-quickstart && cd vision-quickstartErstellen Sie
package.jsonmit dem folgenden Befehl:npm init -yInstallieren Sie die OpenAI-Clientbibliothek für JavaScript mit:
npm install openaiFür die empfohlene kennwortlose Authentifizierung:
npm install @azure/identity
Abrufen von Ressourceninformationen
Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:
| Variablenname | Wert |
|---|---|
AZURE_OPENAI_ENDPOINT |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal. |
Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.
Vorsicht
Um die empfohlene schlüssellose Authentifizierung mit dem SDK zu verwenden, stellen Sie sicher, dass die Umgebungsvariable AZURE_OPENAI_API_KEY nicht festgelegt ist.
Erstellen einer neuen JavaScript-Anwendung für Bildprompts
Wählen Sie ein Bild aus den Azure-Samples/cognitive-services-sample-data-files aus. Geben Sie ihre öffentlich zugängliche Bild-URL im folgenden Code ein, oder legen Sie die IMAGE_URL Umgebungsvariable darauf fest.
Von Bedeutung
Wenn Sie eine SAS-URL zu einem Bild verwenden, das in Azure Blob Storage gespeichert ist, müssen Sie verwaltete Identität aktivieren und der Azure OpenAI-Ressource die Rolle " Storage Blob Reader " zuweisen (gehen Sie dazu im Azure-Portal vor). Dadurch kann das Modell auf das Bild im BLOB-Speicher zugreifen.
Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in den Anleitungen zu Vision-Chats.
Erstellen Sie die Datei
index.jsmit dem 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 || "Your endpoint"; const imageUrl = process.env.IMAGE_URL || "<image url>"; // Required Azure OpenAI deployment name and API version const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview"; const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "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 Vision chats 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); });Melden Sie sich mithilfe des folgenden Befehls bei Azure an:
az loginFühren Sie die JavaScript-Datei aus.
node index.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.
Verwenden Sie diesen Artikel, um mit der Verwendung des OpenAI JavaScript SDK zu beginnen, um ein visionsfähiges Chatmodell 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
- Ein Azure-Abonnement – Kostenlos erstellen
- 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.
Voraussetzungen für Microsoft Entra ID
Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:
- Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
- Weisen Sie Ihrem Benutzerkonto die
Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.
Einrichten
Erstellen Sie einen neuen Ordner
vision-quickstart, und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:mkdir vision-quickstart && cd vision-quickstartErstellen Sie
package.jsonmit dem folgenden Befehl:npm init -yMit dem folgenden Befehl aktualisieren Sie
package.jsonauf ECMAScript.npm pkg set type=moduleInstallieren Sie die OpenAI-Clientbibliothek für JavaScript mit:
npm install openaiFür die empfohlene kennwortlose Authentifizierung:
npm install @azure/identity
Abrufen von Ressourceninformationen
Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:
| Variablenname | Wert |
|---|---|
AZURE_OPENAI_ENDPOINT |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal. |
Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.
Vorsicht
Um die empfohlene schlüssellose Authentifizierung mit dem SDK zu verwenden, stellen Sie sicher, dass die Umgebungsvariable AZURE_OPENAI_API_KEY nicht festgelegt ist.
Erstellen einer neuen JavaScript-Anwendung für Bildprompts
Wählen Sie ein Bild aus den Azure-Samples/cognitive-services-sample-data-files aus. Verwenden Sie die Bild-URL im folgenden Code, oder legen Sie die IMAGE_URL Umgebungsvariable auf die Bild-URL fest.
Tipp
Sie können ebenfalls Base64-codierte Bilddaten anstelle einer URL verwenden. Weitere Informationen finden Sie in den Anleitungen zu Vision-Chats.
Erstellen Sie die Datei
index.tsmit dem folgenden Code: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 || "Your endpoint"; const imageUrl = process.env["IMAGE_URL"] || "<image url>"; // Required Azure OpenAI deployment name and API version const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview"; const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "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 Vision chat 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); });Erstellen Sie die Datei
tsconfig.json, um den TypeScript-Code zu transpilieren, und kopieren Sie den folgenden Code für ECMAScript.{ "compilerOptions": { "module": "NodeNext", "target": "ES2022", // Supports top-level await "moduleResolution": "NodeNext", "skipLibCheck": true, // Avoid type errors from node_modules "strict": true // Enable strict type-checking options }, "include": ["*.ts"] }Transpilieren Sie aus TypeScript nach JavaScript.
tscMelden Sie sich mithilfe des folgenden Befehls bei Azure an:
az loginFühren Sie den Code mithilfe des folgenden Befehls aus:
node index.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.
Verwenden Sie diesen Artikel, um mit der Verwendung des Azure OpenAI .NET SDK zu beginnen, um ein visionsfähiges Chatmodell bereitzustellen und zu verwenden.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- The .NET 8.0 SDK
- Eine Azure OpenAI-Ressource in den Microsoft Foundry-Modellen mit einem visionsfähigen Chatmodell wurde bereitgestellt. Siehe Modellverfügbarkeit für verfügbare Regionen. Weitere Informationen zur Ressourcenerstellung finden Sie im Ressourcenbereitstellungsleitfaden.
Voraussetzungen für Microsoft Entra ID
Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:
- Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
- Weisen Sie Ihrem Benutzerkonto die
Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.
Einrichten
Erstellen Sie einen neuen Ordner
vision-quickstart, und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:mkdir vision-quickstart && cd vision-quickstartErstellen Sie eine neue Konsolenanwendung mit dem folgenden Befehl:
dotnet new consoleInstallieren Sie die OpenAI .NET-Clientbibliothek mit dem Befehl dotnet add package:
dotnet add package Azure.AI.OpenAIInstallieren Sie für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID das Paket Azure.Identity mit:
dotnet add package Azure.IdentityMelden Sie sich für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID mit dem folgenden Befehl bei Azure an:
az login
Abrufen von Ressourceninformationen
Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:
| Variablenname | Wert |
|---|---|
AZURE_OPENAI_ENDPOINT |
Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal. |
Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.
Den Schnellstart ausführen
Der Beispielcode in diesem Schnellstart verwendet Microsoft Entra ID für die empfohlene schlüssellose Authentifizierung. Wenn Sie einen API-Schlüssel verwenden möchten, können Sie das DefaultAzureCredential Objekt durch ein AzureKeyCredential Objekt ersetzen.
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Führen Sie die folgenden Schritte aus, um die Schnellstartanleitung auszuführen:
Ersetzen Sie den Inhalt von
Program.csdurch 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 string deploymentName = "gpt-4"; string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? "https://<your-resource-name>.openai.azure.com/"; string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY") ?? "<your-key>"; // Use the recommended keyless credential instead of the AzureKeyCredential credential. AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); //AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key)); var chatClient = openAIClient.GetChatClient(deploymentName); var imageUrl = "YOUR_IMAGE_URL"; var textPart = ChatMessageContentPart.CreateTextPart("Describe this picture:"); var imgPart = ChatMessageContentPart.CreateImagePart(imageUrl); var chatMessages = new List<ChatMessage> { new SystemChatMessage("You are a helpful assistant."), new UserChatMessage(textPart, imgPart) }; ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(chatMessages); Console.WriteLine($"[ASSISTANT]:"); Console.WriteLine($"{chatCompletion.Content[0].Text}");Ersetzen Sie
YOUR_IMAGE_URLdurch die öffentlich zugängliche URL des Bildes, das Sie hochladen möchten.Führen Sie die Anwendung mit dem Befehl
dotnet runoder der Schaltfläche „Ausführen“ oben in Visual Studio aus:dotnet run
Output
Die Ausgabe der Anwendung ist eine Beschreibung des Bilds, das Sie in der imageUri Variablen angegeben haben. Der Assistent analysiert das Bild und stellt basierend auf seinem Inhalt eine detaillierte Beschreibung bereit.
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.
Verwandte Inhalte
- Erste Schritte mit multimodalen Vision-Chat-Apps mithilfe der KI-App-Vorlage von Azure OpenAI
- Weitere Informationen zu diesen APIs finden Sie in der Schrittanleitung für Modelle mit Vision-Unterstützung.
- Häufig gestellte Fragen zu GPT-4 Turbo mit Vision
- API-Referenz zu GPT-4 Turbo mit Vision