Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In questo avvio rapido, si prova la conversione della voce in testo in tempo reale in Microsoft Foundry.
Prerequisiti
- Una sottoscrizione di Azure.
- Progetto Foundry. Se è necessario creare un progetto, vedere Creare un progetto Microsoft Foundry.
Provare la conversione da voce a testo in tempo reale
- Accedere a Microsoft Foundry. Assicurarsi che l'interruttore New Foundry sia attivato. Questi passaggi fanno riferimento a Foundry (nuovo).These steps refer to Foundry (new).
- Selezionare Compila nel menu in alto a destra.
- Selezionare Modelli nel riquadro sinistro.
- La scheda Servizi di intelligenza artificiale mostra i modelli Foundry che possono essere usati direttamente nel Portale Foundry. Selezionare Voce di Azure - Riconoscimento vocale per aprire il playground di Riconoscimento vocale.
- Facoltativamente, usare la sezione Parametri per modificare l'attività, la lingua, i criteri di volgarità e altre impostazioni. È anche possibile aggiungere istruzioni speciali per LLM.
- Usare la sezione Carica file per selezionare il file audio. Selezionare quindi Avvia.
- Visualizza l'output della trascrizione nella scheda Trascrizione. Opzionalmente, visualizza l'output della risposta API non elaborata nella scheda JSON.
- Passare alla scheda Codice per ottenere il codice di esempio per l'uso della funzionalità di riconoscimento vocale nell'applicazione.
Documentazione di riferimento | Pacchetto (NuGet) | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa di Servizi di intelligenza artificiale per il riconoscimento vocale nella portale di Azure.
- Ottenere la chiave e l'endpoint della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
Configurare l'ambiente
Speech SDK è disponibile come pacchetto NuGet e implementa .NET Standard 2.0. L'SDK Voce verrà installato più avanti in questa guida. Per altri requisiti, vedere Installare Speech SDK.
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'endpoint della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituire your-endpoint con uno degli endpoint per la risorsa.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere il parlato da un microfono
Suggerimento
Provare Azure Speech in Foundry Tools Toolkit per compilare ed eseguire facilmente esempi in Visual Studio Code.
Seguire questi passaggi per creare un'applicazione console e installare Speech SDK.
Aprire una finestra del prompt dei comandi nella cartella in cui si desidera il nuovo progetto. Eseguire questo comando per creare un'applicazione console con l'interfaccia della riga di comando di .NET.
dotnet new consoleQuesto comando crea il file Program.cs nella directory del progetto.
Installare Speech SDK nel nuovo progetto con l'interfaccia della riga di comando di .NET.
dotnet add package Microsoft.CognitiveServices.SpeechSostituire il contenuto di Program.cs con il codice seguente:
using System; using System.IO; using System.Threading.Tasks; using Microsoft.CognitiveServices.Speech; using Microsoft.CognitiveServices.Speech.Audio; class Program { // This example requires environment variables named "SPEECH_KEY" and "ENDPOINT" static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY"); static string endpoint = Environment.GetEnvironmentVariable("ENDPOINT"); static void OutputSpeechRecognitionResult(SpeechRecognitionResult speechRecognitionResult) { switch (speechRecognitionResult.Reason) { case ResultReason.RecognizedSpeech: Console.WriteLine($"RECOGNIZED: Text={speechRecognitionResult.Text}"); break; case ResultReason.NoMatch: Console.WriteLine($"NOMATCH: Speech could not be recognized."); break; case ResultReason.Canceled: var cancellation = CancellationDetails.FromResult(speechRecognitionResult); Console.WriteLine($"CANCELED: Reason={cancellation.Reason}"); if (cancellation.Reason == CancellationReason.Error) { Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}"); Console.WriteLine($"CANCELED: ErrorDetails={cancellation.ErrorDetails}"); Console.WriteLine($"CANCELED: Did you set the speech resource key and endpoint values?"); } break; } } async static Task Main(string[] args) { var speechConfig = SpeechConfig.FromEndpoint(speechKey, endpoint); speechConfig.SpeechRecognitionLanguage = "en-US"; using var audioConfig = AudioConfig.FromDefaultMicrophoneInput(); using var speechRecognizer = new SpeechRecognizer(speechConfig, audioConfig); Console.WriteLine("Speak into your microphone."); var speechRecognitionResult = await speechRecognizer.RecognizeOnceAsync(); OutputSpeechRecognitionResult(speechRecognitionResult); } }Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Eseguire la nuova applicazione console per avviare il riconoscimento vocale da microfono:
dotnet runImportante
Assicurati di impostare le
SPEECH_KEYeENDPOINTvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.Parlare al microfono quando richiesto. Il parlato deve essere mostrato come testo:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Osservazioni:
Ecco alcune altre considerazioni:
In questo esempio viene usata l'operazione
RecognizeOnceAsyncper trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.Per riconoscere il parlato da un file audio, usare
FromWavFileInputanzichéFromDefaultMicrophoneInput:using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");Per i file audio compressi, ad esempio MP4, installare GStreamer e usare
PullAudioInputStreamoPushAudioInputStream. Per altre informazioni vedere Come usare audio di input compresso.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Pacchetto (NuGet) | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa di Servizi di intelligenza artificiale per il riconoscimento vocale nella portale di Azure.
- Ottenere la chiave e l'endpoint della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
Configurare l'ambiente
Speech SDK è disponibile come pacchetto NuGet e implementa .NET Standard 2.0. L'SDK Voce verrà installato più avanti in questa guida. Per altri requisiti, vedere Installare Speech SDK.
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'endpoint della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituire your-endpoint con uno degli endpoint per la risorsa.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere il parlato da un microfono
Suggerimento
Provare Azure Speech in Foundry Tools Toolkit per compilare ed eseguire facilmente esempi in Visual Studio Code.
Seguire questi passaggi per creare un'applicazione console e installare Speech SDK.
Creare un nuovo progetto console C++ in Visual Studio Community con il nome
SpeechRecognition.Fare clic su Strumenti>Gestione Pacchetti NuGet>Console di Gestione pacchetti. Nella console di Gestione pacchetti, eseguire questo comando:
Install-Package Microsoft.CognitiveServices.SpeechSostituire il contenuto di
SpeechRecognition.cppcon il codice seguente:#include <iostream> #include <stdlib.h> #include <speechapi_cxx.h> using namespace Microsoft::CognitiveServices::Speech; using namespace Microsoft::CognitiveServices::Speech::Audio; std::string GetEnvironmentVariable(const char* name); int main() { // This example requires environment variables named "SPEECH_KEY" and "ENDPOINT" auto speechKey = GetEnvironmentVariable("SPEECH_KEY"); auto endpoint = GetEnvironmentVariable("ENDPOINT"); if ((size(speechKey) == 0) || (size(endpoint) == 0)) { std::cout << "Please set both SPEECH_KEY and ENDPOINT environment variables." << std::endl; return -1; } auto speechConfig = SpeechConfig::FromEndpoint(speechKey, endpoint); speechConfig->SetSpeechRecognitionLanguage("en-US"); auto audioConfig = AudioConfig::FromDefaultMicrophoneInput(); auto speechRecognizer = SpeechRecognizer::FromConfig(speechConfig, audioConfig); std::cout << "Speak into your microphone.\n"; auto result = speechRecognizer->RecognizeOnceAsync().get(); if (result->Reason == ResultReason::RecognizedSpeech) { std::cout << "RECOGNIZED: Text=" << result->Text << std::endl; } else if (result->Reason == ResultReason::NoMatch) { std::cout << "NOMATCH: Speech could not be recognized." << std::endl; } else if (result->Reason == ResultReason::Canceled) { auto cancellation = CancellationDetails::FromResult(result); std::cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl; if (cancellation->Reason == CancellationReason::Error) { std::cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl; std::cout << "CANCELED: ErrorDetails=" << cancellation->ErrorDetails << std::endl; std::cout << "CANCELED: Did you set the speech resource key and endpoint values?" << std::endl; } } } std::string GetEnvironmentVariable(const char* name) { #if defined(_MSC_VER) size_t requiredSize = 0; (void)getenv_s(&requiredSize, nullptr, 0, name); if (requiredSize == 0) { return ""; } auto buffer = std::make_unique<char[]>(requiredSize); (void)getenv_s(&requiredSize, buffer.get(), requiredSize, name); return buffer.get(); #else auto value = getenv(name); return value ? value : ""; #endif }Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Per avviare il riconoscimento vocale da un microfono, compilare ed eseguire la nuova applicazione console.
Importante
Assicurati di impostare le
SPEECH_KEYeENDPOINTvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.Parlare al microfono quando richiesto. Il parlato deve essere mostrato come testo:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Osservazioni:
Ecco alcune altre considerazioni:
In questo esempio viene usata l'operazione
RecognizeOnceAsyncper trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.Per riconoscere il parlato da un file audio, usare
FromWavFileInputanzichéFromDefaultMicrophoneInput:auto audioConfig = AudioConfig::FromWavFileInput("YourAudioFile.wav");Per i file audio compressi, ad esempio MP4, installare GStreamer e usare
PullAudioInputStreamoPushAudioInputStream. Per altre informazioni vedere Come usare audio di input compresso.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Pacchetto (Go) | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa Foundry per Speech nel portale di Azure.
- Ottenere la chiave e l'area della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
Configurare l'ambiente
Installare l'SDK di sintesi vocale per il linguaggio Go. Per i requisiti e le istruzioni, consultare Installare Speech SDK.
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'area della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la variabile di ambiente
SPEECH_REGION, sostituire area-utente con una delle aree della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituireyour-endpointcon l'endpoint effettivo della risorsa Voce.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere il parlato da un microfono
Attenersi alla procedura seguente per creare un modulo GO.
Aprire una finestra del prompt dei comandi nella cartella in cui si desidera il nuovo progetto. Creare un nuovo file denominato speech-recognition.go.
Copiare il codice seguente in speech-recognition.go:
package main import ( "bufio" "fmt" "os" "github.com/Microsoft/cognitive-services-speech-sdk-go/audio" "github.com/Microsoft/cognitive-services-speech-sdk-go/speech" ) func sessionStartedHandler(event speech.SessionEventArgs) { defer event.Close() fmt.Println("Session Started (ID=", event.SessionID, ")") } func sessionStoppedHandler(event speech.SessionEventArgs) { defer event.Close() fmt.Println("Session Stopped (ID=", event.SessionID, ")") } func recognizingHandler(event speech.SpeechRecognitionEventArgs) { defer event.Close() fmt.Println("Recognizing:", event.Result.Text) } func recognizedHandler(event speech.SpeechRecognitionEventArgs) { defer event.Close() fmt.Println("Recognized:", event.Result.Text) } func cancelledHandler(event speech.SpeechRecognitionCanceledEventArgs) { defer event.Close() fmt.Println("Received a cancellation: ", event.ErrorDetails) fmt.Println("Did you set the speech resource key and region values?") } func main() { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" speechKey := os.Getenv("SPEECH_KEY") speechRegion := os.Getenv("SPEECH_REGION") audioConfig, err := audio.NewAudioConfigFromDefaultMicrophoneInput() if err != nil { fmt.Println("Got an error: ", err) return } defer audioConfig.Close() speechConfig, err := speech.NewSpeechConfigFromSubscription(speechKey, speechRegion) if err != nil { fmt.Println("Got an error: ", err) return } defer speechConfig.Close() speechRecognizer, err := speech.NewSpeechRecognizerFromConfig(speechConfig, audioConfig) if err != nil { fmt.Println("Got an error: ", err) return } defer speechRecognizer.Close() speechRecognizer.SessionStarted(sessionStartedHandler) speechRecognizer.SessionStopped(sessionStoppedHandler) speechRecognizer.Recognizing(recognizingHandler) speechRecognizer.Recognized(recognizedHandler) speechRecognizer.Canceled(cancelledHandler) speechRecognizer.StartContinuousRecognitionAsync() defer speechRecognizer.StopContinuousRecognitionAsync() bufio.NewReader(os.Stdin).ReadBytes('\n') }Eseguire i comandi seguenti per creare un file go.mod che si collega ai componenti ospitati in GitHub:
go mod init speech-recognition go get github.com/Microsoft/cognitive-services-speech-sdk-goImportante
Assicurati di impostare le
SPEECH_KEYeSPEECH_REGIONvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.Compilare ed eseguire il codice:
go build go run speech-recognition
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa di Servizi di intelligenza artificiale per il riconoscimento vocale nella portale di Azure.
- Ottenere la chiave e l'endpoint della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
Configurare l'ambiente
Per configurare l'ambiente, installare Speech SDK. L'esempio in questo avvio rapido funziona con Runtime Java.
Installare Apache Maven. Quindi eseguire
mvn -vper confermare l'installazione corretta.Creare un nuovo file
pom.xmlnella radice del progetto copiando il codice seguente:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.microsoft.cognitiveservices.speech.samples</groupId> <artifactId>quickstart-eclipse</artifactId> <version>1.0.0-SNAPSHOT</version> <build> <sourceDirectory>src</sourceDirectory> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>com.microsoft.cognitiveservices.speech</groupId> <artifactId>client-sdk</artifactId> <version>1.43.0</version> </dependency> </dependencies> </project>Installare Speech SDK e le dipendenze.
mvn clean dependency:copy-dependencies
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'endpoint della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituire your-endpoint con uno degli endpoint per la risorsa.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere il parlato da un microfono
Seguire questi passaggi per creare un'applicazione console per il riconoscimento vocale.
Creare un nuovo file denominato SpeechRecognition.java nella stessa directory radice del progetto.
Copiare il codice seguente in SpeechRecognition.java:
import com.microsoft.cognitiveservices.speech.*; import com.microsoft.cognitiveservices.speech.audio.AudioConfig; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; public class SpeechRecognition { // This example requires environment variables named "SPEECH_KEY" and "ENDPOINT" private static String speechKey = System.getenv("SPEECH_KEY"); private static String endpoint = System.getenv("ENDPOINT"); public static void main(String[] args) throws InterruptedException, ExecutionException { SpeechConfig speechConfig = SpeechConfig.fromEndpoint(speechKey, endpoint); speechConfig.setSpeechRecognitionLanguage("en-US"); recognizeFromMicrophone(speechConfig); } public static void recognizeFromMicrophone(SpeechConfig speechConfig) throws InterruptedException, ExecutionException { AudioConfig audioConfig = AudioConfig.fromDefaultMicrophoneInput(); SpeechRecognizer speechRecognizer = new SpeechRecognizer(speechConfig, audioConfig); System.out.println("Speak into your microphone."); Future<SpeechRecognitionResult> task = speechRecognizer.recognizeOnceAsync(); SpeechRecognitionResult speechRecognitionResult = task.get(); if (speechRecognitionResult.getReason() == ResultReason.RecognizedSpeech) { System.out.println("RECOGNIZED: Text=" + speechRecognitionResult.getText()); } else if (speechRecognitionResult.getReason() == ResultReason.NoMatch) { System.out.println("NOMATCH: Speech could not be recognized."); } else if (speechRecognitionResult.getReason() == ResultReason.Canceled) { CancellationDetails cancellation = CancellationDetails.fromResult(speechRecognitionResult); System.out.println("CANCELED: Reason=" + cancellation.getReason()); if (cancellation.getReason() == CancellationReason.Error) { System.out.println("CANCELED: ErrorCode=" + cancellation.getErrorCode()); System.out.println("CANCELED: ErrorDetails=" + cancellation.getErrorDetails()); System.out.println("CANCELED: Did you set the speech resource key and endpoint values?"); } } System.exit(0); } }Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Eseguire la nuova applicazione console per avviare il riconoscimento vocale da microfono:
javac SpeechRecognition.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" SpeechRecognitionImportante
Assicurati di impostare le
SPEECH_KEYeENDPOINTvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.Parlare al microfono quando richiesto. Il parlato deve essere mostrato come testo:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Osservazioni:
Ecco alcune altre considerazioni:
In questo esempio viene usata l'operazione
RecognizeOnceAsyncper trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.Per riconoscere il parlato da un file audio, usare
fromWavFileInputanzichéfromDefaultMicrophoneInput:AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");Per i file audio compressi, ad esempio MP4, installare GStreamer e usare
PullAudioInputStreamoPushAudioInputStream. Per altre informazioni vedere Come usare audio di input compresso.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Pacchetto (npm) | Ulteriori esempi in GitHub | Codice sorgente della libreria
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa Foundry per Speech nel portale di Azure.
- Ottenere la chiave e l'area della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
È necessario anche un file audio .wav nel computer locale. È possibile usare il proprio file .wav (fino a 30 secondi) o scaricare il file di esempio https://crbn.us/whatstheweatherlike.wav.
Configurazione
Creare una nuova cartella
transcription-quickstarte passare alla cartella quickstart con il comando seguente:mkdir transcription-quickstart && cd transcription-quickstartCreare il
package.jsoncon il seguente comando:npm init -yInstallare Speech SDK per JavaScript con:
npm install microsoft-cognitiveservices-speech-sdk
Recuperare le informazioni sulle risorse
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'area della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la variabile di ambiente
SPEECH_REGION, sostituire area-utente con una delle aree della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituireyour-endpointcon l'endpoint effettivo della risorsa Voce.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere la sintesi vocale da un file
Per trascrivere il parlato da un file:
Creare un nuovo file denominato transcription.js con il contenuto seguente:
import { readFileSync, createReadStream } from "fs"; import { SpeechConfig, AudioConfig, ConversationTranscriber, AudioInputStream } from "microsoft-cognitiveservices-speech-sdk"; // This example requires environment variables named "ENDPOINT" and "SPEECH_KEY" const speechConfig = SpeechConfig.fromEndpoint(new URL(process.env.ENDPOINT), process.env.SPEECH_KEY); function fromFile() { const filename = "katiesteve.wav"; const audioConfig = AudioConfig.fromWavFileInput(readFileSync(filename)); const conversationTranscriber = new ConversationTranscriber(speechConfig, audioConfig); const pushStream = AudioInputStream.createPushStream(); createReadStream(filename).on('data', function (chunk) { pushStream.write(chunk.slice()); }).on('end', function () { pushStream.close(); }); console.log("Transcribing from: " + filename); conversationTranscriber.sessionStarted = function (s, e) { console.log("SessionStarted event"); console.log("SessionId:" + e.sessionId); }; conversationTranscriber.sessionStopped = function (s, e) { console.log("SessionStopped event"); console.log("SessionId:" + e.sessionId); conversationTranscriber.stopTranscribingAsync(); }; conversationTranscriber.canceled = function (s, e) { console.log("Canceled event"); console.log(e.errorDetails); conversationTranscriber.stopTranscribingAsync(); }; conversationTranscriber.transcribed = function (s, e) { console.log("TRANSCRIBED: Text=" + e.result.text + " Speaker ID=" + e.result.speakerId); }; // Start conversation transcription conversationTranscriber.startTranscribingAsync(function () { }, function (err) { console.trace("err - starting transcription: " + err); }); } fromFile();In transcription.jssostituire YourAudioFile.wav con il proprio file di .wav . Questo esempio supporta solo il riconoscimento vocale da file .wav. Per informazioni su altri formati audio vedere Come usare audio di input compresso. Questo esempio supporta fino a 30 secondi di audio.
Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Eseguire la nuova applicazione console per avviare il riconoscimento vocale da file:
node transcription.js
Attendere qualche istante per ottenere la risposta.
Risultato
Il parlato nel file audio deve essere restituito come testo:
RECOGNIZED: Text=I'm excited to try speech to text.
Osservazioni:
In questo esempio viene usata l'operazione recognizeOnceAsync per trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.
Nota
Il riconoscimento vocale da microfono non è supportato in Node.js. È supportato solo in un ambiente JavaScript basato su browser. Per altre informazioni, vedere l'esempio React e l'implementazione del riconoscimento vocale da un microfono in GitHub.
L'esempio React mostra modelli di progettazione per lo scambio e la gestione dei token di autenticazione. Mostra anche l'acquisizione dell'audio da un microfono o da un file per le conversioni della voce in testo scritto.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Pacchetto (PyPi) | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa di Servizi di intelligenza artificiale per il riconoscimento vocale nella portale di Azure.
- Ottenere la chiave e l'endpoint della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
Configurare l'ambiente
Speech SDK per Python è disponibile come modulo Python Package Index (PyPI). Speech SDK per Python è compatibile con Windows, Linux e macOS.
- Per Windows, installare Microsoft Visual C++ Redistributable per Visual Studio 2015, 2017, 2019 e 2022 per la piattaforma. La prima installazione di questo pacchetto potrebbe richiedere un riavvio.
- In Linux è necessario usare l'architettura di destinazione x64.
Installare Python 3.7 o una versione successiva. Per altri requisiti, vedere Installare Speech SDK.
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'endpoint della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituire your-endpoint con uno degli endpoint per la risorsa.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere il parlato da un microfono
Suggerimento
Provare Azure Speech in Foundry Tools Toolkit per compilare ed eseguire facilmente esempi in Visual Studio Code.
Seguire questi passaggi per creare un'applicazione console.
Aprire una finestra del prompt dei comandi nella cartella in cui si desidera il nuovo progetto. Creare un nuovo file denominato speech_recognition.py.
Eseguire questo comando per installare Speech SDK:
pip install azure-cognitiveservices-speechCopiare il codice seguente in speech_recognition.py:
import os import azure.cognitiveservices.speech as speechsdk def recognize_from_microphone(): # This example requires environment variables named "SPEECH_KEY" and "ENDPOINT" # Replace with your own subscription key and endpoint, the endpoint is like : "https://YourServiceRegion.api.cognitive.microsoft.com" speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), endpoint=os.environ.get('ENDPOINT')) speech_config.speech_recognition_language="en-US" audio_config = speechsdk.audio.AudioConfig(use_default_microphone=True) speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config) print("Speak into your microphone.") speech_recognition_result = speech_recognizer.recognize_once_async().get() if speech_recognition_result.reason == speechsdk.ResultReason.RecognizedSpeech: print("Recognized: {}".format(speech_recognition_result.text)) elif speech_recognition_result.reason == speechsdk.ResultReason.NoMatch: print("No speech could be recognized: {}".format(speech_recognition_result.no_match_details)) elif speech_recognition_result.reason == speechsdk.ResultReason.Canceled: cancellation_details = speech_recognition_result.cancellation_details print("Speech Recognition canceled: {}".format(cancellation_details.reason)) if cancellation_details.reason == speechsdk.CancellationReason.Error: print("Error details: {}".format(cancellation_details.error_details)) print("Did you set the speech resource key and endpoint values?") recognize_from_microphone()Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Eseguire la nuova applicazione console per avviare il riconoscimento vocale da microfono:
python speech_recognition.pyImportante
Assicurati di impostare le
SPEECH_KEYeENDPOINTvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.Parlare al microfono quando richiesto. Il parlato deve essere mostrato come testo:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Osservazioni:
Ecco alcune altre considerazioni:
In questo esempio viene usata l'operazione
recognize_once_asyncper trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.Per riconoscere il parlato da un file audio, usare
filenameanzichéuse_default_microphone:audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")Per i file audio compressi, ad esempio MP4, installare GStreamer e usare
PullAudioInputStreamoPushAudioInputStream. Per altre informazioni vedere Come usare audio di input compresso.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Pacchetto (download) | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa Foundry per Speech nel portale di Azure.
- Ottenere la chiave e l'area della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
Configurare l'ambiente
Speech SDK per Swift viene distribuito come bundle di framework. Il framework supporta sia Objective-C che Swift sia in iOS che in macOS.
Speech SDK può essere utilizzato in progetti Xcode come CocoaPod o scaricato direttamente e collegato manualmente. Questa guida usa CocoaPod. Installare il gestore di dipendenze di CocoaPod come descritto in queste istruzioni per l'installazione.
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'area della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la variabile di ambiente
SPEECH_REGION, sostituire area-utente con una delle aree della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituireyour-endpointcon l'endpoint effettivo della risorsa Voce.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere il parlato da un microfono
Seguire questa procedura per riconoscere il parlato in un'applicazione macOS.
Clonare il repository Azure-Samples/cognitive-services-speech-sdk per ottenere il progetto di esempio Riconosci parlato da un microfono in Swift su macOS usando Speech SDK. Il repository include anche esempi di iOS.
Passare alla directory dell'app di esempio scaricata (
helloworld) in un terminale.Eseguire il comando
pod install. Verrà generata un'area di lavoro Xcodehelloworld.xcworkspacecontenente l'app di esempio e Speech SDK come dipendenza.Aprire l'area di lavoro
helloworld.xcworkspacein Xcode.Aprire il file denominato AppDelegate.swift e individuare i metodi
applicationDidFinishLaunchingerecognizeFromMiccome illustrato di seguito.import Cocoa @NSApplicationMain class AppDelegate: NSObject, NSApplicationDelegate { var label: NSTextField! var fromMicButton: NSButton! var sub: String! var region: String! @IBOutlet weak var window: NSWindow! func applicationDidFinishLaunching(_ aNotification: Notification) { print("loading") // load subscription information sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"] label = NSTextField(frame: NSRect(x: 100, y: 50, width: 200, height: 200)) label.textColor = NSColor.black label.lineBreakMode = .byWordWrapping label.stringValue = "Recognition Result" label.isEditable = false self.window.contentView?.addSubview(label) fromMicButton = NSButton(frame: NSRect(x: 100, y: 300, width: 200, height: 30)) fromMicButton.title = "Recognize" fromMicButton.target = self fromMicButton.action = #selector(fromMicButtonClicked) self.window.contentView?.addSubview(fromMicButton) } @objc func fromMicButtonClicked() { DispatchQueue.global(qos: .userInitiated).async { self.recognizeFromMic() } } func recognizeFromMic() { var speechConfig: SPXSpeechConfiguration? do { try speechConfig = SPXSpeechConfiguration(subscription: sub, region: region) } catch { print("error \(error) happened") speechConfig = nil } speechConfig?.speechRecognitionLanguage = "en-US" let audioConfig = SPXAudioConfiguration() let reco = try! SPXSpeechRecognizer(speechConfiguration: speechConfig!, audioConfiguration: audioConfig) reco.addRecognizingEventHandler() {reco, evt in print("intermediate recognition result: \(evt.result.text ?? "(no result)")") self.updateLabel(text: evt.result.text, color: .gray) } updateLabel(text: "Listening ...", color: .gray) print("Listening...") let result = try! reco.recognizeOnce() print("recognition result: \(result.text ?? "(no result)"), reason: \(result.reason.rawValue)") updateLabel(text: result.text, color: .black) if result.reason != SPXResultReason.recognizedSpeech { let cancellationDetails = try! SPXCancellationDetails(fromCanceledRecognitionResult: result) print("cancelled: \(result.reason), \(cancellationDetails.errorDetails)") print("Did you set the speech resource key and region values?") updateLabel(text: "Error: \(cancellationDetails.errorDetails)", color: .red) } } func updateLabel(text: String?, color: NSColor) { DispatchQueue.main.async { self.label.stringValue = text! self.label.textColor = color } } }In AppDelegate.m usare le variabili di ambiente impostate in precedenza per la chiave e l'area della risorsa Voce.
sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"]Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Per rendere visibile l'output di debug, selezionare Visualizza>Area di debug>Attiva console.
Compilare ed eseguire il codice di esempio scegliendo Prodotto>Esegui dal menu o selezionando il pulsante Riproduci.
Importante
Assicurati di impostare le
SPEECH_KEYeSPEECH_REGIONvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.
Dopo aver selezionato il pulsante nell'app e aver pronunciato alcune parole, dovresti vedere il testo che hai pronunciato nella parte inferiore dello schermo. Quando si esegue l'app per la prima volta, chiede l'accesso al microfono del computer.
Osservazioni:
In questo esempio viene usata l'operazione recognizeOnce per trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.
Objective-C
Speech SDK per Objective-C condivide le librerie client e la documentazione di riferimento con Speech SDK per Swift. Per esempi di codice Objective-C, vedere il progetto di esempio riconoscimento vocale da un microfono in Objective-C in macOS in GitHub.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Documentazione di riferimento | Pacchetto (npm) | Ulteriori esempi in GitHub | Codice sorgente della libreria
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa Foundry per Speech nel portale di Azure.
- Ottenere la chiave e l'area della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
È necessario anche un file audio .wav nel computer locale. È possibile usare il proprio file .wav (fino a 30 secondi) o scaricare il file di esempio https://crbn.us/whatstheweatherlike.wav.
Configurazione
Creare una nuova cartella
transcription-quickstarte passare alla cartella quickstart con il comando seguente:mkdir transcription-quickstart && cd transcription-quickstartCreare il
package.jsoncon il seguente comando:npm init -yAggiornare
package.jsona ECMAScript con il comando seguente:npm pkg set type=moduleInstallare Speech SDK per JavaScript con:
npm install microsoft-cognitiveservices-speech-sdkÈ necessario installare le definizioni dei tipi di Node.js per evitare errori TypeScript. Eseguire il comando seguente:
npm install --save-dev @types/node
Recuperare le informazioni sulle risorse
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'area della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la variabile di ambiente
SPEECH_REGION, sostituire area-utente con una delle aree della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituireyour-endpointcon l'endpoint effettivo della risorsa Voce.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere la sintesi vocale da un file
Per trascrivere il parlato da un file:
Creare un nuovo file denominato transcription.ts con il contenuto seguente:
import { readFileSync } from "fs"; import { SpeechConfig, AudioConfig, SpeechRecognizer, ResultReason, CancellationDetails, CancellationReason, SpeechRecognitionResult } from "microsoft-cognitiveservices-speech-sdk"; // This example requires environment variables named "ENDPOINT" and "SPEECH_KEY" const speechConfig: SpeechConfig = SpeechConfig.fromEndpoint(new URL(process.env.ENDPOINT!), process.env.SPEECH_KEY!); speechConfig.speechRecognitionLanguage = "en-US"; function fromFile(): void { const audioConfig: AudioConfig = AudioConfig.fromWavFileInput(readFileSync("YourAudioFile.wav")); const speechRecognizer: SpeechRecognizer = new SpeechRecognizer(speechConfig, audioConfig); speechRecognizer.recognizeOnceAsync((result: SpeechRecognitionResult) => { switch (result.reason) { case ResultReason.RecognizedSpeech: console.log(`RECOGNIZED: Text=${result.text}`); break; case ResultReason.NoMatch: console.log("NOMATCH: Speech could not be recognized."); break; case ResultReason.Canceled: const cancellation: CancellationDetails = CancellationDetails.fromResult(result); console.log(`CANCELED: Reason=${cancellation.reason}`); if (cancellation.reason === CancellationReason.Error) { console.log(`CANCELED: ErrorCode=${cancellation.ErrorCode}`); console.log(`CANCELED: ErrorDetails=${cancellation.errorDetails}`); console.log("CANCELED: Did you set the speech resource key and region values?"); } break; } speechRecognizer.close(); }); } fromFile();In transcription.ts sostituire YourAudioFile.wav con il proprio file di .wav . Questo esempio supporta solo il riconoscimento vocale da file .wav. Per informazioni su altri formati audio vedere Come usare audio di input compresso. Questo esempio supporta fino a 30 secondi di audio.
Per modificare la lingua del riconoscimento vocale sostituire
en-UScon un'altra lingua supportata. Ad esempio,es-ESper spagnolo (Spagna). Se non si specifica una lingua, quella predefinita èen-US. Per informazioni dettagliate su come identificare una delle tante lingue da poter usare, vedere Identificazione della lingua.Creare il file per eseguire la
tsconfig.jsontranspile del codice TypeScript e copiare il codice seguente per 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"] }Converti il codice da TypeScript a JavaScript.
tscQuesto comando non deve produrre alcun output se ha esito positivo.
Eseguire la nuova applicazione console per avviare il riconoscimento vocale da file:
node transcription.js
Attendere qualche istante per ottenere la risposta.
Risultato
Il parlato nel file audio deve essere restituito come testo:
RECOGNIZED: Text=I'm excited to try speech to text.
Osservazioni:
In questo esempio viene usata l'operazione recognizeOnceAsync per trascrivere enunciati fino a 30 secondi, o fino al rilevamento del silenzio. Per informazioni sul riconoscimento continuo di un audio più lungo, incluse le conversazioni multilingue, vedere Come riconoscere il parlato.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.
Informazioni di riferimento sull'API REST di riconoscimento vocale | Informazioni di riferimento sull'API REST di riconoscimento vocale per audio brevi | Ulteriori esempi in GitHub
Questa guida introduttiva spiega come creare ed eseguire un'applicazione per riconoscere e trascrivere il parlato in testo scritto in tempo reale.
Suggerimento
Per la trascrizione rapida dei file audio, considerare l'eventualità di usare l'API di trascrizione rapida. L'API di trascrizione rapida supporta funzionalità come l'identificazione della lingua e la diarizzazione.
Per trascrivere invece i file audio in modo asincrono, vedere Che cos'è la trascrizione batch. Se non si è certi della soluzione di riconoscimento vocale più adatta, vedere Che cos'è il riconoscimento vocale?
Prerequisiti
- Una sottoscrizione di Azure. È possibile crearne uno gratuitamente.
- Creare una risorsa Foundry per Speech nel portale di Azure.
- Ottenere la chiave e l'area della risorsa Voce. Dopo aver distribuito la risorsa Voce, selezionare Vai alla risorsa per visualizzare e gestire le chiavi.
È necessario anche un file audio .wav nel computer locale. È possibile usare il proprio file .wav fino a 60 secondi o scaricare il file di esempio https://crbn.us/whatstheweatherlike.wav.
Impostare le variabili di ambiente
È necessario autenticare l'applicazione per accedere a Foundry Tools. Questo articolo illustra come usare le variabili di ambiente per archiviare le credenziali. È quindi possibile accedere alle variabili di ambiente dal codice per autenticare l'applicazione. Per l'ambiente di produzione, usare un modo più sicuro per archiviare e accedere alle credenziali.
Importante
Si consiglia l'autenticazione di Microsoft Entra ID insieme alle identità gestite per le risorse di Azure al fine di evitare di archiviare le credenziali con le applicazioni eseguite nel cloud.
Usare le chiavi API con cautela. Non includere la chiave API direttamente nel codice e non esporla mai pubblicamente. Se si usano chiavi API, archiviarli in modo sicuro in Azure Key Vault, ruotare regolarmente le chiavi e limitare l'accesso ad Azure Key Vault usando il controllo degli accessi in base al ruolo e le restrizioni di accesso alla rete. Per altre informazioni sull'uso sicuro delle chiavi API nelle app, vedere Chiavi API con Azure Key Vault.
Per altre informazioni sulla sicurezza dei servizi di intelligenza artificiale, vedere Autenticare le richieste a Servizi di Azure AI.
Per impostare le variabili di ambiente per la chiave e l'area della risorsa Voce, aprire una finestra della console e seguire le istruzioni per il sistema operativo e l'ambiente di sviluppo.
- Per impostare la variabile di ambiente
SPEECH_KEY, sostituire chiave-utente con una delle chiavi della risorsa. - Per impostare la variabile di ambiente
SPEECH_REGION, sostituire area-utente con una delle aree della risorsa. - Per impostare la
ENDPOINTvariabile di ambiente, sostituireyour-endpointcon l'endpoint effettivo della risorsa Voce.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Nota
Se è sufficiente accedere alla variabile di ambiente nella console corrente, è possibile impostare la variabile di ambiente con set anziché setx.
Dopo l'aggiunta delle variabili di ambiente potrebbe essere necessario riavviare eventuali programmi che devono leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Riconoscere la sintesi vocale da un file
Aprire una finestra della console ed eseguire il comando cURL seguente. Sostituire YourAudioFile.wav con il percorso e il nome del file audio.
curl --location --request POST "https://%SPEECH_REGION%.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US&format=detailed" ^
--header "Ocp-Apim-Subscription-Key: %SPEECH_KEY%" ^
--header "Content-Type: audio/wav" ^
--data-binary "@YourAudioFile.wav"
Importante
Assicurati di impostare le SPEECH_KEY e SPEECH_REGIONvariabili di ambiente. Se queste variabili non vengono impostate, l'esempio avrà esito negativo e riporterà un messaggio di errore.
Si dovrebbe ricevere una risposta simile a quella mostrata qui.
DisplayText deve essere il testo riconosciuto dal file audio. Il comando riconosce fino a 60 secondi di audio e lo converte in testo.
{
"RecognitionStatus": "Success",
"DisplayText": "My voice is my passport, verify me.",
"Offset": 6600000,
"Duration": 32100000
}
Per altre informazioni, vedere API REST di riconoscimento vocale per audio brevi.
Pulire le risorse
Per rimuovere la risorsa Voce creata è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure.