Spracherkennungs-REST-APISpeech-to-text REST API

Als Alternative zum Speech SDK ermöglicht der Speech-Dienst das Konvertieren von Sprache in Text mithilfe einer REST-API.As an alternative to the Speech SDK, the Speech service allows you to convert speech-to-text using a REST API. Jeder zugängliche Endpunkt ist einer Region zugeordnet.Each accessible endpoint is associated with a region. Ihre Anwendung benötigt einen Abonnementschlüssel für den Endpunkt, den Sie verwenden möchten.Your application requires a subscription key for the endpoint you plan to use.

Vor der Verwendung der Spracherkennungs-REST-API müssen Sie Folgendes verstanden haben:Before using the speech-to-text REST API, understand:

  • Anforderungen, die die REST-API verwenden und Audiodaten direkt übertragen, dürfen nur bis zu 60 Sekunden Audiodaten enthalten.Requests that use the REST API and transmit audio directly can only contain up to 60 seconds of audio.
  • Die Spracherkennung-REST-API gibt nur Endergebnisse zurück.The speech-to-text REST API only returns final results. Teilergebnisse werden nicht bereitgestellt.Partial results are not provided.

Wenn das Senden von längerem Audio eine Anforderung für Ihre Anwendung ist, verwenden Sie das Speech SDK oder eine dateibasierte REST-API wie die Batchtranskription.If sending longer audio is a requirement for your application, consider using the Speech SDK or a file-based REST API, like batch transcription.

AuthentifizierungAuthentication

Jede Anforderung erfordert einen Autorisierungsheader.Each request requires an authorization header. Diese Tabelle zeigt, welche Header für welchen Dienst unterstützt werden:This table illustrates which headers are supported for each service:

Unterstützte AutorisierungsheaderSupported authorization headers SpracherkennungSpeech-to-text Text-zu-SpracheText-to-speech
Ocp-Apim-Subscription-KeyOcp-Apim-Subscription-Key JaYes NeinNo
Autorisierung: BearerAuthorization: Bearer JaYes JaYes

Wenn Sie den Header Ocp-Apim-Subscription-Key verwenden, müssen Sie nur Ihren Abonnementschlüssel angeben.When using the Ocp-Apim-Subscription-Key header, you're only required to provide your subscription key. Beispiel:For example:

'Ocp-Apim-Subscription-Key': 'YOUR_SUBSCRIPTION_KEY'

Wenn Sie den Header Authorization: Bearer verwenden, müssen Sie eine Anforderung an den Endpunkt issueToken stellen.When using the Authorization: Bearer header, you're required to make a request to the issueToken endpoint. In dieser Anforderung tauschen Sie Ihren Abonnementschlüssel gegen ein Zugriffstoken, der 10 Minuten lang gültig ist.In this request, you exchange your subscription key for an access token that's valid for 10 minutes. In den nächsten Abschnitten erfahren Sie, wie Sie ein Token abrufen und verwenden können.In the next few sections you'll learn how to get a token, and use a token.

Abrufen eines ZugriffstokensHow to get an access token

Um ein Zugriffstoken abzurufen, müssen Sie eine Anforderung an den issueToken-Endpunkt mit dem Header Ocp-Apim-Subscription-Key und Ihrem Abonnementschlüssel senden.To get an access token, you'll need to make a request to the issueToken endpoint using the Ocp-Apim-Subscription-Key and your subscription key.

Der issueToken-Endpunkt hat folgendes Format:The issueToken endpoint has this format:

https://<REGION_IDENTIFIER>.api.cognitive.microsoft.com/sts/v1.0/issueToken

Ersetzen Sie <REGION_IDENTIFIER> durch den Bezeichner aus der folgenden Tabelle, der mit der Region Ihres Abonnements übereinstimmt:Replace <REGION_IDENTIFIER> with the identifier matching the region of your subscription from this table:

GebietGeography RegionRegion RegionsbezeichnerRegion identifier
AmerikaAmericas USA (Mitte)Central US centralus
AmerikaAmericas East USEast US eastus
AmerikaAmericas USA (Ost) 2East US 2 eastus2
AmerikaAmericas USA Nord MitteNorth Central US northcentralus
AmerikaAmericas USA Süd MitteSouth Central US southcentralus
AmerikaAmericas USA, Westen-MitteWest Central US westcentralus
AmerikaAmericas USA (Westen)West US westus
AmerikaAmericas USA, Westen 2West US 2 westus2
AmerikaAmericas Kanada, MitteCanada Central canadacentral
AmerikaAmericas Brasilien SüdBrazil South brazilsouth
Asien-PazifikAsia Pacific Asien, OstenEast Asia eastasia
Asien-PazifikAsia Pacific Asien, SüdostenSoutheast Asia southeastasia
Asien-PazifikAsia Pacific Australien (Osten)Australia East australiaeast
Asien-PazifikAsia Pacific Indien, MitteCentral India centralindia
Asien-PazifikAsia Pacific Japan, OstenJapan East japaneast
Asien-PazifikAsia Pacific Japan, WestenJapan West japanwest
Asien-PazifikAsia Pacific Korea, MitteKorea Central koreacentral
EuropaEurope NordeuropaNorth Europe northeurope
EuropaEurope Europa, WestenWest Europe westeurope
EuropaEurope Frankreich, MitteFrance Central francecentral
EuropaEurope UK, SüdenUK South uksouth

Verwenden Sie diese Beispiele, um Ihre Zugriffstokenanforderung zu erstellen.Use these samples to create your access token request.

HTTP-BeispielHTTP sample

Dieses Beispiel stellt eine einfache HTTP-Anforderung zum Abrufen eines Tokens dar.This example is a simple HTTP request to get a token. Ersetzen Sie YOUR_SUBSCRIPTION_KEY durch Ihren Abonnementschlüssel für den Speech-Dienst.Replace YOUR_SUBSCRIPTION_KEY with your Speech Service subscription key. Wenn sich Ihr Abonnement nicht in der Region „USA, Westen“ befindet, ersetzen Sie den Host-Header durch den Hostnamen für Ihre Region.If your subscription isn't in the West US region, replace the Host header with your region's host name.

POST /sts/v1.0/issueToken HTTP/1.1
Ocp-Apim-Subscription-Key: YOUR_SUBSCRIPTION_KEY
Host: westus.api.cognitive.microsoft.com
Content-type: application/x-www-form-urlencoded
Content-Length: 0

Der Antworttext enthält das Zugriffstoken im JWT-Format (JSON Web Token).The body of the response contains the access token in JSON Web Token (JWT) format.

PowerShell-BeispielPowerShell sample

Dieses Beispiel stellt ein einfaches PowerShell-Skript zum Abrufen eines Zugriffstokens dar.This example is a simple PowerShell script to get an access token. Ersetzen Sie YOUR_SUBSCRIPTION_KEY durch Ihren Abonnementschlüssel für den Speech-Dienst.Replace YOUR_SUBSCRIPTION_KEY with your Speech Service subscription key. Achten Sie darauf, dass Sie den richtigen Endpunkt für die Region Ihres Abonnements verwenden.Make sure to use the correct endpoint for the region that matches your subscription. In diesem Beispiel ist das „USA, Westen“.This example is currently set to West US.

$FetchTokenHeader = @{
  'Content-type'='application/x-www-form-urlencoded';
  'Content-Length'= '0';
  'Ocp-Apim-Subscription-Key' = 'YOUR_SUBSCRIPTION_KEY'
}

$OAuthToken = Invoke-RestMethod -Method POST -Uri https://westus.api.cognitive.microsoft.com/sts/v1.0/issueToken
 -Headers $FetchTokenHeader

# show the token received
$OAuthToken

cURL-BeispielcURL sample

cURL ist ein Befehlszeilentool, das in Linux (und im Windows-Subsystem für Linux) zur Verfügung steht.cURL is a command-line tool available in Linux (and in the Windows Subsystem for Linux). Dieser cURL-Befehl veranschaulicht, wie Sie ein Zugriffstoken abrufen.This cURL command illustrates how to get an access token. Ersetzen Sie YOUR_SUBSCRIPTION_KEY durch Ihren Abonnementschlüssel für den Speech-Dienst.Replace YOUR_SUBSCRIPTION_KEY with your Speech Service subscription key. Achten Sie darauf, dass Sie den richtigen Endpunkt für die Region Ihres Abonnements verwenden.Make sure to use the correct endpoint for the region that matches your subscription. In diesem Beispiel ist das „USA, Westen“.This example is currently set to West US.

curl -v -X POST
 "https://westus.api.cognitive.microsoft.com/sts/v1.0/issueToken" \
 -H "Content-type: application/x-www-form-urlencoded" \
 -H "Content-Length: 0" \
 -H "Ocp-Apim-Subscription-Key: YOUR_SUBSCRIPTION_KEY"

C#-BeispielC# sample

Diese C#-Klasse veranschaulicht, wie Sie ein Zugriffstoken abrufen.This C# class illustrates how to get an access token. Übergeben Sie Ihren Abonnementschlüssel für den Speech-Dienst beim Instanziieren der Klasse.Pass your Speech Service subscription key when you instantiate the class. Wenn Ihr Abonnement sich nicht in der Region „USA, Westen“ befindet, ändern Sie den Wert von FetchTokenUri so, dass er der Region Ihres Abonnements entspricht.If your subscription isn't in the West US region, change the value of FetchTokenUri to match the region for your subscription.

public class Authentication
{
    public static readonly string FetchTokenUri =
        "https://westus.api.cognitive.microsoft.com/sts/v1.0/issueToken";
    private string subscriptionKey;
    private string token;

    public Authentication(string subscriptionKey)
    {
        this.subscriptionKey = subscriptionKey;
        this.token = FetchTokenAsync(FetchTokenUri, subscriptionKey).Result;
    }

    public string GetAccessToken()
    {
        return this.token;
    }

    private async Task<string> FetchTokenAsync(string fetchUri, string subscriptionKey)
    {
        using (var client = new HttpClient())
        {
            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", subscriptionKey);
            UriBuilder uriBuilder = new UriBuilder(fetchUri);

            var result = await client.PostAsync(uriBuilder.Uri.AbsoluteUri, null);
            Console.WriteLine("Token Uri: {0}", uriBuilder.Uri.AbsoluteUri);
            return await result.Content.ReadAsStringAsync();
        }
    }
}

Python-BeispielPython sample

# Request module must be installed.
# Run pip install requests if necessary.
import requests

subscription_key = 'REPLACE_WITH_YOUR_KEY'


def get_token(subscription_key):
    fetch_token_url = 'https://westus.api.cognitive.microsoft.com/sts/v1.0/issueToken'
    headers = {
        'Ocp-Apim-Subscription-Key': subscription_key
    }
    response = requests.post(fetch_token_url, headers=headers)
    access_token = str(response.text)
    print(access_token)

Verwenden eines ZugriffstokensHow to use an access token

Das Zugriffstoken sollte als Authorization: Bearer <TOKEN>-Header an den Dienst gesendet werden.The access token should be sent to the service as the Authorization: Bearer <TOKEN> header. Jedes Zugriffstoken ist 10 Minuten lang gültig.Each access token is valid for 10 minutes. Sie können jederzeit ein neues Token abrufen, allerdings wird empfohlen, das gleiche Token 9 Minuten lang zu verwenden, um den Datenverkehr und die Wartezeit zu minimieren.You can get a new token at any time, however, to minimize network traffic and latency, we recommend using the same token for nine minutes.

Hier ist eine Beispiel-HTTP-Anforderung an die Text-to-Speech-REST-API:Here's a sample HTTP request to the text-to-speech REST API:

POST /cognitiveservices/v1 HTTP/1.1
Authorization: Bearer YOUR_ACCESS_TOKEN
Host: westus.stt.speech.microsoft.com
Content-type: application/ssml+xml
Content-Length: 199
Connection: Keep-Alive

// Message body here...

Regionen und EndpunkteRegions and endpoints

Der Endpunkt für die REST-API weist das folgende Format auf:The endpoint for the REST API has this format:

https://<REGION_IDENTIFIER>.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1

Ersetzen Sie <REGION_IDENTIFIER> durch den Bezeichner aus der folgenden Tabelle, der mit der Region Ihres Abonnements übereinstimmt:Replace <REGION_IDENTIFIER> with the identifier matching the region of your subscription from this table:

GebietGeography RegionRegion RegionsbezeichnerRegion identifier
AmerikaAmericas USA (Mitte)Central US centralus
AmerikaAmericas East USEast US eastus
AmerikaAmericas USA (Ost) 2East US 2 eastus2
AmerikaAmericas USA Nord MitteNorth Central US northcentralus
AmerikaAmericas USA Süd MitteSouth Central US southcentralus
AmerikaAmericas USA, Westen-MitteWest Central US westcentralus
AmerikaAmericas USA (Westen)West US westus
AmerikaAmericas USA, Westen 2West US 2 westus2
AmerikaAmericas Kanada, MitteCanada Central canadacentral
AmerikaAmericas Brasilien SüdBrazil South brazilsouth
Asien-PazifikAsia Pacific Asien, OstenEast Asia eastasia
Asien-PazifikAsia Pacific Asien, SüdostenSoutheast Asia southeastasia
Asien-PazifikAsia Pacific Australien (Osten)Australia East australiaeast
Asien-PazifikAsia Pacific Indien, MitteCentral India centralindia
Asien-PazifikAsia Pacific Japan, OstenJapan East japaneast
Asien-PazifikAsia Pacific Japan, WestenJapan West japanwest
Asien-PazifikAsia Pacific Korea, MitteKorea Central koreacentral
EuropaEurope NordeuropaNorth Europe northeurope
EuropaEurope Europa, WestenWest Europe westeurope
EuropaEurope Frankreich, MitteFrance Central francecentral
EuropaEurope UK, SüdenUK South uksouth

Hinweis

Der Sprachparameter muss an die URL angefügt werden, um HTTP Fehler des Typs „4xx“ zu vermeiden.The language parameter must be appended to the URL to avoid receiving an 4xx HTTP error. Das folgende Beispiel zeigt die Spracheinstellung „Englisch (USA)“ bei Verwendung des Endpunkt „USA, Westen“: https://westus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US.For example, the language set to US English using the West US endpoint is: https://westus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US.

AbfrageparameterQuery parameters

Diese Parameter können in der Abfragezeichenfolge der REST-Anforderung enthalten sein.These parameters may be included in the query string of the REST request.

ParameterParameter BESCHREIBUNGDescription Erforderlich/optionalRequired / Optional
language Identifiziert die gesprochene Sprache, die erkannt wird.Identifies the spoken language that is being recognized. Siehe Unterstützte Sprachen.See Supported languages. ErforderlichRequired
format Gibt das Ergebnisformat an.Specifies the result format. Zulässige Werte sind simple und detailed.Accepted values are simple and detailed. Einfache Ergebnisse enthalten RecognitionStatus, DisplayText, Offset und Duration.Simple results include RecognitionStatus, DisplayText, Offset, and Duration. Detaillierte Antworten enthalten mehrere Ergebnisse mit Zuverlässigkeitswerten und vier unterschiedliche Darstellungen.Detailed responses include multiple results with confidence values and four different representations. Die Standardeinstellung ist simple.The default setting is simple. OptionalOptional
profanity Gibt den Umgang mit Obszönitäten in Erkennungsergebnissen an.Specifies how to handle profanity in recognition results. Zulässige Werte sind masked (Obszönitäten werden durch Sternchen ersetzt), removed (Obszönitäten werden aus dem Ergebnis entfernt) und raw (Obszönitäten sind im Ergebnis enthalten).Accepted values are masked, which replaces profanity with asterisks, removed, which removes all profanity from the result, or raw, which includes the profanity in the result. Die Standardeinstellung ist masked.The default setting is masked. OptionalOptional

AnforderungsheaderRequest headers

Diese Tabelle führt die erforderlichen und optionalen Header für Spracherkennungsanforderungen auf.This table lists required and optional headers for speech-to-text requests.

HeaderHeader BESCHREIBUNGDescription Erforderlich/optionalRequired / Optional
Ocp-Apim-Subscription-Key Ihr Abonnementschlüssel des Spracherkennungsdiensts.Your Speech service subscription key. Entweder dieser Header oder Authorization ist erforderlich.Either this header or Authorization is required.
Authorization Ein Autorisierungstoken, dem das Wort Bearer vorangestellt ist.An authorization token preceded by the word Bearer. Weitere Informationen finden Sie unter Authentifizierung.For more information, see Authentication. Entweder dieser Header oder Ocp-Apim-Subscription-Key ist erforderlich.Either this header or Ocp-Apim-Subscription-Key is required.
Content-type Beschreibt das Format und den Codec der bereitgestellten Audiodaten.Describes the format and codec of the provided audio data. Zulässige Werte sind audio/wav; codecs=audio/pcm; samplerate=16000 und audio/ogg; codecs=opus.Accepted values are audio/wav; codecs=audio/pcm; samplerate=16000 and audio/ogg; codecs=opus. ErforderlichRequired
Transfer-Encoding Gibt an, dass segmentierte Audiodaten anstatt einer einzelnen Datei gesendet werden.Specifies that chunked audio data is being sent, rather than a single file. Verwenden Sie diesen Header nur, wenn Sie Audiodaten segmentieren.Only use this header if chunking audio data. OptionalOptional
Expect Wenn Sie segmentierte Übertragung verwenden, senden Sie Expect: 100-continue.If using chunked transfer, send Expect: 100-continue. Der Spracherkennungsdienst bestätigt die ursprüngliche Anforderung und wartet auf weitere Daten.The Speech service acknowledges the initial request and awaits additional data. Erforderlich, wenn segmentierte Audiodaten gesendet werden.Required if sending chunked audio data.
Accept Wenn angegeben, muss der Wert application/json entsprechen.If provided, it must be application/json. Der Speech-Dienst übermittelt Ergebnisse im JSON-Format.The Speech service provides results in JSON. Einige Anforderungsframeworks bieten einen inkompatiblen Standardwert.Some request frameworks provide an incompatible default value. Es ist eine bewährte Methode, Accept immer einzubeziehen.It is good practice to always include Accept. Optional, wird jedoch empfohlen.Optional, but recommended.

AudioformateAudio formats

Audiodaten werden im Text der HTTP-POST-Anforderung gesendet.Audio is sent in the body of the HTTP POST request. Sie müssen in einem der in der folgenden Tabelle aufgeführten Formate vorliegen:It must be in one of the formats in this table:

FormatFormat CodecCodec BitrateBitrate SamplingrateSample Rate
WAVWAV PCMPCM 16 Bit16-bit 16 kHz, mono16 kHz, mono
OGGOGG OPUSOPUS 16 Bit16-bit 16 kHz, mono16 kHz, mono

Hinweis

Die oben genannten Formate werden durch die REST-API und WebSocket im Speech-Dienst unterstützt.The above formats are supported through REST API and WebSocket in the Speech service. Das Speech-SDK unterstützt gegenwärtig das WAV-Format mit dem PCM-Codec sowie weitere Formate.The Speech SDK currently supports the WAV format with PCM codec as well as other formats.

Beispiel für eine AnforderungSample request

Das folgende Beispiel enthält den Hostnamen und die erforderlichen Header.The sample below includes the hostname and required headers. Beachten Sie, dass der Dienst auch Audiodaten erwartet, die in diesem Beispiel nicht enthalten sind.It's important to note that the service also expects audio data, which is not included in this sample. Wie bereits erwähnt, wird die Segmentierung empfohlen, ist aber nicht erforderlich.As mentioned earlier, chunking is recommended, however, not required.

POST speech/recognition/conversation/cognitiveservices/v1?language=en-US&format=detailed HTTP/1.1
Accept: application/json;text/xml
Content-Type: audio/wav; codecs=audio/pcm; samplerate=16000
Ocp-Apim-Subscription-Key: YOUR_SUBSCRIPTION_KEY
Host: westus.stt.speech.microsoft.com
Transfer-Encoding: chunked
Expect: 100-continue

HTTP-StatuscodesHTTP status codes

Der HTTP-Statuscode jeder Antwort zeigt den Erfolg oder allgemeine Fehler an.The HTTP status code for each response indicates success or common errors.

HTTP-StatuscodeHTTP status code BESCHREIBUNGDescription Mögliche UrsachePossible reason
100100 ContinueContinue Die ursprüngliche Anforderung wurde akzeptiert.The initial request has been accepted. Mit dem Senden der restlichen Daten fortfahren.Proceed with sending the rest of the data. (Wird mit segmentierter Übertragung verwendet.)(Used with chunked transfer.)
200200 OKOK Die Anforderung war erfolgreich. Der Antworttext ist ein JSON-Objekt.The request was successful; the response body is a JSON object.
400400 Ungültige AnforderungBad request Der Sprachcode wurde nicht bereitgestellt, ist keine unterstützte Sprache, eine ungültige Audiodatei usw.Language code not provided, not a supported language, invalid audio file, etc.
401401 Nicht autorisiertUnauthorized Der Abonnementschlüssel oder das Autorisierungstoken ist in der angegebenen Region ungültig oder ungültiger Endpunkt.Subscription key or authorization token is invalid in the specified region, or invalid endpoint.
403403 VerbotenForbidden Fehlender Abonnementschlüssel oder fehlendes Autorisierungstoken.Missing subscription key or authorization token.

Segmentierte ÜbertragungChunked transfer

Mithilfe der segmentierten Übertragung (Transfer-Encoding: chunked) kann die Erkennungslatenz verringert werden.Chunked transfer (Transfer-Encoding: chunked) can help reduce recognition latency. Es ermöglicht dem Speech-Dienst, mit der Verarbeitung der Audiodatei zu beginnen, während sie übertragen wird.It allows the Speech service to begin processing the audio file while it is transmitted. Der REST-API bietet keine Teil- oder Zwischenergebnisse.The REST API does not provide partial or interim results.

Dieses Codebeispiel zeigt, wie Sie Audio in Blöcken senden.This code sample shows how to send audio in chunks. Nur der erste Block sollte den Header der Audiodatei enthalten.Only the first chunk should contain the audio file's header. request ist ein HTTPWebRequest-Objekt, das mit dem entsprechenden REST-Endpunkt verbunden ist.request is an HTTPWebRequest object connected to the appropriate REST endpoint. audioFile ist der Pfad zu einer Audiodatei auf dem Datenträger.audioFile is the path to an audio file on disk.


    HttpWebRequest request = null;
    request = (HttpWebRequest)HttpWebRequest.Create(requestUri);
    request.SendChunked = true;
    request.Accept = @"application/json;text/xml";
    request.Method = "POST";
    request.ProtocolVersion = HttpVersion.Version11;
    request.Host = host;
    request.ContentType = @"audio/wav; codecs=audio/pcm; samplerate=16000";
    request.Headers["Ocp-Apim-Subscription-Key"] = args[1];
    request.AllowWriteStreamBuffering = false;

using (fs = new FileStream(audioFile, FileMode.Open, FileAccess.Read))
{
    /*
    * Open a request stream and write 1024 byte chunks in the stream one at a time.
    */
    byte[] buffer = null;
    int bytesRead = 0;
    using (Stream requestStream = request.GetRequestStream())
    {
        /*
        * Read 1024 raw bytes from the input audio file.
        */
        buffer = new Byte[checked((uint)Math.Min(1024, (int)fs.Length))];
        while ((bytesRead = fs.Read(buffer, 0, buffer.Length)) != 0)
        {
            requestStream.Write(buffer, 0, bytesRead);
        }

        // Flush
        requestStream.Flush();
    }
}

AntwortparameterResponse parameters

Ergebnisse werden im JSON-Format bereitgestellt.Results are provided as JSON. Das simple-Format schließt diese Felder auf oberster Ebene ein.The simple format includes these top-level fields.

ParameterParameter BeschreibungDescription
RecognitionStatus Status, z.B. Success für erfolgreiche Erkennung.Status, such as Success for successful recognition. Siehe nächste Tabelle.See next table.
DisplayText Der erkannte Text nach Großschreibung, Interpunktion, inverser Textnormalisierung (Umwandlung von gesprochenem Text in kürzere Formen, z.B. 200 für „zweihundert“ oder „Dr. Smith“ für „doctor smith“) und Obszönitätenmaskierung.The recognized text after capitalization, punctuation, inverse text normalization (conversion of spoken text to shorter forms, such as 200 for "two hundred" or "Dr. Smith" for "doctor smith"), and profanity masking. Nur bei Erfolg vorhanden.Present only on success.
Offset Die Zeit (in Einheiten von 100 Nanosekunden), zu der die erkannte Sprache im Audiostream beginnt.The time (in 100-nanosecond units) at which the recognized speech begins in the audio stream.
Duration Die Dauer (in Einheiten von 100 Nanosekunden) der erkannten Sprache im Audiostream.The duration (in 100-nanosecond units) of the recognized speech in the audio stream.

Das RecognitionStatus-Feld kann diese Werte enthalten:The RecognitionStatus field may contain these values:

StatusStatus BeschreibungDescription
Success Die Erkennung war erfolgreich, und das DisplayText-Feld ist vorhanden.The recognition was successful and the DisplayText field is present.
NoMatch Im Audiodatenstrom wurde Sprache erkannt, aber es wurde keine Übereinstimmung mit Wörtern aus der Zielsprache festgestellt.Speech was detected in the audio stream, but no words from the target language were matched. Normalerweise bedeutet dies, dass die Erkennungssprache eine andere Sprache ist als die, die der Benutzer spricht.Usually means the recognition language is a different language from the one the user is speaking.
InitialSilenceTimeout Der Anfang des Audiodatenstroms enthielt nur Stille, und beim Warten auf Sprache wurde das Timeout des Diensts aktiviert.The start of the audio stream contained only silence, and the service timed out waiting for speech.
BabbleTimeout Der Anfang des Audiodatenstroms enthielt nur Rauschen, und beim Warten auf Sprache wurde das Timeout des Diensts aktiviert.The start of the audio stream contained only noise, and the service timed out waiting for speech.
Error Der Erkennungsdienst hat einen internen Fehler erkannt und konnte nicht fortgesetzt werden.The recognition service encountered an internal error and could not continue. Versuchen Sie es noch mal, wenn möglich.Try again if possible.

Hinweis

Wenn die Audiodaten nur aus Obszönitäten bestehen und der profanity-Abfrageparameter auf remove festgelegt ist, gibt der Dienst kein Sprachergebnis zurück.If the audio consists only of profanity, and the profanity query parameter is set to remove, the service does not return a speech result.

Das Format detailed enthält die gleichen Daten wie das Format simple sowie NBest, eine Liste alternativer Interpretationen desselben Erkennungsergebnisses.The detailed format includes the same data as the simple format, along with NBest, a list of alternative interpretations of the same recognition result. Diese Ergebnisse werden abnehmend nach Wahrscheinlichkeit geordnet.These results are ranked from most likely to least likely. Der erste Eintrag ist identisch mit den Haupterkennungsergebnis.The first entry is the same as the main recognition result. Bei Verwendung des Formats detailed wird DisplayText als Display für jedes Ergebnis in der NBest-Liste angegeben.When using the detailed format, DisplayText is provided as Display for each result in the NBest list.

Jedes Objekt in der NBest-Liste enthält:Each object in the NBest list includes:

ParameterParameter BeschreibungDescription
Confidence Die Zuverlässigkeitsbewertung des Eintrags von 0,0 (keine Zuverlässigkeit) bis 1,0 (volle Zuverlässigkeit)The confidence score of the entry from 0.0 (no confidence) to 1.0 (full confidence)
Lexical Die lexikalische Form des erkannten Texts: die tatsächlich erkannten Wörter.The lexical form of the recognized text: the actual words recognized.
ITN Die inverse Textnormalisierung („kanonische Form“) des erkannten Texts mit Telefonnummern, Zahlen, Abkürzungen („doctor smith“ in „dr. smith“) und anderen angewendeten Transformationen.The inverse-text-normalized ("canonical") form of the recognized text, with phone numbers, numbers, abbreviations ("doctor smith" to "dr smith"), and other transformations applied.
MaskedITN Die ITN-Form mit angewendeter Obszönitätenmaskierung, wenn angefordert.The ITN form with profanity masking applied, if requested.
Display Die Anzeigeform des erkannten Texts mit hinzugefügten Satzzeichen und Großschreibung.The display form of the recognized text, with punctuation and capitalization added. Dieser Parameter ist derselbe wie DisplayText, wenn das Format simple entspricht.This parameter is the same as DisplayText provided when format is set to simple.

BeispielantwortenSample responses

Eine typische Antwort für die simple Erkennung:A typical response for simple recognition:

{
  "RecognitionStatus": "Success",
  "DisplayText": "Remind me to buy 5 pencils.",
  "Offset": "1236645672289",
  "Duration": "1236645672289"
}

Eine typische Antwort für die detailed Erkennung:A typical response for detailed recognition:

{
  "RecognitionStatus": "Success",
  "Offset": "1236645672289",
  "Duration": "1236645672289",
  "NBest": [
      {
        "Confidence" : "0.87",
        "Lexical" : "remind me to buy five pencils",
        "ITN" : "remind me to buy 5 pencils",
        "MaskedITN" : "remind me to buy 5 pencils",
        "Display" : "Remind me to buy 5 pencils.",
      },
      {
        "Confidence" : "0.54",
        "Lexical" : "rewind me to buy five pencils",
        "ITN" : "rewind me to buy 5 pencils",
        "MaskedITN" : "rewind me to buy 5 pencils",
        "Display" : "Rewind me to buy 5 pencils.",
      }
  ]
}

Nächste SchritteNext steps