使用 Azure AI 影片索引器 API 自定義語言模型

重要

由於 Azure 媒體服務 淘汰公告,Azure AI 影片索引器會宣告 Azure AI 影片索引器功能調整。 請參閱 Azure 媒體服務 (AMS) 淘汰 的相關變更,以瞭解 Azure AI 影片索引器帳戶的意義。 請參閱準備AMS淘汰:VI更新和移轉指南

Azure AI 影片索引器可讓您建立自定義語言模型,藉由上傳自適配文字來自定義語音辨識,也就是您想要引擎適應其詞彙的網域文字。 定型模型之後,將會辨識在適應文字中顯示的新單字。

如需自定義語言模型的詳細概觀和最佳做法,請參閱 使用 Azure AI 影片索引器自定義語言模型。

您可以使用 Azure AI 影片索引器 API,在您的帳戶中建立和編輯自定義語言模型,如本文所述。 您也可以使用網站,如使用 Azure AI 影片索引器網站自定義語言模型中所述

建立語言模型

建立 語言模型 API 會在指定的帳戶中建立新的自定義語言模型。 您可以在此呼叫中上傳語言模型的檔案。 或者,您可以在這裡建立語言模型,並稍後藉由更新語言模型來上傳模型的檔案。

注意

您仍然必須使用其啟用的檔案將模型定型,模型才能瞭解其檔案的內容。 訓練語言的指示位於下一節。

若要上傳要新增至語言模型的檔案,除了提供上述必要參數的值之外,還必須使用 FormData 上傳本文中的檔案。 有兩種方式可以執行這項工作:

  • 索引鍵是檔名,而值為 txt 檔案。
  • 索引鍵是檔名,而值是 txt 檔案的 URL。

回應

回應會在新建立的語言模型上提供元數據,以及遵循此範例 JSON 輸出格式的每個模型檔案上的元數據:

{
    "id": "dfae5745-6f1d-4edd-b224-42e1ab57a891",
    "name": "TestModel",
    "language": "En-US",
    "state": "None",
    "languageModelId": "00000000-0000-0000-0000-000000000000",
    "files": [
    {
        "id": "25be7c0e-b6a6-4f48-b981-497e920a0bc9",
        "name": "hellofile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-28T11:55:34.6733333"
    },
    {
        "id": "33025f5b-2354-485e-a50c-4e6b76345ca7",
        "name": "worldfile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-28T11:55:34.86"
    }
    ]
}

定型語言模型

語言模型 API 定型為指定帳戶中的自定義語言模型,其中包含在語言模型中上傳至和啟用的檔案中的內容。

注意

您必須先建立語言模型,並上傳其檔案。 您可以在建立語言模型或更新語言模型時上傳檔案。

回應

回應會在新定型的語言模型上提供元數據,以及遵循此範例 JSON 輸出格式的每個模型檔案上的元數據:

{
    "id": "41464adf-e432-42b1-8e09-f52905d7e29d",
    "name": "TestModel",
    "language": "En-US",
    "state": "Waiting",
    "languageModelId": "531e5745-681d-4e1d-b124-12e5ab57a891",
    "files": [
    {
        "id": "84fcf1ac-1952-48f3-b372-18f768eedf83",
        "name": "RenamedFile",
        "enable": false,
        "creator": "John Doe",
        "creationTime": "2018-04-27T20:10:10.5233333"
    },
    {
        "id": "9ac35b4b-1381-49c4-9fe4-8234bfdd0f50",
        "name": "hellofile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-27T20:10:10.68"
    }
    ]
}

傳回 id 的 是用來區分語言模型的唯一標識符,同時 languageModelId 用於 上傳影片以編製索引重新編製影片 API 索引(也稱為 linguisticModelId Azure AI 影片索引器上傳/重新編製索引 API)。

刪除語言模型

刪除 語言模型 API 會從指定的帳戶中刪除自訂語言模型。 使用已刪除之語言模型的任何影片會保留相同的索引,直到您重新編製影片索引為止。 如果您重新編製影片的索引,您可以將新的語言模型指派給影片。 否則,Azure AI 影片索引器會使用其預設模型來重新編製影片的索引。

回應

成功刪除語言模型時,不會傳回內容。

更新語言模型

更新語言模型 API 會更新指定帳戶中的自訂語言人員模型。

注意

您必須已經建立語言模型。 您可以使用此呼叫來啟用或停用模型下的所有檔案、更新語言模型的名稱,以及上傳要新增至語言模型的檔案。

若要上傳要新增至語言模型的檔案,除了提供上述必要參數的值之外,還必須使用 FormData 上傳本文中的檔案。 有兩種方式可以執行這項工作:

  • 索引鍵是檔名,而值為 txt 檔案。
  • 索引鍵是檔名,而值是 txt 檔案的 URL。

回應

回應會在新定型的語言模型上提供元數據,以及遵循此範例 JSON 輸出格式的每個模型檔案上的元數據:

{
    "id": "41464adf-e432-42b1-8e09-f52905d7e29d",
    "name": "TestModel",
    "language": "En-US",
    "state": "Waiting",
    "languageModelId": "531e5745-681d-4e1d-b124-12e5ab57a891",
    "files": [
    {
        "id": "84fcf1ac-1952-48f3-b372-18f768eedf83",
        "name": "RenamedFile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-27T20:10:10.5233333"
    },
    {
        "id": "9ac35b4b-1381-49c4-9fe4-8234bfdd0f50",
        "name": "hellofile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-27T20:10:10.68"
    }
    ]
}

id使用回應中傳回的檔案的 ,下載檔案的內容。

從語言模型更新檔案

更新 檔案 可讓您在指定帳戶的自訂語言模型中更新檔案的名稱和 enable 狀態。

回應

回應會提供您在下列範例 JSON 輸出格式之後更新的檔案元數據。

{
  "id": "84fcf1ac-1952-48f3-b372-18f768eedf83",
  "name": "RenamedFile",
  "enable": false,
  "creator": "John Doe",
  "creationTime": "2018-04-27T20:10:10.5233333"
}

id使用回應中傳回的 檔案的 ,下載檔案的內容。

取得特定語言模型

取得 API 會傳回指定帳戶中指定之語言模型的資訊,例如語言和語言模型中的檔案。

回應

回應會在指定的語言模型上提供元數據,以及遵循此範例 JSON 輸出格式的每個模型檔案上的元數據:

{
    "id": "dfae5745-6f1d-4edd-b224-42e1ab57a891",
    "name": "TestModel",
    "language": "En-US",
    "state": "None",
    "languageModelId": "00000000-0000-0000-0000-000000000000",
    "files": [
    {
        "id": "25be7c0e-b6a6-4f48-b981-497e920a0bc9",
        "name": "hellofile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-28T11:55:34.6733333"
    },
    {
        "id": "33025f5b-2354-485e-a50c-4e6b76345ca7",
        "name": "worldfile",
        "enable": true,
        "creator": "John Doe",
        "creationTime": "2018-04-28T11:55:34.86"
    }
    ]
}

id使用回應中傳回的 檔案的 ,下載檔案的內容。

取得所有語言模型

取得 所有 API 會傳回清單中指定帳戶中的所有自訂語言模型。

回應

回應會提供您帳戶中所有語言模型的清單,以及其每個元數據和檔案,並遵循此範例 JSON 輸出的格式:

[
    {
        "id": "dfae5745-6f1d-4edd-b224-42e1ab57a891",
        "name": "TestModel",
        "language": "En-US",
        "state": "None",
        "languageModelId": "00000000-0000-0000-0000-000000000000",
        "files": [
        {
            "id": "25be7c0e-b6a6-4f48-b981-497e920a0bc9",
            "name": "hellofile",
            "enable": true,
            "creator": "John Doe",
            "creationTime": "2018-04-28T11:55:34.6733333"
        },
        {
            "id": "33025f5b-2354-485e-a50c-4e6b76345ca7",
            "name": "worldfile",
            "enable": true,
            "creator": "John Doe",
            "creationTime": "2018-04-28T11:55:34.86"
        }
        ]
    },
    {
        "id": "dfae5745-6f1d-4edd-b224-42e1ab57a892",
        "name": "AnotherTestModel",
        "language": "En-US",
        "state": "None",
        "languageModelId": "00000000-0000-0000-0000-000000000001",
        "files": []
    }
]

從語言模型刪除檔案

刪除 API 會從指定帳戶中的指定語言模型刪除指定的檔案。

回應

成功從語言模型刪除檔案時,不會傳回內容。

從語言模型取得檔案上的元數據

取得 檔案 API 的元數據會從您帳戶中所選語言模型傳回指定檔案的內容和元數據。

回應

回應會以 JSON 格式提供檔案的內容和元數據,類似於下列範例:

{
    "content": "hello\r\nworld",
    "id": "84fcf1ac-1952-48f3-b372-18f768eedf83",
    "name": "Hello",
    "enable": true,
    "creator": "John Doe",
    "creationTime": "2018-04-27T20:10:10.5233333"
}

注意

此範例檔案的內容是兩行中 「hello」 和 world「 字組」。

從語言模型下載檔案

下載檔案 API 會從指定帳戶中指定的語言模型下載包含指定檔案內容的文字檔。 此文字檔應符合原本上傳之文字文件的內容。

回應

回應是以 JSON 格式下載文本文件的內容。