共用方式為


快速入門:分析多模式內容 (預覽)

多模式 API 會分析包含影像內容和文字內容的資料,協助讓應用程式和服務更加安全,免受使用者產生或 AI 生成的有害內容影響。 一起分析影像及其相關聯的文字內容可保留語境 (context),並提供對於內容的更全面理解。

如需有關篩選內容方式的詳細資訊,請參閱有害類別概念頁面。 有關 API 輸入限制,請參閱「概觀」的輸入要求一節。

重要

僅某些 Azure 區域提供此功能。 請參閱區域可用性 (英文)。

必要條件

  • Azure 訂用帳戶 - 建立免費帳戶
  • 擁有 Azure 訂用帳戶之後,在 Azure 入口網站中建立 Content Safety 資源,以取得您的金鑰和端點。 輸入您資源的唯一名稱,選取您的訂用帳戶,然後選取資源群組、支援的區域,以及支援的定價層。 然後選取建立
    • 部署資源需要幾分鐘的時間。 完成後,選取 [移至資源]。 在左側窗格中,於 [資源管理] 下選取 [訂用帳戶金鑰和端點]。 將端點和任一索引鍵值複製到暫存位置,以供稍後使用。
  • 已安裝下列其中一項:

使用文字分析影像

下一節會逐步解說使用 cURL 進行多模式調節要求的範例。

準備範例影像

選擇要分析的範例影像,並將其下載到您的裝置。

如需影像限制,請參閱輸入需求 (英文)。 如果您的格式是動畫,服務會擷取第一個畫面以執行分析。

您可以透過下列兩種方法之一來輸入影像:本機 FilestreamBlob 儲存體 URL

  • 本機 Filestream (建議):將您的影像編碼為 base64。 您可以使用 codebeautify 之類的網站來執行編碼。 然後將編碼的字串儲存到暫存位置。
  • Blob 儲存體 URL:將您的影像上傳至 Azure Blob 儲存體帳戶。 請遵循 Blob 儲存體快速入門,以了解如何執行這項操作。 然後開啟 Azure 儲存體總管,並取得影像的 URL。 請將其儲存至暫存位置。

使用文字分析影像

將下列命令貼上至文字編輯器,並進行下列變更。

  1. <endpoint> 取代為您的資源端點 URL。
  2. 以您的金鑰取代 <your_subscription_key>
  3. 使用 "content" 欄位或 "blobUrl" 欄位填入本文中的 "image" 欄位。 例如:{"image": {"content": "<base_64_string>"}{"image": {"blobUrl": "<your_storage_url>"}
  4. 或者,將 "text" 欄位的值取代為您要分析的文字。
curl --location '<endpoint>/contentsafety/imageWithText:analyze?api-version=2024-09-15-preview ' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data '{
  "image": {
      "content": "<base_64_string>"
 },
  "categories": ["Hate","Sexual","Violence","SelfHarm"],
  "enableOcr": true,
  "text": "I want to kill you"
}'

注意

如果您使用 Blob 儲存體 URL,要求本文看起來應如下所示:

{
  "image": {
    "blobUrl": "<your_storage_url>"
  }
}

下欄欄位必須包含在 URL 中:

名稱 是必要的嗎? 描述 類型
API 版本 必要 這是要檢查的 API 版本。 目前的版本為:api-version=2024-09-15。 範例: <endpoint>/contentsafety/imageWithText:analyze?api-version=2024-09-15 String

要求本文中的參數在此表中定義:

名稱 描述 類型
內容或 blobUrl (必要) 影像的內容或 Blob URL。 照可以是 base64 編碼的位元組或 Blob URL。 如果提供兩者,則會拒絕要求。 影像允許的大小上限為 7,200 x 7,200 像素,檔案大小上限為 4 MB。 影像的大小下限為 50 像素 x50 像素。 String
text (選用) 附加至影像的文字。 我們在一個文字要求中最多支援 1000 個字元 (Unicode 字碼指標)。 String
enableOcr (必要) 當設定為 true 時,我們的服務將會執行 OCR,並同時使用輸入影像分析偵測到的文字。 我們可以從輸入影像辨識最多 1000 個字元 (Unicode 字碼指標)。 其他字元將會截斷。 布林值
categories (選用) 假定這是類別名稱的陣列。 如需可用類別名稱的清單,請參閱危害類別指南。 如果未指定任何類別,則會使用這四個類別。 我們使用多個類別來取得單一要求中的分數。 列舉

開啟命令提示字元視窗並執行 cURL 命令。

輸出

您應該會在主控台中看到顯示為 JSON 資料的影像和文字調節結果。 例如:

{
  "categoriesAnalysis": [
    {
      "category": "Hate",
      "severity": 2
    },
    {
      "category": "SelfHarm",
      "severity": 0
    },
    {
      "category": "Sexual",
      "severity": 0
    },
    {
      "category": "Violence",
      "severity": 0
    }
  ]
}

輸出中的 JSON 欄位定義如下:

名稱 描述 類型
categoriesAnalysis API 預測的每個輸出類別。 分類可以為多標籤的。 例如,影像上傳到影像調節模型時,可以同時分類為色情內容和暴力內容。 傷害類別 String
嚴重性 每個傷害類別中旗標的嚴重性層級。 傷害類別 整數