Szybki start: zamiana mowy na tekst za pomocą modelu szeptu platformy Azure OpenAI
W tym przewodniku Szybki start wyjaśniono, jak używać modelu Szeptu Usługi Azure OpenAI na potrzeby konwersji mowy na tekst. Model Szeptu może transkrybować mowę ludzką w wielu językach i może również tłumaczyć inne języki na język angielski.
Limit rozmiaru pliku dla modelu Whisper wynosi 25 MB. Jeśli musisz przetranskrybować plik większy niż 25 MB, możesz użyć interfejsu API transkrypcji wsadowej usługi Azure AI Speech.
Wymagania wstępne
Subskrypcja platformy Azure — utwórz bezpłatnie.
Zasób usługi Azure OpenAI wdrożony w obsługiwanym regionie i z obsługiwanym modelem.
Upewnij się, że masz przypisaną co najmniej rolę Współautor usług Cognitive Services dla zasobu Azure OpenAI.
Pobierz przykładowe dane z usługi GitHub , jeśli nie masz własnych danych.
Konfiguruj
Pobieranie klucza i punktu końcowego
Aby pomyślnie wykonać wywołanie usługi Azure OpenAI, potrzebujesz punktu końcowego i klucza.
Nazwa zmiennej | Wartość |
---|---|
AZURE_OPENAI_ENDPOINT |
Punkt końcowy usługi można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu w witrynie Azure Portal. Możesz też znaleźć punkt końcowy za pośrednictwem strony Wdrożenia w usłudze Azure AI Studio. Przykładowy punkt końcowy to: https://docs-test-001.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Możesz użyć wartości KEY1 lub KEY2 . |
Przejdź do zasobu w witrynie Azure Portal. Punkt końcowy i klucze można znaleźć w sekcji Zarządzanie zasobami. Skopiuj punkt końcowy i klucz dostępu, ponieważ będzie potrzebny zarówno do uwierzytelniania wywołań interfejsu API. Możesz użyć wartości KEY1
lub KEY2
. Zawsze posiadanie dwóch kluczy umożliwia bezpieczne obracanie i ponowne generowanie kluczy bez powodowania zakłóceń usługi.
Zmienne środowiskowe
Tworzenie i przypisywanie trwałych zmiennych środowiskowych dla klucza i punktu końcowego.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Tworzenie żądania i odpowiedzi interfejsu API REST
W powłoce bash uruchom następujące polecenie. Musisz zastąpić YourDeploymentName
ciąg nazwą wdrożenia wybraną podczas wdrażania modelu Whisper. Nazwa wdrożenia nie musi być taka sama jak nazwa modelu. Wprowadzenie nazwy modelu powoduje błąd, chyba że wybrano nazwę wdrożenia identyczną z bazową nazwą modelu.
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"
Pierwszy wiersz poprzedniego polecenia z przykładowym punktem końcowym wygląda następująco:
curl https://aoai-docs.openai.azure.com/openai/deployments/{YourDeploymentName}/audio/transcriptions?api-version=2024-02-01 \
Przykładowe pliki audio, takie jak wikipediaOcelot.wav, można pobrać z repozytorium zestawu SDK usługi Mowa usługi Azure AI w witrynie GitHub.
Ważne
W przypadku środowiska produkcyjnego przechowywanie poświadczeń i uzyskiwanie do nich dostępu przy użyciu bezpiecznej metody, takiej jak usługa Azure Key Vault. Aby uzyskać więcej informacji na temat zabezpieczeń poświadczeń, zobacz Zabezpieczenia usług Azure AI.
Wyjście
{"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."}
Wymagania wstępne
- Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
- Zasób usługi Azure OpenAI z modelem Whisper wdrożonym w obsługiwanym regionie. Aby uzyskać więcej informacji, zobacz Tworzenie zasobu i wdrażanie modelu za pomocą usługi Azure OpenAI.
- Środowisko Python w wersji 3.8 lub nowszej
- Następująca biblioteka języka Python: system operacyjny
Konfiguruj
Pobieranie klucza i punktu końcowego
Aby pomyślnie wykonać wywołanie usługi Azure OpenAI, potrzebujesz punktu końcowego i klucza.
Nazwa zmiennej | Wartość |
---|---|
AZURE_OPENAI_ENDPOINT |
Punkt końcowy usługi można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu w witrynie Azure Portal. Możesz też znaleźć punkt końcowy za pośrednictwem strony Wdrożenia w usłudze Azure AI Studio. Przykładowy punkt końcowy to: https://docs-test-001.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Możesz użyć wartości KEY1 lub KEY2 . |
Przejdź do zasobu w witrynie Azure Portal. Punkt końcowy i klucze można znaleźć w sekcji Zarządzanie zasobami. Skopiuj punkt końcowy i klucz dostępu, ponieważ będzie potrzebny zarówno do uwierzytelniania wywołań interfejsu API. Możesz użyć wartości KEY1
lub KEY2
. Zawsze posiadanie dwóch kluczy umożliwia bezpieczne obracanie i ponowne generowanie kluczy bez powodowania zakłóceń usługi.
Zmienne środowiskowe
Tworzenie i przypisywanie trwałych zmiennych środowiskowych dla klucza i punktu końcowego.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Zalecane jest uwierzytelnianie bez hasła
W przypadku uwierzytelniania bez hasła należy wykonać następujące kroki:
@azure/identity
Użyj pakietu.Cognitive Services User
Przypisz rolę do konta użytkownika. Można to zrobić w witrynie Azure Portal w obszarze Kontrola dostępu (IAM)>Dodawanie przypisania roli.- Zaloguj się przy użyciu interfejsu wiersza polecenia platformy Azure, takiego jak
az login
.
Tworzenie środowiska języka Python
Zainstaluj bibliotekę klienta języka Python openAI za pomocą następujących elementów:
pip install openai
Tworzenie aplikacji w języku Python
Utwórz nowy plik w języku Python o nazwie quickstart.py. Następnie otwórz go w preferowanym edytorze lub środowisku IDE.
Zastąp zawartość quickstart.py poniższym kodem. Zmodyfikuj kod, aby dodać nazwę wdrożenia:
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)
Uruchom aplikację przy użyciu python
polecenia w pliku Szybki start:
python quickstart.py
Przykładowe pliki audio, takie jak wikipediaOcelot.wav, można pobrać z repozytorium zestawu SDK usługi Mowa usługi Azure AI w witrynie GitHub.
Ważne
W przypadku środowiska produkcyjnego przechowywanie poświadczeń i uzyskiwanie do nich dostępu przy użyciu bezpiecznej metody, takiej jak usługa Azure Key Vault. Aby uzyskać więcej informacji na temat zabezpieczeń poświadczeń, zobacz Zabezpieczenia usług Azure AI.
Wyjście
{"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."}
Wymagania wstępne
- Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
- Zasób usługi Azure OpenAI z modelem Whisper wdrożonym w obsługiwanym regionie. Aby uzyskać więcej informacji, zobacz Tworzenie zasobu i wdrażanie modelu za pomocą usługi Azure OpenAI.
- Zestaw .NET 8.0 SDK
Konfiguruj
Pobieranie klucza i punktu końcowego
Aby pomyślnie wykonać wywołanie usługi Azure OpenAI, potrzebujesz punktu końcowego i klucza.
Nazwa zmiennej | Wartość |
---|---|
AZURE_OPENAI_ENDPOINT |
Punkt końcowy usługi można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu w witrynie Azure Portal. Możesz też znaleźć punkt końcowy za pośrednictwem strony Wdrożenia w usłudze Azure AI Studio. Przykładowy punkt końcowy to: https://docs-test-001.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Możesz użyć wartości KEY1 lub KEY2 . |
Przejdź do zasobu w witrynie Azure Portal. Punkt końcowy i klucze można znaleźć w sekcji Zarządzanie zasobami. Skopiuj punkt końcowy i klucz dostępu, ponieważ będzie potrzebny zarówno do uwierzytelniania wywołań interfejsu API. Możesz użyć wartości KEY1
lub KEY2
. Zawsze posiadanie dwóch kluczy umożliwia bezpieczne obracanie i ponowne generowanie kluczy bez powodowania zakłóceń usługi.
Tworzenie aplikacji .NET
Utwórz aplikację platformy .NET przy użyciu
dotnet new
polecenia :dotnet new console -n OpenAIWhisper
Przejdź do katalogu nowej aplikacji:
cd OpenAIWhisper
Zainstaluj bibliotekę
Azure.OpenAI
klienta:dotnet add package Azure.AI.OpenAI
Zalecane jest uwierzytelnianie bez hasła
Uwierzytelnianie bez hasła jest bezpieczniejsze niż alternatywy oparte na kluczach i jest zalecanym podejściem do nawiązywania połączenia z usługami platformy Azure. Jeśli zdecydujesz się używać uwierzytelniania bez hasła, musisz wykonać następujące czynności:
Dodaj pakiet
Azure.Identity
.dotnet add package Azure.Identity
Cognitive Services User
Przypisz rolę do konta użytkownika. Można to zrobić w witrynie Azure Portal w zasobie OpenAI w obszarze Kontrola dostępu (IAM)>Dodawanie przypisania roli.Zaloguj się do platformy Azure przy użyciu programu Visual Studio lub interfejsu wiersza polecenia platformy Azure za pomocą polecenia
az login
.
Aktualizowanie kodu aplikacji
Zastąp zawartość
program.cs
poniższym kodem i zaktualizuj wartości symboli zastępczych własnymi.Uwaga
Przykładowe pliki audio, takie jak wikipediaOcelot.wav, można pobrać z repozytorium zestawu SDK usługi Mowa usługi Azure AI w witrynie GitHub.
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); }
Ważne
W przypadku środowiska produkcyjnego przechowywanie poświadczeń i uzyskiwanie do nich dostępu przy użyciu bezpiecznej metody, takiej jak usługa Azure Key Vault. Aby uzyskać więcej informacji na temat zabezpieczeń poświadczeń, zobacz Zabezpieczenia usług Azure AI.
Uruchom aplikację przy użyciu
dotnet run
polecenia lub przycisku Uruchom w górnej części programu Visual Studio:dotnet run
Jeśli używasz przykładowego pliku audio, w konsoli powinien zostać wyświetlony następujący tekst:
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...
Przykłady pakietu kodu źródłowego | (npm)Samples |
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Wersje LTS Node.js
- Interfejs wiersza polecenia platformy Azure używany do uwierzytelniania bez hasła w lokalnym środowisku projektowym, utwórz niezbędny kontekst, logując się przy użyciu interfejsu wiersza polecenia platformy Azure.
- Zasób usługi Azure OpenAI utworzony w obsługiwanym regionie (zobacz Dostępność regionów). Aby uzyskać więcej informacji, zobacz Tworzenie zasobu i wdrażanie modelu za pomocą usługi Azure OpenAI.
Konfiguruj
Pobieranie klucza i punktu końcowego
Aby pomyślnie wykonać wywołanie usługi Azure OpenAI, potrzebujesz punktu końcowego i klucza.
Nazwa zmiennej | Wartość |
---|---|
AZURE_OPENAI_ENDPOINT |
Punkt końcowy usługi można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu w witrynie Azure Portal. Możesz też znaleźć punkt końcowy za pośrednictwem strony Wdrożenia w usłudze Azure AI Studio. Przykładowy punkt końcowy to: https://docs-test-001.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Możesz użyć wartości KEY1 lub KEY2 . |
Przejdź do zasobu w witrynie Azure Portal. Punkt końcowy i klucze można znaleźć w sekcji Zarządzanie zasobami. Skopiuj punkt końcowy i klucz dostępu, ponieważ będzie potrzebny zarówno do uwierzytelniania wywołań interfejsu API. Możesz użyć wartości KEY1
lub KEY2
. Zawsze posiadanie dwóch kluczy umożliwia bezpieczne obracanie i ponowne generowanie kluczy bez powodowania zakłóceń usługi.
Zmienne środowiskowe
Tworzenie i przypisywanie trwałych zmiennych środowiskowych dla klucza i punktu końcowego.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Zalecane jest uwierzytelnianie identyfikatora Entra firmy Microsoft
W przypadku uwierzytelniania bez hasła należy wykonać następujące kroki:
@azure/identity
Użyj pakietu.Cognitive Services User
Przypisz rolę do konta użytkownika. Można to zrobić w witrynie Azure Portal w obszarze Kontrola dostępu (IAM)>Dodawanie przypisania roli.- Zaloguj się przy użyciu interfejsu wiersza polecenia platformy Azure, takiego jak
az login
.
Tworzenie aplikacji Node
W oknie konsoli (na przykład cmd, PowerShell lub Bash) utwórz nowy katalog dla aplikacji i przejdź do niego. Następnie uruchom polecenie , npm init
aby utworzyć aplikację węzła z plikiem package.json .
npm init
Instalowanie biblioteki klienta
Zainstaluj biblioteki klienckie za pomocą następujących funkcji:
npm install openai @azure/identity
Plik package.json aplikacji zostanie zaktualizowany o zależności.
Tworzenie przykładowej aplikacji
Utwórz nowy plik o nazwie Whisper.js i otwórz go w preferowanym edytorze kodu. Skopiuj następujący kod do pliku 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); });
Uruchom skrypt za pomocą następującego polecenia:
node Whisper.js
Przykładowe pliki audio, takie jak wikipediaOcelot.wav, można pobrać z repozytorium zestawu SDK usługi Mowa usługi Azure AI w witrynie GitHub.
Ważne
W przypadku środowiska produkcyjnego przechowywanie poświadczeń i uzyskiwanie do nich dostępu przy użyciu bezpiecznej metody, takiej jak usługa Azure Key Vault. Aby uzyskać więcej informacji na temat zabezpieczeń poświadczeń, zobacz Zabezpieczenia usług Azure AI.
Wyjście
{"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."}
Przykłady pakietu kodu źródłowego | (npm)Samples |
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Wersje LTS Node.js
- TypeScript
- Interfejs wiersza polecenia platformy Azure używany do uwierzytelniania bez hasła w lokalnym środowisku projektowym, utwórz niezbędny kontekst, logując się przy użyciu interfejsu wiersza polecenia platformy Azure.
- Zasób usługi Azure OpenAI utworzony w obsługiwanym regionie (zobacz Dostępność regionów). Aby uzyskać więcej informacji, zobacz Tworzenie zasobu i wdrażanie modelu za pomocą usługi Azure OpenAI.
Konfiguruj
Pobieranie klucza i punktu końcowego
Aby pomyślnie wykonać wywołanie usługi Azure OpenAI, potrzebujesz punktu końcowego i klucza.
Nazwa zmiennej | Wartość |
---|---|
AZURE_OPENAI_ENDPOINT |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Alternatywnie możesz znaleźć wartość w widoku kodu placu zabaw>usługi Azure OpenAI Studio>. Przykładowy punkt końcowy to: https://aoai-docs.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Możesz użyć wartości KEY1 lub KEY2 . |
Przejdź do zasobu w witrynie Azure Portal. Punkt końcowy i klucze można znaleźć w sekcji Zarządzanie zasobami. Skopiuj punkt końcowy i klucz dostępu, ponieważ będzie potrzebny zarówno do uwierzytelniania wywołań interfejsu API. Możesz użyć wartości KEY1
lub KEY2
. Zawsze posiadanie dwóch kluczy umożliwia bezpieczne obracanie i ponowne generowanie kluczy bez powodowania zakłóceń usługi.
Zmienne środowiskowe
Tworzenie i przypisywanie trwałych zmiennych środowiskowych dla klucza i punktu końcowego.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Zalecane jest uwierzytelnianie identyfikatora Entra firmy Microsoft
W przypadku uwierzytelniania bez hasła należy wykonać następujące kroki:
@azure/identity
Użyj pakietu.Cognitive Services User
Przypisz rolę do konta użytkownika. Można to zrobić w witrynie Azure Portal w obszarze Kontrola dostępu (IAM)>Dodawanie przypisania roli.- Zaloguj się przy użyciu interfejsu wiersza polecenia platformy Azure, takiego jak
az login
.
Tworzenie aplikacji Node
W oknie konsoli (na przykład cmd, PowerShell lub Bash) utwórz nowy katalog dla aplikacji i przejdź do niego. Następnie uruchom polecenie , npm init
aby utworzyć aplikację węzła z plikiem package.json .
npm init
Instalowanie biblioteki klienta
Zainstaluj biblioteki klienckie za pomocą następujących funkcji:
npm install openai @azure/identity
Plik package.json aplikacji zostanie zaktualizowany o zależności.
Tworzenie przykładowej aplikacji
Utwórz nowy plik o nazwie Whisper.ts i otwórz go w preferowanym edytorze kodu. Skopiuj następujący kod do pliku 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); });
Skompiluj aplikację za pomocą następującego polecenia:
tsc
Uruchom aplikację za pomocą następującego polecenia:
node Whisper.js
Przykładowe pliki audio, takie jak wikipediaOcelot.wav, można pobrać z repozytorium zestawu SDK usługi Mowa usługi Azure AI w witrynie GitHub.
Ważne
W przypadku środowiska produkcyjnego przechowywanie poświadczeń i uzyskiwanie do nich dostępu przy użyciu bezpiecznej metody, takiej jak usługa Azure Key Vault. Aby uzyskać więcej informacji na temat zabezpieczeń poświadczeń, zobacz Zabezpieczenia usług Azure AI.
Wyjście
{"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."}
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Możesz użyć najnowszej wersji, programu PowerShell 7 lub programu Windows PowerShell 5.1.
- Zasób usługi Azure OpenAI z wdrożonym modelem. Aby uzyskać więcej informacji na temat modeli wdrażania, zobacz przewodnik po modelach wdrażania).
- Zasób usługi Azure OpenAI z wdrożonym modelem
gpt-35-turbo
lubgpt-4
. Aby uzyskać więcej informacji na temat modeli wdrażania, zobacz przewodnik po modelach wdrażania).
Konfiguruj
Pobieranie klucza i punktu końcowego
Aby pomyślnie wykonać wywołanie usługi Azure OpenAI, potrzebujesz punktu końcowego i klucza.
Nazwa zmiennej | Wartość |
---|---|
AZURE_OPENAI_ENDPOINT |
Punkt końcowy usługi można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu w witrynie Azure Portal. Możesz też znaleźć punkt końcowy za pośrednictwem strony Wdrożenia w usłudze Azure AI Studio. Przykładowy punkt końcowy to: https://docs-test-001.openai.azure.com/ . |
AZURE_OPENAI_API_KEY |
Tę wartość można znaleźć w sekcji Klucze i punkt końcowy podczas badania zasobu z poziomu witryny Azure Portal. Możesz użyć wartości KEY1 lub KEY2 . |
Przejdź do zasobu w witrynie Azure Portal. Punkt końcowy i klucze można znaleźć w sekcji Zarządzanie zasobami. Skopiuj punkt końcowy i klucz dostępu, ponieważ będzie potrzebny zarówno do uwierzytelniania wywołań interfejsu API. Możesz użyć wartości KEY1
lub KEY2
. Zawsze posiadanie dwóch kluczy umożliwia bezpieczne obracanie i ponowne generowanie kluczy bez powodowania zakłóceń usługi.
Zmienne środowiskowe
Tworzenie i przypisywanie trwałych zmiennych środowiskowych dla klucza i punktu końcowego.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Tworzenie aplikacji programu PowerShell
Uruchom następujące polecenie. Musisz zastąpić YourDeploymentName
ciąg nazwą wdrożenia wybraną podczas wdrażania modelu Whisper. Nazwa wdrożenia nie musi być taka sama jak nazwa modelu. Wprowadzenie nazwy modelu powoduje błąd, chyba że wybrano nazwę wdrożenia identyczną z bazową nazwą modelu.
# 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
Przykładowe pliki audio, takie jak wikipediaOcelot.wav, można pobrać z repozytorium zestawu SDK usługi Mowa usługi Azure AI w witrynie GitHub.
Ważne
W środowisku produkcyjnym zapisz poświadczenia i uzyskaj do nich dostęp przy użyciu bezpiecznej metody, takiej jak Zarządzanie wpisami tajnymi programu PowerShell za pomocą usługi Azure Key Vault. Aby uzyskać więcej informacji na temat zabezpieczeń poświadczeń, zobacz Zabezpieczenia usług Azure AI.
Wyjście
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.
Czyszczenie zasobów
Jeśli chcesz wyczyścić i usunąć zasób usługi Azure OpenAI, możesz usunąć zasób. Przed usunięciem zasobu należy najpierw usunąć wszystkie wdrożone modele.
Następne kroki
- Aby dowiedzieć się, jak konwertować dane audio na tekst w partiach, zobacz Tworzenie transkrypcji wsadowej.
- Aby uzyskać więcej przykładów, zapoznaj się z repozytorium GitHub przykładów usługi Azure OpenAI.