上傳自訂語音的訓練和測試資料集
您需要音訊和文字資料,以便測試語音辨識的正確性或定型自訂模型。 如需測試或定型模型的支援資料類型相關資訊,請參閱定型和測試資料集。
提示
您也將使用線上轉錄編輯器,以建立和調整已標記的音訊資料集。
上傳資料集
若要在 Speech Studio 中上傳自己的資料集,請遵循下列步驟:
登入 Speech Studio。
選取[自訂語音]>[您的專案名稱]>[語音資料集]>[上傳資料]。
選取 [定型資料] 或 [測試資料] 索引標籤。
選取資料集類型,並選取 [下一步]。
指定資料集位置,並選取 [下一步]。 您可選擇本機檔案,或輸入遠端位置,例如 Azure Blob URL。 如果您選取遠端位置,且未使用受信任的 Azure 服務安全性機制,則遠端位置應該是可使用簡單匿名 GET 要求所擷取的 URL。 例如, SAS URL 或可公開存取的 URL。 不支援需要額外授權或預期使用者互動的 URL。
注意
如果您使用 Azure Blob URL,可以使用受信任的 Azure 服務安全性機制來確保資料集檔案獲得最大安全性。 您使用的技術會與資料集檔案的批次謄寫和純儲存體帳戶 URL 相同。 請參閱此處的詳細資料。
輸入資料集名稱和描述,並選取 [下一步]。
檢閱您的設定,然後選取 [儲存後關閉]。
上傳資料集後,請移至 [定型自訂模型] 頁面以定型自訂模型。
與 Speech Studio 不同的是,使用語音 CLI 和語音轉換文字 REST API 時,您不會選擇資料集上傳時是要進行測試或定型。 您可指定在定型模型或執行測試時的資料集使用方式。
雖然您未指示資料集用於測試或定型,但須指定資料集種類。 資料集種類可用於判斷要建立的資料集類型。 在某些情況下,資料集種類僅用於測試或定型,但不應具有相依性。 語音 CLI 和 REST API kind
值會對應至 Speech Studio 中的選項,如下表所述:
CLI 和 API 種類 | Speech Studio 選項 |
---|---|
原音 | 定型資料:音訊 + 人工標記的轉錄內容 文字記錄 (自動音訊合成) 測試資料:音訊 + 人工標記的轉錄內容 |
AudioFiles | 測試資料:音訊 |
語言 | 定型資料:純文字 |
LanguageMarkdown | 定型資料:Markdown 格式的結構化文字 |
發音 | 定型資料:發音 |
OutputFormatting | 訓練資料:輸出格式 |
重要
您不會使用語音 CLI 或 REST API 直接上傳資料檔。 首先,您會將訓練或測試資料集檔案儲存在語音 CLI 或 REST API 可以存取的 URL 上。 上傳資料集之後,您可以使用語音 CLI 或 REST API 來建立自訂語音測試或訓練的資料集。
若要建立資料集並連線至現有專案,請使用 spx csr dataset create
命令。 根據下列指示來建構要求參數:
將
project
參數設定為現有專案的識別碼。 建議此參數,如此您也可在 Speech Studio 中檢視和管理端點。 您可以執行spx csr project list
命令來取得可用的專案。設定必要的
kind
參數。 訓練資料集種類可能的一組值包括:Acoustic、AudioFiles、Language、LanguageMarkdown 和發音。設定必要的
contentUrl
參數。 此參數為資料集的位置。 如果您未使用受信任的 Azure 服務安全性機制 (請參閱下一個附注) ,則contentUrl
參數應該是可使用簡單匿名 GET 要求所擷取的 URL。 例如, SAS URL 或可公開存取的 URL。 不支援需要額外授權或預期使用者互動的 URL。注意
如果您使用 Azure Blob URL,可以使用受信任的 Azure 服務安全性機制來確保資料集檔案獲得最大安全性。 您使用的技術會與資料集檔案的批次謄寫和純儲存體帳戶 URL 相同。 請參閱此處的詳細資料。
設定必要的
language
參數。 資料集地區設定必須符合專案的地區設定。 稍後無法變更此地區設定。 語音 CLIlanguage
參數會對應至 JSON 要求和回應中的locale
屬性。設定必要的
name
參數。 此參數是顯示在 Speech Studio 中的名稱。 語音 CLIname
參數會對應至 JSON 要求和回應中的displayName
屬性。
以下語音 CLI 命令範例呈現如何建立資料集,並連線至現有專案:
spx csr dataset create --api-version v3.2 --kind "Acoustic" --name "My Acoustic Dataset" --description "My Acoustic Dataset Description" --project YourProjectId --content YourContentUrl --language "en-US"
您應該會收到下列格式的回應本文:
{
"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23",
"kind": "Acoustic",
"links": {
"files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23/files"
},
"project": {
"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
},
"properties": {
"textNormalizationKind": "Default",
"acceptedLineCount": 2,
"rejectedLineCount": 0,
"duration": "PT59S"
},
"lastActionDateTime": "2024-07-14T17:36:30Z",
"status": "Succeeded",
"createdDateTime": "2024-07-14T17:36:14Z",
"locale": "en-US",
"displayName": "My Acoustic Dataset",
"description": "My Acoustic Dataset Description",
"customProperties": {
"PortalAPIVersion": "3"
}
}
回應本文中最上層的 self
屬性為資料集的 URI。 使用此 URI 來取得資料集專案和檔案的詳細資料。 您也可使用此 URI 來更新或刪除資料集。
如需在資料集使用語音 CLI 的說明,請執行下列命令:
spx help csr dataset
與 Speech Studio 不同的是,使用語音 CLI 和語音轉換文字 REST API 時,您不會選擇資料集上傳時是要進行測試或定型。 您可指定在定型模型或執行測試時的資料集使用方式。
雖然您未指示資料集用於測試或定型,但須指定資料集種類。 資料集種類可用於判斷要建立的資料集類型。 在某些情況下,資料集種類僅用於測試或定型,但不應具有相依性。 語音 CLI 和 REST API kind
值會對應至 Speech Studio 中的選項,如下表所述:
CLI 和 API 種類 | Speech Studio 選項 |
---|---|
原音 | 定型資料:音訊 + 人工標記的轉錄內容 文字記錄 (自動音訊合成) 測試資料:音訊 + 人工標記的轉錄內容 |
AudioFiles | 測試資料:音訊 |
語言 | 定型資料:純文字 |
LanguageMarkdown | 定型資料:Markdown 格式的結構化文字 |
發音 | 定型資料:發音 |
OutputFormatting | 訓練資料:輸出格式 |
重要
您不會使用語音 CLI 或 REST API 直接上傳資料檔。 首先,您會將訓練或測試資料集檔案儲存在語音 CLI 或 REST API 可以存取的 URL 上。 上傳資料集之後,您可以使用語音 CLI 或 REST API 來建立自訂語音測試或訓練的資料集。
若要建立資料集並連線至現有專案,請使用語音轉換文字 REST API 的 Datasets_Create 作業。 根據下列指示來建構要求本文:
將
project
屬性設定為現有專案的 URI。 建議此屬性,如此您也可在 Speech Studio 中檢視和管理端點。 您可以提出 Projects_List 要求以取得可用的專案。設定必要的
kind
屬性。 訓練資料集種類可能的一組值包括:Acoustic、AudioFiles、Language、LanguageMarkdown 和發音。設定必要的
contentUrl
屬性。 此屬性為資料集的位置。 如果您未使用受信任的 Azure 服務安全性機制 (請參閱下一個附注) ,則contentUrl
參數應該是可使用簡單匿名 GET 要求所擷取的 URL。 例如, SAS URL 或可公開存取的 URL。 不支援需要額外授權或預期使用者互動的 URL。注意
如果您使用 Azure Blob URL,可以使用受信任的 Azure 服務安全性機制來確保資料集檔案獲得最大安全性。 您使用的技術會與資料集檔案的批次謄寫和純儲存體帳戶 URL 相同。 請參閱此處的詳細資料。
設定必要的
locale
屬性。 資料集地區設定必須符合專案的地區設定。 稍後無法變更此地區設定。設定必要的
displayName
屬性。 此屬性是顯示在 Speech Studio 中的名稱。
使用 URI 提出 HTTP POST 要求,如下列範例所示。 以您的語音資源金鑰取代 YourSubscriptionKey
、以您的語音資源區域取代 YourServiceRegion
,並設定要求本文屬性,如前所述。
curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
"kind": "Acoustic",
"displayName": "My Acoustic Dataset",
"description": "My Acoustic Dataset Description",
"project": {
"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
},
"contentUrl": "https://contoso.com/mydatasetlocation",
"locale": "en-US",
}' "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.2/datasets"
您應該會收到下列格式的回應本文:
{
"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23",
"kind": "Acoustic",
"links": {
"files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23/files"
},
"project": {
"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
},
"properties": {
"textNormalizationKind": "Default",
"acceptedLineCount": 2,
"rejectedLineCount": 0,
"duration": "PT59S"
},
"lastActionDateTime": "2024-07-14T17:36:30Z",
"status": "Succeeded",
"createdDateTime": "2024-07-14T17:36:14Z",
"locale": "en-US",
"displayName": "My Acoustic Dataset",
"description": "My Acoustic Dataset Description",
"customProperties": {
"PortalAPIVersion": "3"
}
}
回應本文中最上層的 self
屬性為資料集的 URI。 使用此 URI 來取得資料集專案和檔案的詳細資料。 您也可使用此 URI 來更新或刪除資料集。
重要
使用 REST API 或語音 CLI 來訓練和測試自訂模型時,無須將資料集連線至自訂語音專案。 但若資料集未連線至任何專案,便無法在 Speech Studio中選取專案並進行定型或測試。