すべてのプロダクト
Search
ドキュメントセンター

AI Guardrails:同期スキャン

最終更新日:Jul 04, 2026

同期画像検出 API (/green/image/scan) を呼び出して、画像コンテンツを審査します。サポートされているシナリオには、ポルノ検出、テロ・政治的に敏感なコンテンツの検出、広告違反検出、QR コード検出、不適切なシーンの検出、ロゴ検出などがあります。

注意事項

/green/image/scan オペレーションは、画像を同期的に審査します。

このオペレーションを呼び出して、同期画像審査タスクを作成します。HTTP リクエストの作成方法については、「リクエスト構造」をご参照ください。または、「SDK 概要」に示されているように、事前に作成されたリクエストを使用することもできます。

  • 課金

    これは有料の API オペレーションです。課金の詳細については、「Content Moderation 料金」をご参照ください。

  • 応答タイムアウト

    同期検出リクエストの最大検出時間は 6 秒です。この時間内に検出が完了しない場合、タイムアウトエラーが返されます。リアルタイムの結果が必要ない場合は、非同期検出を使用できます。それ以外の場合は、API 呼び出しがよりシンプルな同期検出を使用してください。これらの呼び出しでは、タイムアウト期間を 6 秒に設定してください。

  • 返される結果

    同期検出リクエストは通常 1 秒以内に結果を返します。ただし、システムの負荷が高い、画像サイズが大きい、または光学文字認識 (OCR) のためのテキスト量が多いなどの特定のシナリオでは、応答時間が長くなることがあります。

  • 画像要件
    • 画像の URL は HTTP または HTTPS プロトコルを使用する必要があります。

    • サポートされている画像フォーマット:PNG、JPG、JPEG、BMP、GIF、WEBP。

    • 同期および非同期呼び出しの両方で、画像サイズは 20 MB を超えることはできません。

    • 画像は 3 秒以内にダウンロードされる必要があります。ダウンロード時間が 3 秒を超えると、ダウンロードタイムアウトエラーが返されます。

    • 最適なパフォーマンスを得るには、画像の解像度を 256x256 ピクセル以上にすることを推奨します。解像度が低いと、検出精度に影響する可能性があります。

    • 画像検出 API の応答時間は、画像のダウンロード時間に依存します。画像が保存されているストレージサービスが安定していて信頼できることを確認してください。最高のパフォーマンスを得るには、Alibaba Cloud Object Storage Service (OSS) またはコンテンツデリバリーネットワーク (CDN) を使用してください。

表 1. シナリオの説明
シナリオ 説明 検出カテゴリ
ポルノ検出 画像内のポルノまたは性的な示唆を含むコンテンツを検出します。 正常、ポルノ、性的な示唆
テロコンテンツ検出 画像内のテロリストまたは政治的に敏感なコンテンツを検出します。 正常、血なまぐさい、爆発と煙/閃光、特殊な服装、特殊なシンボル、武器、政治、戦闘、集会、行進、交通事故現場、旗、ランドマーク
広告違反検出 画像内のポリシーに違反する広告またはテキストを検出します。 正常、テキストに政治的に敏感なコンテンツが含まれる、テキストにポルノコンテンツが含まれる、テキストに罵詈雑言が含まれる、テキストにテロコンテンツが含まれる、テキストに禁止コンテンツが含まれる、テキストにその他のスパムコンテンツが含まれる、小さな広告ステッカー、QR コードを含む、ミニプログラムコードを含む、その他の広告
説明 ビジネス要件に基づいて検出カテゴリを設定してください。詳細については、「カスタム機械審査ポリシー」をご参照ください。
QR コード検出 画像内の QR コードまたはミニプログラムコードを検出します。 正常、QR コードを含む、ミニプログラムコードを含む
説明 ビジネス要件に基づいて検出カテゴリを設定してください。詳細については、「カスタム機械審査ポリシー」をご参照ください。
不適切なシーンの検出 ブラックスクリーン、黒い枠線、暗い映像、ピクチャーインピクチャー、喫煙、車内でのライブストリーミングなど、画像内の不適切なシーンを検出します。 正常、画像にコンテンツがない (例:ブラックスクリーンまたはホワイトスクリーン)、ピクチャーインピクチャー、喫煙、車内でのライブストリーミング
ロゴ検出 テレビ局のロゴや商標など、画像内のロゴを検出します。 正常、管理対象のロゴを含む、商標を含む

QPS 制限

この API の秒間クエリ数 (QPS) 制限は、ユーザーあたり 50 です。この制限を超えるとスロットリングがトリガーされ、ビジネスに影響を与える可能性があります。呼び出しを適切に計画してください。

リクエストパラメーター

パラメーター 必須 説明
bizType String いいえ default

このフィールドは、ビジネスシナリオを識別します。Content Moderation コンソールでビジネスシナリオを作成できます。詳細については、「審査ルールのカスタマイズ」をご参照ください。

scenes StringArray はい ["porn","terrorism","ad","live","qrcode","logo"] 審査シナリオを指定します。有効な値:
  • porn:ポルノ検出
  • terrorism:テロコンテンツ検出
  • ad:広告および違反検出
  • qrcode:QR コード検出
  • live:不適切なシーンの検出
  • Logo:ロゴ検出
複数のシナリオを指定できます。たとえば、["porn", "terrorism"] は、画像がポルノとテロコンテンツの両方について審査されることを示します。
説明 審査に複数のシナリオを指定した場合、すべてのシナリオの累積料金が請求されます。各シナリオの料金は、審査された画像の数にシナリオの単価を乗じて計算されます。
tasks JSONArray はい 審査タスクをタスクオブジェクトの配列として指定します。1 回のリクエストで最大 100 個のタスクを送信できます。一度に 100 個のタスクを送信するには、同時実行数制限を 100 以上に設定する必要があります。オブジェクト構造の詳細については、「task」をご参照ください。
表 2. Task
パラメーター 必須 説明
clientInfo JSONObject いいえ {"userId":"12023****","userNick":"マイク","userType":"その他"}

クライアント情報。詳細については、「共通パラメーター」の共通クエリパラメーターをご参照ください。

サーバーは、グローバルな clientInfo とリクエストに指定された個別の clientInfo をマージします。

説明

個別の clientInfo が優先されます。

dataId String いいえ cfd33235-71a4-468b-8137-a5ffe323****

検出オブジェクトのデータ ID。

この ID には、大文字と小文字の英字、数字、アンダースコア (_)、ハイフン (-)、ピリオド (.) を含めることができ、128 文字以下である必要があります。ビジネスデータを一意に識別するために使用します。

url String はい http://www.aliyundoc.com/xxx.jpg

パブリックな HTTP または HTTPS の URL。URL の長さは 2,048 文字を超えることはできません。

extras JSONObject いいえ {"hitLibInfo":[{"context":"Haokan Video","libCode":"2144002","libName":"Pre-release Test Ad Similar Text Librarya"}]} API 呼び出しの追加パラメーター。画像審査シナリオでは必須ではありません。
interval Integer いいえ 2 GIF および長尺画像の審査のためのフレームキャプチャ間隔。
  • intervalGIF 画像の場合、審査のためのフレームキャプチャ間隔を指定します。フレームキャプチャは、このパラメーターが設定されている場合にのみ行われます。
  • 長尺画像は、縦長 (ポートレート) または横長 (ランドスケープ) に分類されます。
    • 縦長画像 (高さ > 400 ピクセルかつ縦横比 > 2.5) の場合、画像は分割され、総フレーム数は高さ/幅の結果を四捨五入して計算されます。
    • 横長画像 (幅 > 400 ピクセルかつ横縦比 > 2.5) の場合、画像は分割され、総フレーム数は幅/高さの結果を四捨五入して計算されます。

デフォルトでは、GIF または長尺画像の最初のフレームのみが審査されます。interval パラメーターを設定して、間隔ベースのフレームキャプチャを有効にし、審査コストを削減します。

説明 interval パラメーターは maxFrames パラメーターと一緒に使用する必要があります。たとえば、GIF または長尺画像に対して interval を 2、maxFrames を 10 に設定した場合、システムは 2 フレームごとに 1 フレームを、最大 10 フレームまで審査します。実際に審査されたフレーム数に基づいて請求されます。
maxFrames Integer いいえ 10

キャプチャする最大フレーム数。このパラメーターは GIF および長尺画像の検出にのみ使用されます。デフォルト値:1

interval * maxFrames が GIF または長尺画像の総フレーム数より少ない場合、全体的な検出カバー率を向上させるために、間隔は自動的に (総フレーム数 / maxFrames) に調整されます。

レスポンスパラメーター

パラメーター 説明
code Integer 200

エラーコード。HTTP ステータスコードと同じです。

詳細については、「共通エラーコード」をご参照ください。

msg String OK 応答メッセージ。
dataId String cfd33235-71a4-468b-8137-a5ffe323****

検出オブジェクトのデータ ID。

説明

検出リクエストで dataId が渡された場合、同じ dataId がここで返されます。

taskId String img4wlJcb7p4wH4lAP3111111-123456 審査タスクの ID。
url String http://www.aliyundoc.com/xxx.jpg

パブリックな HTTP または HTTPS の URL。URL の長さは 2,048 文字を超えることはできません。

storedUrl String http://www.aliyundoc.com 証拠保存機能を有効にし、審査タスクが設定されたルールに一致する場合、画像はご利用の Alibaba Cloud OSS バケットに保存され、対応する URL が返されます。
extras JSONObject {"hitLibInfo":[{"context":"Haokan Video","libCode":"2144002","libName":"Ad text library for pre-release testing a"}]} 追加情報。

広告違反 (ad) シナリオでは、以下のコンテンツが返されることがあります。

hitLibInfo:画像内のテキストがカスタムテキストライブラリにヒットした場合、一致したテキストライブラリに関する情報を含む配列を返します。詳細については、「hitLibInfo」をご参照ください。

results JSONArray 審査結果。呼び出しが成功した場合 (code=200)、このパラメーターには 1 つ以上の結果オブジェクトの配列が含まれます。オブジェクト構造については、「result」をご参照ください。
表 3. result
パラメーター 説明
scene String porn 画像審査シナリオ。この値はリクエストで指定されたシナリオと一致します。有効な値:
  • porn:ポルノ検出
  • terrorism:テロコンテンツ検出
  • ad:広告および違反検出
  • qrcode:QR コード検出
  • live:不適切なシーンの検出
  • Logo:ロゴ検出
label String sexy 審査結果のカテゴリ。カテゴリは審査シナリオによって異なります。有効な値:
  • porn (ポルノコンテンツ検出) の場合:
    • normal:正常なコンテンツ
    • sexy:セクシーなコンテンツ
    • porn:ポルノコンテンツ
  • terrorism (テロおよび政治コンテンツ検出) の場合:
    • normal:正常なコンテンツ
    • bloody:血なまぐさいコンテンツ
    • explosion:爆発と煙
    • outfit:特殊な衣装
    • Logo:特殊なロゴ
    • 武器: 武器
    • politics:政治的なコンテンツ
    • violence:暴力
    • crowd:群衆
    • parade:パレード
    • carcrash:自動車事故
    • フラグ:フラグ
    • location:ランドマーク
    • drug:薬物関連のコンテンツ
    • gamble:ギャンブル
    • others:その他の指定されたコンテンツ
  • ad (広告違反) の場合:
    • normal:正常なコンテンツ
    • ad:その他の広告
    • politics:テキスト内の政治的なコンテンツ
    • porn:テキスト内のポルノコンテンツ
    • abuse:テキスト内の罵詈雑言
    • terrorism:テキスト内のテロコンテンツ
    • contraband:テキスト内の禁止コンテンツ
    • spam:テキスト内のジャンクコンテンツ
    • npx:オーバーレイ広告
    • qrcode:QR コード
    • programCode:ミニプログラムコード
  • qrcode (QR コード検出) の場合:
    • normal:正常なコンテンツ
    • qrcode:QR コード
    • programCode:ミニプログラムコード
  • live (不適切なシーンの検出) の場合:
    • normal:正常なコンテンツ
    • meaningless:画像にコンテンツがない (ブラックスクリーンやホワイトスクリーンなど)
    • PIP:ピクチャーインピクチャー
    • smoking:喫煙
    • drivelive:運転中のストリーミング
    • drug:薬物関連のコンテンツ
    • gamble:ギャンブル
  • logo (ロゴ検出) の場合:
    • normal:正常なコンテンツ
    • TV:禁止されたメディアのロゴ
    • trademark:商標
sublabel String porn

検出シナリオにポルノ (porn) およびテロ/政治 (terrorism) が含まれる場合、このフィールドは検出結果の詳細なラベルを返すことができます。

このフィールドはデフォルトでは返されません。

suggestion String block 推奨されるアクション。有効な値:
  • pass:コンテンツは正常です。アクションは不要です。
  • review:結果は不確実です。手動レビューを実行してください。
  • block:コンテンツはポリシーに違反しています。コンテンツを削除またはアクセスを制限してください。
rate Float 91.54

信頼度スコア。有効な値:0 (最も低い信頼度) から 100 (最も高い信頼度)。

suggestionpass の場合、信頼度スコアが高いほど、コンテンツが準拠している可能性が高くなります。suggestionreview または block の場合、信頼度スコアが高いほど、コンテンツが非準拠である可能性が高くなります。

重要

suggestion および label (または一部の API オペレーションでは sublabel) フィールドを使用して、コンテンツが違反しているかどうかを判断することを推奨します。

frames JSONArray 審査対象の画像が長すぎて切り捨てられた場合、切り捨てられた画像の各フレームの一時的な URL を返します。構造については、「frame」をご参照ください。
hintWordsInfo JSONArray 画像に広告違反が含まれる場合、広告テキストから一致したリスクキーワードを返します。構造については、「hintWordsInfo」をご参照ください。
説明 ad 広告違反のシナリオの場合にのみ返されます。
例:
"hintWordsInfo":[{"context":"Sensitive word"}]
qrcodeData StringArray ["http://www.aliyundoc.com/01ZZOliO"] 画像に QR コードが含まれる場合、検出されたすべての QR コードのテキストコンテンツを返します。
説明 QR code) の場合にのみ返されます。
qrcodeLocations JSONArray 画像内で検出された QR コードの座標。構造については、「qrcodeLocation」をご参照ください。
programCodeData JSONArray 画像にミニプログラムコードが含まれる場合、コードの場所を返します。構造については、「programCodeData」をご参照ください。
説明 QR コードQR コード検出シナリオで、ミニプログラムコード認識が有効になっている場合にのみ返されます。
logoData JSONArray 画像にロゴが含まれる場合、検出されたロゴに関する情報を返します。構造については、「logoData」をご参照ください。
説明 Logoロゴ検出シナリオの場合にのみ返されます。
sfaceData JSONArray 画像にテロリストまたは政治的なコンテンツが含まれる場合、検出された顔に関する情報を返します。構造については、「sfaceData」をご参照ください。
説明 テロ: テロと政治コンテンツ検出シナリオでのみ返されます。
ocrData Array Haokan Video 画像内で認識された全文。
説明 デフォルトでは返されません。
表 4. frame
パラメーター 説明
rate Float 89.85

信頼度スコア。有効な値:0 から 100。信頼度スコアが高いほど、検出結果が正確である確率が高くなります。ビジネスロジックでこのスコアを使用することは避けてください。

url String http://www.aliyundoc.com/xxx-0.jpg 切り捨てられた画像フレームの一時的な URL。URL は 5 分間有効です。
表 5. programCodeData
パラメーター 説明
x Float 11.0 ミニプログラムコード領域の左上隅の x 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
y Float 0.0 ミニプログラムコード領域の左上隅の y 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
w Float 402.0 ミニプログラムコード領域の幅。単位:ピクセル。
h Float 413.0 ミニプログラムコード領域の高さ。単位:ピクセル。
表 6. logoData
パラメーター 説明
type String TV 検出されたロゴのタイプ。値は TV で、テレビ局のロゴを示します。
name String xxx TV 検出されたロゴの名前。
x Float 140 ロゴ領域の左上隅の x 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
y Float 68 ロゴ領域の左上隅の y 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
w Float 106 ロゴ領域の幅。単位:ピクセル。
h Float 106 ロゴ領域の高さ。単位:ピクセル。
表 7. sfaceData
パラメーター 説明
x Float 49 顔領域の左上隅の x 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
y Float 39 顔領域の左上隅の y 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
w Float 97 顔領域の幅。単位:ピクセル。
h Float 131 顔領域の高さ。単位:ピクセル。
faces JSONArray [{"name":"Matched person","rate":91.54,"id":"AliFace_0123****"}] 検出された顔に関する情報。各オブジェクトには以下のフィールドが含まれます:
  • name:String。一致した人物の名前。
  • rate:Float。信頼度スコア。値の範囲は 0 (最も低い信頼度) から 100 (最も高い信頼度) です。スコアが高いほど、顔認識結果が正確である確率が高くなります。
  • id:String。顔 ID。
表 8. hitLibInfo
パラメーター 説明
context String Haokan Video カスタムテキストライブラリから一致したコンテンツ。
libCode String 123456 一致したカスタムテキストライブラリのコード。
libName String abc 一致したカスタムテキストライブラリの名前。
表 9. hintWordsInfo
パラメーター 説明
context String Haokan Video 一致したリスクキーワード。
表 10. qrcodeLocation
パラメーター 説明
x Float 11.0 QR コード領域の左上隅の x 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
y Float 0.0 QR コード領域の左上隅の y 座標。原点 (0,0) は画像の左上隅です。単位:ピクセル。
w Float 402.0 QR コード領域の幅。単位:ピクセル。
h Float 413.0 QR コード領域の高さ。単位:ピクセル。
qrcode String http://www.aliyundoc.com/0.ZZOliO 検出された QR コードが指す URL。

リクエストの例
http(s)://[Endpoint]/green/image/scan
&<common request parameters>
{
    "scenes": [
        "porn",
        "terrorism",
        "ad",
        "live",
        "qrcode",
        "logo"
    ],
    "tasks": [
        {
            "dataId": "uuid-xxxx-xxxx-1234",
            "url": "http://www.aliyundoc.com/xxx.jpg"
        }
    ]
}
成功レスポンスの例
{
    "msg": "OK",
    "code": 200,
    "data": [
        {
            "msg": "OK",
            "code": 200,
            "dataId": "cfd33235-71a4-468b-8137-a5ffe323****",
            "extras": {

            },
            "results": [
                {
                    "rate": 99.63,
                    "suggestion": "block",
                    "label": "sexy",
                    "scene": "porn"
                },
                {
                    "label": "politics",
                    "rate": 91.54,
                    "scene": "terrorism",
                    "sfaceData": [
                        {
                            "faces": [
                                {
                                    "id": "AliFace_0123****",
                                    "name": "matched name",
                                    "rate": 91.54
                                }
                            ],
                            "h": 131,
                            "w": 97,
                            "x": 49,
                            "y": 39
                        }
                    ],
                    "suggestion": "block"
                },
                {
                    "extras": {
                        "qrcodes": "http://www.aliyundoc.com/0.ZZOliO",
                        "npx": "72.01",
                        "hitCustomLibCode": "8012345000",
                        "hitCustomLibName": "Name of the custom image library",
                        "hitLibInfo": [
                            {
                                "context": "matched text",
                                "libCode": "123456",
                                "libName": "Name of the text library"
                            }
                        ]
                    },
                    "programCodeData": [
                        {
                            "w": 402.0,
                            "h": 413.0,
                            "x": 11.0,
                            "y": 0.0
                        }
                    ],
                    "frames": [
                        {
                            "rate": 89.85,
                            "url": "http://www.aliyundoc.com/xxx-0.jpg"
                        },
                        {
                            "rate": 68.06,
                            "url": "http://www.aliyundoc.com/xxx-1.jpg"
                        }
                    ],
                    "rate": 99.91,
                    "suggestion": "block",
                    "label": "ad",
                    "scene": "ad"
                },
                {
                    "rate": 99.91,
                    "suggestion": "block",
                    "label": "drug",
                    "scene": "live"
                },
                {
                    "qrcodeData": [
                        "http://www.aliyundoc.com/01ZZOliO"
                    ],
                    "rate": 99.91,
                    "suggestion": "review",
                    "label": "qrcode",
                    "scene": "qrcode"
                },
                {
                    "logoData": [
                        {
                            "name": "xxx TV",
                            "type": "TV",
                            "x": 140,
                            "y": 68,
                            "w": 106,
                            "h": 106
                        }
                    ],
                    "rate": 99.9,
                    "suggestion": "block",
                    "label": "TV",
                    "scene": "logo"
                }
            ],
            "taskId": "img4wlJcb7p4wH4lAP3111111-123456",
            "url": "http://www.aliyundoc.com/xxx.jpg"
        }
    ],
    "requestId": "69B41AE8-1234-1234-1234-12D395695D2D"
}