Schnellstart: Spracherkennung mit dem Whisper-Modell von Azure OpenAI

In diesem Schnellstart wird erläutert, wie Sie das Whisper-Modell von Azure OpenAI für die Spracherkennung verwenden. Das Whisper-Modell kann die menschliche Sprache in zahlreichen Sprachen transkribieren und auch andere Sprachen ins Englische übersetzen.

Die Dateigrößenbegrenzung für das Whisper-Modell beträgt 25 MB. Wenn Sie eine Datei mit einer Größe von mehr als 25 MB transkribieren müssen, können Sie die Azure KI Speech-API für die Batchtranskription verwenden.

Voraussetzungen

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.

Screenshot der Benutzeroberfläche mit der Übersicht über eine Azure OpenAI-Ressource im Azure-Portal, in dem die Speicherorte für Endpunkt und Zugriffsschlüssel rot umrandet sind

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 REST-API-Anforderung und einer Antwort

Führen Sie in der Bash-Shell die folgenden Befehle aus. Sie müssen YourDeploymentName durch den Bereitstellungsnamen ersetzen, den Sie bei der Bereitstellung des Whisper-Modells ausgewählt haben. Der Bereitstellungsname entspricht nicht unbedingt dem Modellnamen. Die Eingabe des Modellnamens führt zu einem Fehler, sofern Sie keinen Bereitstellungsnamen ausgewählt haben, der mit dem zugrunde liegenden Modellnamen identisch ist.

curl $AZURE_OPENAI_ENDPOINT/openai/deployments/YourDeploymentName/audio/transcriptions?api-version=2024-02-01 \
 -H "api-key: $AZURE_OPENAI_API_KEY" \
 -H "Content-Type: multipart/form-data" \
 -F file="@./wikipediaOcelot.wav"

Die erste Zeile Ihres vorherigen Befehls mit einem Beispielendpunkt würde wie folgt aussehen:

curl https://aoai-docs.openai.azure.com/openai/deployments/{YourDeploymentName}/audio/transcriptions?api-version=2024-02-01 \

Sie können Beispieldateien, wie z. B. wikipediaOcelot.wav, aus dem Azure KI Speech SDK Repository auf GitHub herunterladen.

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.

Output

{"text":"The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States, Mexico, and Central and South America. This medium-sized cat is characterized by solid black spots and streaks on its coat, round ears, and white neck and undersides. It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters 16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758. Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing, leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum, and lagomorphs."}

Voraussetzungen

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.

Screenshot der Benutzeroberfläche mit der Übersicht über eine Azure OpenAI-Ressource im Azure-Portal, in dem die Speicherorte für Endpunkt und Zugriffsschlüssel rot umrandet sind

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" 

Für die kennwortlose Authentifizierung müssen Sie die folgenden Schritte ausführen:

  1. Verwenden Sie das @azure/identity-Paket.
  2. Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Navigieren Sie hierzu im Azure-Portal zu Zugriffssteuerung (IAM)>Rollenzuweisungen hinzufügen.
  3. Melden Sie sich mit der Azure CLI an (z. B. az login).

Erstellen einer Python-Umgebung

Installieren Sie die OpenAI Python-Clientbibliothek mit:

pip install openai

Erstellen der Python-App

  1. Erstellen Sie eine neue Python-Datei namens quickstart.py. Öffnen Sie diese anschließend in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE.

  2. Ersetzen Sie den Inhalt von quickstart.py durch den folgenden Code. Ändern Sie den Code, um Ihren Bereitstellungsnamen hinzuzufügen:

    import os
    from openai import AzureOpenAI
        
    client = AzureOpenAI(
        api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
        api_version="2024-02-01",
        azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )
    
    deployment_id = "YOUR-DEPLOYMENT-NAME-HERE" #This will correspond to the custom name you chose for your deployment when you deployed a model."
    audio_test_file = "./wikipediaOcelot.wav"
    
    result = client.audio.transcriptions.create(
        file=open(audio_test_file, "rb"),            
        model=deployment_id
    )
    
    print(result)

Führen Sie die Anwendung mit dem Befehl python für die Schnellstartdatei aus:

python quickstart.py

Sie können Beispieldateien, wie z. B. wikipediaOcelot.wav, aus dem Azure KI Speech SDK Repository auf GitHub herunterladen.

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.

Output

{"text":"The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States, Mexico, and Central and South America. This medium-sized cat is characterized by solid black spots and streaks on its coat, round ears, and white neck and undersides. It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters 16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758. Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing, leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum, and lagomorphs."}

Voraussetzungen

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.

Screenshot der Benutzeroberfläche mit der Übersicht über eine Azure OpenAI-Ressource im Azure-Portal, in dem die Speicherorte für Endpunkt und Zugriffsschlüssel rot umrandet sind

Erstellen der .NET App

  1. Erstellen Sie eine .NET-App mit dem Befehl dotnet new:

    dotnet new console -n OpenAIWhisper
    
  2. Wechseln Sie in das Verzeichnis der neuen App:

    cd OpenAIWhisper
    
  3. Installieren der Azure.OpenAI Clientbibliothek:

    dotnet add package Azure.AI.OpenAI
    

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:

  1. Fügen Sie das Paket Azure.Identity hinzu.

    dotnet add package Azure.Identity
    
  2. 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.

  3. Melden Sie sich mit Visual Studio oder der Azure CLI über az login in Azure an.

Aktualisieren des App-Codes

  1. Ersetzen Sie den Inhalt von program.cs durch den folgenden Code, und aktualisieren Sie die Platzhalterwerte durch Ihren eigenen.

    Hinweis

    Sie können Beispieldateien, wie z. B. wikipediaOcelot.wav, aus dem Azure KI Speech SDK Repository auf GitHub herunterladen.

    using Azure;
    using Azure.AI.OpenAI;
    using Azure.Identity; // Required for Passwordless auth
    
    var endpoint = new Uri("YOUR_OPENAI_ENDPOINT");
    var credentials = new AzureKeyCredential("YOUR_OPENAI_KEY");
    // var credentials = new DefaultAzureCredential(); // Use this line for Passwordless auth
    var deploymentName = "whisper"; // Default deployment name, update with your own if necessary
    var audioFilePath = "YOUR_AUDIO_FILE_PATH";
    
    var openAIClient = new AzureOpenAIClient(endpoint, credentials);
    
    var audioClient = openAIClient.GetAudioClient(deploymentName);
    
    var result = await audioClient.TranscribeAudioAsync(audioFilePath);
    
    Console.WriteLine("Transcribed text:");
    foreach (var item in result.Value.Text)
    {
        Console.Write(item);
    }
    

    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.

  2. Führen Sie die Anwendung mit dem Befehl dotnet run oder der Schaltfläche „Ausführen“ oben in Visual Studio aus:

    dotnet run
    

    Wenn Sie die Beispielaudiodatei verwenden, sollte der folgende Text in der Konsole angezeigt werden:

    The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States, 
    Mexico, and Central and South America. This medium-sized cat is characterized by solid 
    black spots and streaks on its coat, round ears...
    

Quellcode | Paket (npm) | Beispiele

Voraussetzungen

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.

Screenshot der Benutzeroberfläche mit der Übersicht über eine Azure OpenAI-Ressource im Azure-Portal, in dem die Speicherorte für Endpunkt und Zugriffsschlüssel rot umrandet sind

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" 

Für die kennwortlose Authentifizierung müssen Sie die folgenden Schritte ausführen:

  1. Verwenden Sie das @azure/identity-Paket.
  2. Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Navigieren Sie hierzu im Azure-Portal zu Zugriffssteuerung (IAM)>Rollenzuweisungen hinzufügen.
  3. Melden Sie sich mit der Azure CLI an (z. B. az login).

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 Beispielanwendung

  1. Erstellen Sie eine neue Datei namens Whisper.js, und öffnen Sie sie in Ihrem bevorzugten Code-Editor. Kopieren Sie den folgenden Code in die Datei Whisper.js:

    const { createReadStream } = require("fs");
    const { AzureOpenAI } = require("openai");
    const { DefaultAzureCredential, getBearerTokenProvider } = require("@azure/identity");
    
    // You will need to set these environment variables or edit the following values
    const audioFilePath = "<audio file path>";
    const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = "2024-08-01-preview";
    const deploymentName = "whisper";
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient() {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    
    export async function main() {
      console.log("== Transcribe Audio Sample ==");
    
      const client = getClient();
      const result = await client.audio.transcriptions.create({
        model: "",
        file: createReadStream(audioFilePath),
      });
    
      console.log(`Transcription: ${result.text}`);
    }
    
    main().catch((err) => {
      console.error("The sample encountered an error:", err);
    });
    
  2. Führen Sie das Skript mit dem folgenden Befehl aus:

    node Whisper.js
    

Sie können Beispieldateien, wie z. B. wikipediaOcelot.wav, aus dem Azure KI Speech SDK Repository auf GitHub herunterladen.

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.

Output

{"text":"The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States, Mexico, and Central and South America. This medium-sized cat is characterized by solid black spots and streaks on its coat, round ears, and white neck and undersides. It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters 16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758. Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing, leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum, and lagomorphs."}

Quellcode | Paket (npm) | Beispiele

Voraussetzungen

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 Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen. Alternativ dazu finden Sie den Wert auch unter Azure OpenAI Studio>Playground>Codeansicht. Ein Beispielendpunkt ist https://aoai-docs.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.

Screenshot der Benutzeroberfläche mit der Übersicht über eine Azure OpenAI-Ressource im Azure-Portal, in dem die Speicherorte für Endpunkt und Zugriffsschlüssel rot umrandet sind

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" 

Für die kennwortlose Authentifizierung müssen Sie die folgenden Schritte ausführen:

  1. Verwenden Sie das @azure/identity-Paket.
  2. Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Navigieren Sie hierzu im Azure-Portal zu Zugriffssteuerung (IAM)>Rollenzuweisungen hinzufügen.
  3. Melden Sie sich mit der Azure CLI an (z. B. az login).

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 Beispielanwendung

  1. Erstellen Sie eine neue Datei namens Whisper.ts, und öffnen Sie sie in Ihrem bevorzugten Code-Editor. Kopieren Sie den folgenden Code in die Datei Whisper.ts:

    import { createReadStream } from "fs";
    import { AzureOpenAI } from "openai";
    import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity";
    
    // You will need to set these environment variables or edit the following values
    const audioFilePath = "<audio file path>";
    const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = "2024-08-01-preview";
    const deploymentName = "whisper";
    
    // 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,
      });
    }
    
    export async function main() {
      console.log("== Transcribe Audio Sample ==");
    
      const client = getClient();
      const result = await client.audio.transcriptions.create({
        model: "",
        file: createReadStream(audioFilePath),
      });
    
      console.log(`Transcription: ${result.text}`);
    }
    
    main().catch((err) => {
      console.error("The sample encountered an error:", err);
    });
    
  2. Erstellen Sie die Anwendung mit dem folgenden Befehl:

    tsc
    
  3. Führen Sie die Anwendung mit dem folgenden Befehl aus:

    node Whisper.js
    

Sie können Beispieldateien, wie z. B. wikipediaOcelot.wav, aus dem Azure KI Speech SDK Repository auf GitHub herunterladen.

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.

Output

{"text":"The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States, Mexico, and Central and South America. This medium-sized cat is characterized by solid black spots and streaks on its coat, round ears, and white neck and undersides. It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters 16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758. Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing, leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum, and lagomorphs."}

Voraussetzungen

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.

Screenshot der Benutzeroberfläche mit der Übersicht über eine Azure OpenAI-Ressource im Azure-Portal, in dem die Speicherorte für Endpunkt und Zugriffsschlüssel rot umrandet sind

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 PowerShell-App

Führen Sie den folgenden Befehl aus. Sie müssen YourDeploymentName durch den Bereitstellungsnamen ersetzen, den Sie bei der Bereitstellung des Whisper-Modells ausgewählt haben. Der Bereitstellungsname entspricht nicht unbedingt dem Modellnamen. Die Eingabe des Modellnamens führt zu einem Fehler, sofern Sie keinen Bereitstellungsnamen ausgewählt haben, der mit dem zugrunde liegenden Modellnamen identisch ist.

# Azure OpenAI metadata variables
$openai = @{
    api_key     = $Env:AZURE_OPENAI_API_KEY
    api_base    = $Env:AZURE_OPENAI_ENDPOINT # your endpoint should look like the following https://YOUR_RESOURCE_NAME.openai.azure.com/
    api_version = '2024-02-01' # this may change in the future
    name        = 'YourDeploymentName' #This will correspond to the custom name you chose for your deployment when you deployed a model.
}

# Header for authentication
$headers = [ordered]@{
    'api-key' = $openai.api_key
}

$form = @{ file = get-item -path './wikipediaOcelot.wav' }

# Send a completion call to generate an answer
$url = "$($openai.api_base)/openai/deployments/$($openai.name)/audio/transcriptions?api-version=$($openai.api_version)"

$response = Invoke-RestMethod -Uri $url -Headers $headers -Form $form -Method Post -ContentType 'multipart/form-data'
return $response.text

Sie können Beispieldateien, wie z. B. wikipediaOcelot.wav, aus dem Azure KI Speech SDK Repository auf GitHub herunterladen.

Wichtig

Verwenden Sie in der Produktion eine sichere Speicher- und Zugriffsmethode für Ihre Anmeldeinformationen (beispielsweise die PowerShell Geheimnisverwaltung Azure Key Vault). Weitere Informationen zur Sicherheit von Anmeldeinformationen finden Sie unter Azure KI Services-Sicherheit.

Output

The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States, Mexico, and Central and South America. This medium-sized cat is characterized by solid black spots and streaks on its coat, round ears, and white neck and undersides. It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters 16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758. Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing, leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum, and lagomorphs.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource löschen. Vor dem Löschen der Ressource müssen Sie zunächst alle bereitgestellten Modelle löschen.

Nächste Schritte