共用方式為


將程式碼從 REST API 的 v3.1 遷移至 v3.2

語音轉換文字 REST API 可用來進行批次轉譯自訂語音。 本文說明從 3.1 版到 3.2 版的變更。

重要

語音轉換文字 REST API v3.2 是最新版本,已正式推出。 2024 年 9 月將會移除預覽版 3.2-preview.13.2-preview.2*。 語音轉換文字 REST API v3.1 將在宣佈的日期淘汰。 語音轉換文字 REST API v3.0 將於 2026 年 4 月 1 日淘汰。

基底路徑

您必須將程式碼中的基底路徑從 /speechtotext/v3.1 更新為 /speechtotext/v3.2。 例如,若要取得 eastus 區域中的基底模型,請使用 https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base 而不是 https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base

如需詳細資訊,請參閱本指南後面的作業識別碼

批次轉譯

重要

新定價對於透過語音轉換文字 REST API v3.2 進行批次轉譯有效。 如需詳細資訊,請參閱定價指南

回溯相容性限制

請勿使用語音轉換文字 REST API v3.0 或 v3.1 來擷取透過語音轉換文字 REST API v3.2 建立的轉譯。 您會看到如下的錯誤訊息:「API 版本無法用來存取此轉譯。 請使用 API 版本 v3.2 或更高版本。」

語言識別模式

LanguageIdentificationMode 會作為 candidateLocalesspeechModelMapping 的同層級新增至 LanguageIdentificationProperties。 語言辨識可用的模式為 ContinuousSingle。 預設值是連續語言識別。 如需詳細資訊,請參閱語言識別

Whisper 模型

Azure AI 語音現在透過語音轉換文字 REST API v3.2 支援 OpenAI 的 Whisper 模型。 若要深入了解,請參閱建立批次轉譯指南。

注意

Azure OpenAI 服務也支援 OpenAI 的 Whisper 模型,透過同步 REST API 進行語音轉換文字。 如需詳細資訊,請參閱快速入門。 請參閱什麼是 Whisper 模型?深入了解何時使用 Azure AI 語音與Azure OpenAI 服務。

自訂語音

重要

如果基底模型是在 2023 年 10 月 1 日及以後建立的,則會向您收取自訂語音模型訓練的費用。 如果基底模型是在 2023 年 10 月之前建立的,則不會向您收取訓練費用。 如需詳細資訊,請參閱 Azure AI 語音定價

若要以程式設計方式判斷模型是在 2023 年 10 月 1 日之前或之後建立的,請使用版本 3.2 中新增chargedForAdaptation 屬性。

自訂顯示文字格式

為了支援使用自訂顯示文字格式數據的模型調整,Datasets_Create 作業支援 OutputFormatting 數據類型。 如需詳細資訊,請參閱上傳資料集

已為 OutputFormatType 新增了一個定義,此定義具有 LexicalDisplay 列舉值。

"OutputFormatType": {
    "title": "OutputFormatType",
    "enum": [
        "Lexical",
        "Display"
    ],
    "type": "string",
    "x-ms-enum": {
        "name": "OutputFormatType",
        "modelAsString": true,
        "values": [
            {
                "value": "Lexical",
                "description": "Model provides the transcription output without formatting."
            },
            {
                "value": "Display",
                "description": "Model supports display formatting transcriptions output or endpoints."
            }
        ]
    }
},

OutputFormattingData 列舉值已新增至 FileKind (輸入數據類型)。

BaseModelFeatures 中新增了 supportedOutputFormat 屬性。 此屬性位於 BaseModel 定義中。

"BaseModelFeatures": {
    "title": "BaseModelFeatures",
    "description": "Features supported by the model.",
    "type": "object",
    "allOf": [
        {
            "$ref": "#/definitions/SharedModelFeatures"
        }
    ],
    "properties": {
        "supportsAdaptationsWith": {
            "description": "Supported dataset kinds to adapt the model.",
            "type": "array",
            "items": {
                "$ref": "#/definitions/DatasetKind"
            },
            "readOnly": true
        },
        "supportedOutputFormat": {
            "description": "Supported output formats.",
            "type": "array",
            "items": {
                "$ref": "#/definitions/OutputFormatType"
            },
            "readOnly": true
        }
    }
},

調整費用

BaseModelProperties 中新增了 chargeForAdaptation 屬性。 此屬性位於 BaseModel 定義中。

重要

如果基底模型是在 2023 年 10 月 1 日及以後建立的,則會向您收取自訂語音模型訓練的費用。 如果基底模型是在 2023 年 10 月之前建立的,則不會向您收取訓練費用。 如需詳細資訊,請參閱 Azure AI 語音定價

如果 chargeForAdaptation 的值為 true,則會向您收取模型訓練的費用。 如果值為 false,則會向您收取模型訓練的費用。 使用 chargeForAdaptation 屬性 (而非建立日期),以程序設計方式判斷您是否要為訓練模型付費。

"BaseModelProperties": {
    "title": "BaseModelProperties",
    "type": "object",
    "properties": {
        "deprecationDates": {
            "$ref": "#/definitions/BaseModelDeprecationDates"
        },
        "features": {
            "$ref": "#/definitions/BaseModelFeatures"
        },
        "chargeForAdaptation": {
            "description": "A value indicating whether model adaptation is charged.",
            "type": "boolean",
            "readOnly": true
        }
    }
},

文字正規化

DatasetProperties 中新增了 textNormalizationKind 屬性。

TextNormalizationKind 的實體定義:文字正規化的類型。

  • 默認值:默認文字正規化 (例如,在美國英語中,「two to three」替換「2 to 3」)。
  • 無:不會將文字正規化套用至輸入文字。 這個值是覆寫選項,只有在上傳之前將文字正規化時,才應該使用這個值。

評估屬性

EvaluationProperties 屬性中新增了語彙基元計數與權杖錯誤屬性:

  • correctTokenCount1:model1 正確辨識的語彙基元數目。
  • tokenCount1:model1 所處理的語彙基元數目。
  • tokenDeletionCount1:model1 所辨識的語彙基元中被刪除的數目。
  • tokenErrorRate1:用 model1 進行辨識時的語彙基元錯誤率。
  • tokenInsertionCount1:model1 所辨識的語彙基元中插入的數目。
  • tokenSubstitutionCount1:model1 所辨識的單詞中被替換的數目。
  • correctTokenCount2:model2 正確辨識的語彙基元數目。
  • tokenCount2:model2 所處理的語彙基元數目。
  • tokenDeletionCount2:model2 所辨識的語彙基元中被刪除的數目。
  • tokenErrorRate2:用 model2 進行辨識時的語彙基元錯誤率。
  • tokenInsertionCount2:model2 所辨識的語彙基元中插入的數目。
  • tokenSubstitutionCount2:model2 所辨識的單詞中被替換的數目。

模型複製

下列變更適用於您複製模型的案例。

  • 已新增 Models_Copy 作業。 以下是新複製作業中的結構描述:"$ref": "#/definitions/ModelCopyAuthorization"
  • 已淘汰 Models_CopyTo 作業。 以下是已淘汰複製作業中的結構描述:"$ref": "#/definitions/ModelCopy"
  • 已新增傳回 "$ref": "#/definitions/ModelCopyAuthorization" 的新 Models_AuthorizeCopy 作業。 您可以在新的 Models_Copy 作業中使用這個傳回的實體。

已新增 ModelCopyAuthorization 的新實體定義:

"ModelCopyAuthorization": {
    "title": "ModelCopyAuthorization",
    "required": [
        "expirationDateTime",
        "id",
        "sourceResourceId",
        "targetResourceEndpoint",
        "targetResourceId",
        "targetResourceRegion"
    ],
    "type": "object",
    "properties": {
        "targetResourceRegion": {
            "description": "The region (aka location) of the target speech resource (e.g., westus2).",
            "minLength": 1,
            "type": "string"
        },
        "targetResourceId": {
            "description": "The Azure Resource ID of the target speech resource.",
            "minLength": 1,
            "type": "string"
        },
        "targetResourceEndpoint": {
            "description": "The endpoint (base url) of the target resource (with custom domain name when it is used).",
            "minLength": 1,
            "type": "string"
        },
        "sourceResourceId": {
            "description": "The Azure Resource ID of the source speech resource.",
            "minLength": 1,
            "type": "string"
        },
        "expirationDateTime": {
            "format": "date-time",
            "description": "The expiration date of this copy authorization.",
            "type": "string"
        },
        "id": {
            "description": "The ID of this copy authorization.",
            "minLength": 1,
            "type": "string"
        }
    }
},

已新增 ModelCopyAuthorizationDefinition 的新實體定義:

"ModelCopyAuthorizationDefinition": {
    "title": "ModelCopyAuthorizationDefinition",
    "required": [
        "sourceResourceId"
    ],
    "type": "object",
    "properties": {
        "sourceResourceId": {
            "description": "The Azure Resource ID of the source speech resource.",
            "minLength": 1,
            "type": "string"
        }
    }
},

已新增 copy 屬性。

  • copyTo URI:過時模型複製動作的位置。 如需更多詳細資料,請參閱 Models_CopyTo 作業。
  • copy URI:模型複製動作的位置。 如需更多詳細資料,請參閱 Models_Copy 作業。
"CustomModelLinks": {
    "title": "CustomModelLinks",
    "type": "object",
    "properties": {
      "copyTo": {
        "format": "uri",
        "description": "The location to the obsolete model copy action. See operation \"Models_CopyTo\" for more details.",
        "type": "string",
        "readOnly": true
      },
      "copy": {
        "format": "uri",
        "description": "The location to the model copy action. See operation \"Models_Copy\" for more details.",
        "type": "string",
        "readOnly": true
      },
      "files": {
        "format": "uri",
        "description": "The location to get all files of this entity. See operation \"Models_ListFiles\" for more details.",
        "type": "string",
        "readOnly": true
      },
      "manifest": {
        "format": "uri",
        "description": "The location to get a manifest for this model to be used in the on-prem container. See operation \"Models_GetCustomModelManifest\" for more details.",
        "type": "string",
        "readOnly": true
      }
    },
    "readOnly": true
},

作業識別碼

您必須將程式碼中的基底路徑從 /speechtotext/v3.1 更新為 /speechtotext/v3.2。 例如,若要取得 eastus 區域中的基底模型,請使用 https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base 而不是 https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base

下一步