Kötegelt átírás létrehozása

Kötegelt átiratokkal hangadatokat küldhet el egy kötegben. A szolgáltatás átírja a hangadatokat, és egy tárolóban tárolja az eredményeket. Ezután lekérheti az eredményeket a tárolóból.

Fontos

Új díjszabás van érvényben a kötegelt átíráshoz a Speech to text REST API 3.2-es verzióval. További információkért tekintse meg a díjszabási útmutatót.

Előfeltételek

  • A Speech SDK telepítve van.
  • Egy szabványos (S0) beszéderőforrás. Az ingyenes erőforrások (F0) nem támogatottak.

Átírási feladat létrehozása

Átirat létrehozásához használja a Speech to text REST API Transcriptions_Create műveletét. A kérelem törzsének összeállítása az alábbi utasítások szerint:

  • A tulajdonságot vagy contentUrls a tulajdonságot contentContainerUrl kell beállítania. A kötegelt átíráshoz használt Azure Blob Storage-ról további információt a hangfájlok megkeresése kötegelt átíráshoz című témakörben talál.
  • Állítsa be a szükséges locale tulajdonságot. Ennek az értéknek meg kell egyeznie az átíráshoz szükséges hangadatok várt területi beállításával. Később nem módosíthatja a területi beállításokat.
  • Állítsa be a szükséges displayName tulajdonságot. Válasszon egy átírási nevet, amelyre később hivatkozhat. Az átírás nevének nem kell egyedinek lennie, és később módosítható.
  • Ha nem az alapmodellt szeretné használni, állítsa a model tulajdonságot a modellazonosítóra. További információ: Egyéni modell használata és Suttogásos modell használata.
  • Ha szeretné, állítsa be a wordLevelTimestampsEnabled tulajdonságot úgy, hogy true lehetővé tegye a szószintű időbélyegeket az átírási eredményekben. Az alapértelmezett érték false. A Whisper-modellek esetében állítsa be helyette a displayFormWordLevelTimestampsEnabled tulajdonságot. A Suttogás csak megjelenítési modell, így a lexikális mező nincs kitöltve az átiratban.
  • Igény szerint állítsa be a tulajdonságot languageIdentification . A nyelvi azonosítás a hangban beszélt nyelvek azonosítására szolgál a támogatott nyelvek listájával összehasonlítva. Ha beállítja a languageIdentification tulajdonságot, akkor a jelölt területi beállításokat is be kell állítania languageIdentification.candidateLocales .

További információ: Konfigurációs beállítások kérése.

Hozzon létre egy HTTP POST-kérelmet, amely az URI-t használja az alábbi Transcriptions_Create példában látható módon.

  • Cserélje le YourSubscriptionKey a Speech erőforráskulcsot.
  • Cserélje le YourServiceRegion a Speech erőforrásrégióját.
  • A kérés törzstulajdonságainak beállítása a korábban leírtak szerint.
curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "contentUrls": [
    "https://crbn.us/hello.wav",
    "https://crbn.us/whatstheweatherlike.wav"
  ],
  "locale": "en-US",
  "displayName": "My Transcription",
  "model": null,
  "properties": {
    "wordLevelTimestampsEnabled": true,
    "languageIdentification": {
      "candidateLocales": [
        "en-US", "de-DE", "es-ES"
      ],
    }
  },
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions"

A válasz törzsének a következő formátumban kell érkeznie:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/db474955-ab85-4c6c-ba6e-3bfe63d041ba",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/db474955-ab85-4c6c-ba6e-3bfe63d041ba/files"
  },
  "properties": {
    "diarizationEnabled": false,
    "wordLevelTimestampsEnabled": true,
    "channels": [
      0,
      1
    ],
    "punctuationMode": "DictatedAndAutomatic",
    "profanityFilterMode": "Masked",
    "languageIdentification": {
      "candidateLocales": [
        "en-US",
        "de-DE",
        "es-ES"
      ]
    }
  },
  "lastActionDateTime": "2022-10-21T14:18:06Z",
  "status": "NotStarted",
  "createdDateTime": "2022-10-21T14:18:06Z",
  "locale": "en-US",
  "displayName": "My Transcription"
}

A válasz törzsének legfelső szintű self tulajdonsága az átírás URI-ja. Ezzel az URI-val lekérheti az átiratok és az átírási jelentésfájlok URI-ját. Ezzel az URI-val is frissíthet vagy törölhet átírást.

Az átiratok állapotát az Transcriptions_Get művelettel kérdezheti le.

Az eredmények lekérése után rendszeresen hívja Transcriptions_Delete a szolgáltatásból. Másik lehetőségként állítsa be a timeToLive tulajdonságot az eredmények végleges törlésének biztosítására.

Átirat létrehozásához használja a spx batch transcription create parancsot. A kérelemparamétereket az alábbi utasítások szerint hozhatja létre:

  • Adja meg a szükséges content paramétert. Megadhatja az egyes fájlok pontosvesszővel tagolt listáját vagy egy teljes tároló URL-címét. A kötegelt átíráshoz használt Azure Blob Storage-ról további információt a hangfájlok megkeresése kötegelt átíráshoz című témakörben talál.
  • Állítsa be a szükséges language tulajdonságot. Ennek az értéknek meg kell egyeznie az átíráshoz szükséges hangadatok várt területi beállításával. Később nem módosíthatja a területi beállításokat. A Speech CLI language paraméter megfelel a locale JSON-kérés és -válasz tulajdonságának.
  • Állítsa be a szükséges name tulajdonságot. Válasszon egy átírási nevet, amelyre később hivatkozhat. Az átírás nevének nem kell egyedinek lennie, és később módosítható. A Speech CLI name paraméter megfelel a displayName JSON-kérés és -válasz tulajdonságának.

Íme egy példa Speech CLI-parancsra, amely egy átírási feladatot hoz létre:

spx batch transcription create --name "My Transcription" --language "en-US" --content https://crbn.us/hello.wav;https://crbn.us/whatstheweatherlike.wav

A válasz törzsének a következő formátumban kell érkeznie:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/7f4232d5-9873-47a7-a6f7-4a3f00d00dc0",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/7f4232d5-9873-47a7-a6f7-4a3f00d00dc0/files"
  },
  "properties": {
    "diarizationEnabled": false,
    "wordLevelTimestampsEnabled": false,
    "channels": [
      0,
      1
    ],
    "punctuationMode": "DictatedAndAutomatic",
    "profanityFilterMode": "Masked"
  },
  "lastActionDateTime": "2022-10-21T14:21:59Z",
  "status": "NotStarted",
  "createdDateTime": "2022-10-21T14:21:59Z",
  "locale": "en-US",
  "displayName": "My Transcription",
  "description": ""
}

A válasz törzsének legfelső szintű self tulajdonsága az átírás URI-ja. Ezzel az URI-val lekérheti az átiratok és az átírási jelentésfájlok URI-ját. Ezzel az URI-val is frissíthet vagy törölhet átírást.

A Speech CLI átiratokkal kapcsolatos súgójához futtassa a következő parancsot:

spx help batch transcription

Konfigurációs beállítások kérése

Íme néhány tulajdonságbeállítás, amellyel átírást konfigurálhat a Transcriptions_Create művelet meghívásakor.

Tulajdonság Leírás
channels A feldolgozandó csatornaszámok tömbje. Csatornák 0 , és 1 alapértelmezés szerint át vannak írva.
contentContainerUrl Egyéni hangfájlokat vagy egy teljes tárolót is elküldhet.

A hangadatok helyét a vagy a contentContainerUrlcontentUrls tulajdonság használatával kell megadnia. A kötegelt átíráshoz használt Azure Blob Storage-ról további információt a hangfájlok megkeresése kötegelt átíráshoz című témakörben talál.

Ez a tulajdonság nem jelenik meg a válaszban.
contentUrls Egyéni hangfájlokat vagy egy teljes tárolót is elküldhet.

A hangadatok helyét a vagy a contentContainerUrlcontentUrls tulajdonság használatával kell megadnia. További információ: Hangfájlok megkeresése kötegelt átíráshoz.

Ez a tulajdonság nem jelenik meg a válaszban.
destinationContainerUrl Az eredmény egy Azure-tárolóban tárolható. Ha nem ad meg tárolót, a Speech szolgáltatás az eredményeket a Microsoft által felügyelt tárolóban tárolja. Az átírási feladat törlésekor az átírás eredményadatai is törlődnek. További információ, például a támogatott biztonsági forgatókönyvek : Céltároló URL-címének megadása.
diarization Azt jelzi, hogy a Speech szolgáltatásnak meg kell kísérelnie a bemenet diarizálási elemzését, amely várhatóan egy több hangot tartalmazó mono csatorna lesz. A funkció sztereó felvételekkel nem érhető el.

A diarizálás a hangszórók hangadatokban való elválasztásának folyamata. A batch-folyamat több hangszórót is képes felismerni és elkülöníteni a monocsatornás felvételeken.

Adja meg az esetleg beszélő személyek minimális és maximális számát. A tulajdonságot is be kell állítania diarizationEnabled a következőre true: . Az átírási fájl minden átírt kifejezéshez tartalmaz egy speaker bejegyzést.

Ezt a tulajdonságot akkor kell használnia, ha három vagy több hangszórót vár. Két hangszóró esetén a tulajdonság true beállítása diarizationEnabled elegendő. A tulajdonsághasználatra példa: Transcriptions_Create.

A diarizáláshoz használt hangszórók maximális számának 36-nál kevesebbnek kell lennie, és legalább a minSpeakers tulajdonságnak meg kell egyenlõnek lennie. Példa: Transcriptions_Create.

Ha ezt a tulajdonságot választja, a forrás hanghossza nem haladhatja meg a fájlonkénti 240 percet.

Megjegyzés: Ez a tulajdonság csak a Speech to text REST API 3.1-es és újabb verziójával érhető el. Ha ezt a tulajdonságot bármely korábbi verzióval (például 3.0-s verzióval) állítja be, a rendszer figyelmen kívül hagyja, és csak két hangszórót azonosít.
diarizationEnabled Meghatározza, hogy a Speech szolgáltatásnak meg kell kísérelnie a bemenet diarizálási elemzését, amely várhatóan egy két hangot tartalmazó mono csatorna lesz. Az alapértelmezett érték false.

Három vagy több hang esetén a tulajdonságot diarizationis használnia kell. Csak a Speech to text REST API 3.1-es és újabb verziójával használható.

Ha ezt a tulajdonságot választja, a forrás hanghossza nem haladhatja meg a fájlonkénti 240 percet.
displayName A köteg átírásának neve. Válasszon egy nevet, amelyre később hivatkozhat. A megjelenítendő névnek nem kell egyedinek lennie.

Ez a tulajdonság kötelező.
displayFormWordLevelTimestampsEnabled Megadja, hogy szószintű időbélyegeket kell-e hozzáadni az átírási eredmények megjelenítési formájához. Az eredmények az displayWords átiratfájl tulajdonságában jelennek meg. Az alapértelmezett érték false.

Megjegyzés: Ez a tulajdonság csak a Speech to text REST API 3.1-es és újabb verziójával érhető el.
languageIdentification A nyelvi azonosítás a hangban beszélt nyelvek azonosítására szolgál a támogatott nyelvek listájával összehasonlítva.

Ha beállítja a languageIdentification tulajdonságot, akkor annak zárt candidateLocales tulajdonságát is be kell állítania.
languageIdentification.candidateLocales A nyelvazonosításra jelölt területi beállítások, például "properties": { "languageIdentification": { "candidateLocales": ["en-US", "de-DE", "es-ES"]}}. Legalább két és legfeljebb tíz jelölt területi beállítás támogatott, beleértve az átírás fő területi beállítását is.
locale A köteg átírásának területi beállítása. Ennek az értéknek meg kell egyeznie az átíráshoz szükséges hangadatok várt területi beállításával. A területi beállítás később nem módosítható.

Ez a tulajdonság kötelező.
model Beállíthatja, hogy a model tulajdonság egy adott alapmodellt vagy egyéni beszédmodellt használjon. Ha nem adja meg a modelbeállítást, a rendszer az alapértelmezett alapmodellt használja a területi beállításhoz. További információ: Egyéni modell használata és Suttogásos modell használata.
profanityFilterMode Meghatározza, hogyan kezelheti a profanitást a felismerési eredményekben. Az elfogadott értékek a None trágárság szűrésének letiltása, Masked a trágárság csillagokkal való helyettesítése, Removed az összes trágárság eltávolítása az eredményből, vagy Tags trágár címkék hozzáadása. Az alapértelmezett érték Masked.
punctuationMode Meghatározza, hogyan kezelhetők az írásjelek a felismerési eredményekben. Az elfogadott értékek az None írásjelek letiltása, Dictated a explicit (kimondott) írásjelek, Automatic a dekóder írásjelekkel való kezelése, vagy DictatedAndAutomatic diktált és automatikus írásjelek használata. Az alapértelmezett érték DictatedAndAutomatic.

Ez a tulajdonság nem alkalmazható a Whisper-modellekre.
timeToLive Az átírási feladat létrehozása utáni időtartam, amikor az átírási eredmények automatikusan törlődnek. Az érték iso 8601 kódolású időtartam. Adja meg PT12H például 12 órára. Másik lehetőségként az átírási eredmények lekérése után rendszeresen hívhatja Transcriptions_Delete .
wordLevelTimestampsEnabled Megadja, hogy a wordszintű időbélyegek szerepeljenek-e a kimenetben. Az alapértelmezett érték false.

Ez a tulajdonság nem alkalmazható a Whisper-modellekre. A Suttogás csak megjelenítési modell, így a lexikális mező nincs kitöltve az átiratban.

A Speech CLI az átírás konfigurációs beállításaival kapcsolatos súgójához futtassa a következő parancsot:

spx help batch transcription create advanced

Egyéni modell használata

A Batch-átírás az alapértelmezett alapmodellt használja a megadott területi beállításhoz. Az alapértelmezett alapmodell használatához nem kell tulajdonságokat beállítania.

Ha szeretné, módosíthatja az előző létrehozási átírási példát úgy, hogy a model tulajdonságot egy adott alapmodell vagy egyéni beszédmodell használatára állítja be.

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "contentUrls": [
    "https://crbn.us/hello.wav",
    "https://crbn.us/whatstheweatherlike.wav"
  ],
  "locale": "en-US",
  "displayName": "My Transcription",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "properties": {
    "wordLevelTimestampsEnabled": true,
  },
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions"
spx batch transcription create --name "My Transcription" --language "en-US" --content https://crbn.us/hello.wav;https://crbn.us/whatstheweatherlike.wav --model "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"

Ha egyéni beszédmodellt szeretne használni a kötegelt átíráshoz, szüksége van a modell URI-jára. A válasz törzsének legfelső szintű self tulajdonsága a modell URI-ja. A modell létrehozásakor vagy lekérésekor lekérheti a modell helyét. További információkért tekintse meg a modell létrehozása JSON-válasz példáját.

Tipp.

Nem szükséges üzemeltetett üzembe helyezési végpontot használni az egyéni beszédhez a kötegátírási szolgáltatással. Az erőforrásokat akkor lehet megőrizni, ha az egyéni beszédmodellt csak kötegelt átíráshoz használja.

A lejárt modellek kötegelt átírási kérelmei 4xx hibával meghiúsulnak. Állítsa be a model tulajdonságot alapmodellre vagy nem lejárt egyéni modellre. Ellenkező esetben ne tartalmazza a tulajdonságot, model hogy mindig a legújabb alapmodellt használja. További információ: Modell kiválasztása és egyéni beszédmodell életciklusa.

Whisper-modell használata

Az Azure AI Speech a batch transcription API használatával támogatja az OpenAI Whisper modelljét. A Whisper modellt kötegelt átíráshoz használhatja.

Feljegyzés

Az Azure OpenAI szolgáltatás támogatja az OpenAI Suttogó modelljét is a szöveghez való beszédhez szinkron REST API-val. További információ: Speech to text with the Azure OpenAI Whisper model. További információ az Azure AI Speech és az Azure OpenAI szolgáltatás használatáról: Mi a Whisper-modell?

Ha suttogó modellt szeretne használni a kötegelt átíráshoz, be kell állítania a tulajdonságot model . A Whisper egy csak megjelenített modell, így a lexikális mező nem lesz kitöltve a válaszban.

Fontos

A Whisper-modellek esetében mindig a speech to text API 3.2-es verzióját kell használnia.

A suttogásos modellek kötegelt átírással támogatottak az Usa keleti régiójában, az USA középső régiójában, az USA északi középső régiójában, az USA déli középső régiójában, Délkelet-Ázsiában és Nyugat-Európában.

Models_ListBaseModels kérést intézhet az összes területi beállításhoz elérhető alapmodellek beszerzéséhez.

Hozzon létre egy HTTP GET kérést a régióra vonatkozó eastus alábbi példában látható módon. Cserélje le YourSubscriptionKey a Speech erőforráskulcsot. Cserélje le eastus , ha másik régiót használ.

curl -v -X GET "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/models/base" -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey"

Alapértelmezés szerint csak a 100 legrégebbi alapmodell lesz visszaadva. Az eredmények lapozásához használja a skip és top a lekérdezési paramétereket. A következő kérés például az első 100 után a következő 100 alapmodellt adja vissza.

curl -v -X GET "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/models/base?skip=100&top=100" -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey"

Győződjön meg arról, hogy a Speech-erőforrás konfigurációs változóit az egyik támogatott régióban állítja be. A parancs futtatásával spx csr list --base elérhető alapmodelleket kaphat az összes területi beállításhoz.

spx csr list --base --api-version v3.2-preview.2

A displayName Whisper-modell tulajdonsága tartalmazza a "Whisper" kifejezést, ahogyan az ebben a példában látható. A Suttogás csak megjelenítési modell, így a lexikális mező nincs kitöltve az átiratban.

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/models/base/e418c4a9-9937-4db7-b2c9-8afbff72d950",
  "links": {
    "manifest": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/models/base/e418c4a9-9937-4db7-b2c9-8afbff72d950/manifest"
  },
  "properties": {
    "deprecationDates": {
      "adaptationDateTime": "2025-04-15T00:00:00Z",
      "transcriptionDateTime": "2026-04-15T00:00:00Z"
    },
    "features": {
      "supportsTranscriptions": true,
      "supportsEndpoints": false,
      "supportsTranscriptionsOnSpeechContainers": false,
      "supportsAdaptationsWith": [
        "Acoustic"
      ],
      "supportedOutputFormats": [
        "Display"
      ]
    },
    "chargeForAdaptation": true
  },
  "lastActionDateTime": "2024-02-29T15:53:28Z",
  "status": "Succeeded",
  "createdDateTime": "2024-02-29T15:46:07Z",
  "locale": "en-US",
  "displayName": "20240228 Whisper Large V2",
  "description": "OpenAI Whisper Model in Azure AI Speech (Whisper v2-large)"
},

A teljes modell URI-jának beállítása a régióra eastus vonatkozó példában látható módon. Cserélje le YourSubscriptionKey a Speech erőforráskulcsot. Cserélje le eastus , ha másik régiót használ.

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "contentUrls": [
    "https://crbn.us/hello.wav",
    "https://crbn.us/whatstheweatherlike.wav"
  ],
  "locale": "en-US",
  "displayName": "My Transcription",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/models/base/d9cbeee6-582b-47ad-b5c1-6226583c92b6"
  },
  "properties": {
    "wordLevelTimestampsEnabled": true,
  },
}'  "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/transcriptions"
spx batch transcription create --name "My Transcription" --language "en-US" --content https://crbn.us/hello.wav;https://crbn.us/whatstheweatherlike.wav --model "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2-preview.2/models/base/d9cbeee6-582b-47ad-b5c1-6226583c92b6" --api-version v3.2-preview.2

Céltároló URL-címének megadása

Az átírási eredmény egy Azure-tárolóban tárolható. Ha nem ad meg tárolót, a Speech szolgáltatás az eredményeket a Microsoft által felügyelt tárolóban tárolja. Ebben az esetben az átírási feladat törlésekor az átírás eredményadatai is törlődnek.

A kötegátírás eredményeit egy írható Azure Blob Storage-tárolóban tárolhatja a kötegelt átírás létrehozási kérésének lehetőségéveldestinationContainerUrl. Ez a beállítás csak alkalmi SAS URI-t használ, és nem támogatja a megbízható Azure-szolgáltatások biztonsági mechanizmusát. Ez a beállítás nem támogatja az Access szabályzatalapú SAS-t sem. A céltároló Tárfiók-erőforrásának minden külső forgalmat engedélyeznie kell.

Ha az átírási eredményeket egy Azure Blob Storage-tárolóban szeretné tárolni a Megbízható Azure-szolgáltatások biztonsági mechanizmusával, fontolja meg a Saját tárolás (BYOS) használatát. További információ: A saját tárterület (BYOS) Speech-erőforrás használata beszédről szövegre.