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

AI Guardrails:画像審査 2.0 非同期検出 API

最終更新日:Feb 04, 2026

機能紹介

画像審査 2.0 API は、オンラインコンテンツの規制に違反したり、プラットフォームの秩序を乱したり、ユーザーエクスペリエンスに悪影響を及ぼしたりする画像内のコンテンツや要素を識別します。 40 以上のコンテンツリスクラベルと 40 以上のリスク管理項目をサポートしています。 Content Moderation の画像審査 2.0 を使用すると、API が返すリスクラベルと信頼度スコアに基づいて、画像の審査やガバナンスの対策を策定できます。 これらの対策は、業界標準やプラットフォームのルールに合わせて調整できます。 詳細については、「画像審査 2.0 の概要と課金」をご参照ください。

ご利用ガイド

  1. Alibaba Cloud アカウントを登録します。 できます。 画面の指示に従って登録を完了してください。

  2. Content Moderation の従量課金方式を有効化します。 ことを確認してください。 有効化は無料です。 API の使用を開始すると、使用量に基づいて請求書が自動的に生成されます。 詳細については、「課金」をご参照ください。

  3. AccessKey を作成します。 RAM で AccessKey を作成したことを確認してください。 RAM ユーザーの AccessKey を使用する場合、Alibaba Cloud アカウントを使用して RAM ユーザーに `AliyunYundunGreenWebFullAccess` 権限を付与する必要があります。 詳細については、「RAM 権限付与」をご参照ください。

  4. API を統合します。 ソフトウェア開発キット (SDK) を使用して API を呼び出すことを推奨します。 詳細については、「画像審査 2.0 SDK とアクセスガイド」をご参照ください。

  5. 画像審査 2.0 の非同期検出サービスには、次の 2 つの API 操作が含まれます。

    • ImageAsyncModeration:非同期の画像審査タスクを送信します。

    • DescribeImageModerationResult:審査タスクの結果を取得します。

非同期検出タスクの送信

手順

この API 操作を呼び出して、画像コンテンツ検出タスクを作成できます。 HTTP リクエストの構築方法については、「ネイティブ HTTP 呼び出し」をご参照ください。 事前に構築された HTTP リクエストを使用することもできます。 詳細については、「アクセスガイド」をご参照ください。

  • サービス API:ImageAsyncModeration

  • サポートされるリージョンとエンドポイント

    リージョン

    パブリックエンドポイント

    VPC エンドポイント

    サポートされるサービス

    シンガポール

    https://green-cip.ap-southeast-1.aliyuncs.com

    https://green-cip-vpc.ap-southeast-1.aliyuncs.com

    baselineCheck_global

  • 課金情報

    これは有料の API 操作です。 HTTP ステータスコードが 200 を返すリクエストのみが課金されます。 他のエラーコードを返すリクエストは課金されません。 課金方法の詳細については、「課金」をご参照ください。

  • 画像要件

    • サポートされている画像フォーマットは、PNG、JPG、JPEG、BMP、WEBP、TIFF、SVG、HEIF (最長辺が 8,192 px 未満である必要があります)、GIF (最初のフレームのみ使用)、ICO (最後の画像のみ使用) です。

    • 画像のサイズは 20 MB を超えることはできません。 高さまたは幅は 16,384 px を超えることはできず、総ピクセル数は 1 億 6700 万を超えることはできません。 画像の解像度は 200 × 200 px 以上にすることを推奨します。 解像度が低いと、審査アルゴリズムのパフォーマンスに影響する可能性があります。

    • 画像のダウンロード時間は 3 秒に制限されています。 ダウンロードに 3 秒以上かかると、タイムアウトエラーが返されます。

  • 応答:非同期検出タスクはリアルタイムで結果を返しません。 コールバックまたはポーリングを使用して検出結果を取得する必要があります。 結果は最大 3 日間保存されます。

    • コールバックを使用して検出結果を取得する:非同期検出タスクを送信する際に、リクエストに callback パラメーターを含めることで、検出結果を自動的に受信します。

    • ポーリングを使用して検出結果を取得する:非同期検出タスクを送信する際に、callback パラメーターを含めません。 タスクを送信した後、結果クエリ API 操作を呼び出して検出結果を取得する必要があります。 非同期検出タスクは処理のためにキューに入れられます。 結果は通常 24 時間以内に利用可能になります。

QPS 制限

この API 操作に対する単一の Alibaba Cloud アカウントの 1 秒あたりのクエリ数 (QPS) 制限は 100 です。 この制限を超えると、API 呼び出しがスロットリングされ、ビジネス運用に影響を与える可能性があります。 妥当な頻度で API 操作を呼び出すことを推奨します。 ビジネスでより高い QPS 制限が必要な場合は、アカウントマネージャーにご連絡ください。

デバッグ

API を統合する前に、Alibaba Cloud OpenAPI を使用して 画像審査 2.0 API 操作をオンラインでデバッグできます。 これにより、サンプルコードと SDK の依存関係情報を表示して、API 操作とそのパラメーターの使用方法を理解できます。

重要

オンラインデバッグ機能は、現在ログインしているアカウントを使用して Content Moderation API を呼び出します。 そのため、呼び出しは課金対象の使用量に含まれます。

リクエストパラメーター

リクエストに含める必要がある共通リクエストパラメーターについては、「共通パラメーター」をご参照ください。

リクエストボディは、次のフィールドを含む JSON 構造体です。

名前

タイプ

必須

説明

Service

String

はい

baselineCheck_global

画像審査 2.0 でサポートされている検出サービス。 有効な値:

  • baselineCheck_global:一般的なベースライン検出

説明

サービス間の違いについては、「サービスの説明」をご参照ください。

ServiceParameters

JSONString

はい

検出対象のコンテンツに関連するパラメーターのセット。 値は JSON 文字列です。 各文字列の説明については、「ServiceParameters」をご参照ください。

表 1. ServiceParameters

名前

タイプ

必須

説明

imageUrl

String

はい。 画像審査 Pro は、画像を渡す 3 つの方法をサポートしています。 いずれか 1 つを選択してください。

  • 検出に画像 URL を使用します。 `imageUrl` を渡します。

  • 検出に OSS 権限付与を使用します。 `ossBucketName`、`ossObjectName`、および `ossRegionId` を渡す必要があります。

  • ローカルイメージを検出に使用します。このメソッドは、お客様の OSS ストレージ領域を使用せず、アップロードされたファイルは 30 分間のみ保存されます。ローカルイメージのアップロード機能は SDK に統合されています。コード例については、「画像審査拡張版 2.0 SDK および統合ガイド」をご参照ください。

https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png

検出対象のオブジェクトの URL。 URL がパブリックネットワーク経由でアクセス可能であることを確認してください。 URL は最大 2,048 文字です。

説明

URL には中国語の文字を含めることはできません。 リクエストごとに 1 つの URL のみを渡すようにしてください。

ossBucketName

String

bucket_01

権限が付与された OSS バケットの名前。

説明

OSS 画像の内部 URL を使用するには、まず Alibaba Cloud アカウントを使用して クラウドリソースアクセス権限付与ページ に移動し、`AliyunCIPScanOSSRole` ロールを付与する必要があります。

ossObjectName

String

2022023/04/24/test.jpg

権限が付与された OSS バケット内のファイルの名前。

説明

1. OSS から元のファイル名を渡します。 画像処理パラメーターを追加することはできません。 画像処理パラメーターを追加するには、imageUrl アドレスを使用します。

2. ファイル名に中国語の文字やスペースが含まれている場合は、そのまま渡します。 URL エンコードする必要はありません。

ossRegionId

String

cn-beijing

OSS バケットが配置されているリージョン。

dataId

String

いいえ

img123****

検出されたオブジェクトに対応するデータ ID。

大文字と小文字、数字、アンダースコア (_)、ハイフン (-)、ピリオド (.) を含めることができます。 最大 64 文字の長さで、ビジネスデータを一意に識別するために使用できます。

callback

String

いいえ

http://www.aliyundoc.com

検出結果がコールバック通知として送信される URL。 HTTP および HTTPS URL がサポートされています。 このフィールドが空の場合、定期的に検出結果をポーリングする必要があります。

コールバック API は、POST メソッド、UTF-8 エンコーディング、およびフォームパラメーター ReqIdChecksumContent をサポートする必要があります。

Content Moderation は、次のルールと形式に従って ReqIdChecksum、および Content を設定し、コールバック API を呼び出して検出結果を返します。

  • ReqId:非同期検出タスクの送信時に返されるリクエスト ID。

  • Checksumユーザー UID + seed + content を連結し、SHA256 アルゴリズムを適用して生成された文字列。 ユーザー UID は Alibaba Cloud アカウント ID であり、Alibaba Cloud 管理コンソールで確認できます。 改ざん防止のため、プッシュされた結果を受信したときに、同じアルゴリズムを使用して文字列を生成し、Checksum と照合して検証できます。

    説明

    ユーザー UID は Alibaba Cloud アカウントの UID でなければならず、RAM ユーザーの UID ではありません。

  • Content:JSON 文字列。 JSON オブジェクトに解析して反転させます。 Content の結果の例については、検出結果のクエリの戻り例をご参照ください。

説明

サーバー側のコールバック API が Content Moderation によってプッシュされた結果を受信した後、HTTP ステータスコード 200 を返した場合、受信は成功したと見なされます。 他のすべての HTTP ステータスコードは受信失敗と見なされます。 受信に失敗した場合、Content Moderation は検出結果のプッシュを最大 3 回まで再試行します。 3 回の再試行後も成功しない場合、それ以上プッシュされません。 コールバック API のステータスを確認することを推奨します。

seed

String

いいえ

abc****

コールバック通知リクエストの署名に使用されるランダムな文字列。

文字、数字、アンダースコア (_) を含めることができ、最大 64 文字です。 コールバック通知を受信したときに、リクエストが Alibaba Cloud Content Moderation サービスによって開始されたことを確認するためにカスタマイズできます。

説明

このフィールドは、コールバックを使用する場合に必須です。

cryptType

String

いいえ

SHA256

コールバック通知 (callback) を使用する場合、通知コンテンツの暗号化アルゴリズムを設定します。 Content Moderation は、指定されたアルゴリズムを使用して返された結果 (ユーザー UID + seed + content から連結された文字列) を暗号化してから、コールバック通知アドレスに送信します。 有効な値:

  • SHA256 (デフォルト):SHA256 暗号化アルゴリズムを使用します。

  • SM3:中国固有の HMAC-SM3 暗号化アルゴリズムを使用します。 小文字と数字の 16 進数文字列を返します。 たとえば、SM3 で暗号化された `abc` が返されます。

interval

Integer

いいえ

1

フレームキャプチャの頻度。GIF および長い画像の検出に固有です。 この値が存在する場合にのみ、GIF および長い画像でフレームキャプチャが実行されます。

  • GIF は画像フレームの配列と見なすことができます。 interval パラメーターは、検出のために 1 つをキャプチャする前にスキップするフレーム数を指定します。

  • 長い画像は、縦長の画像と横長の画像に分けられます。

    • 縦長の画像 (高さ > 400 ピクセル、高さと幅の比率 > 2.5) の場合、画像の総数は (高さ / 幅) を丸めて計算され、それに応じて画像がスライスされます。

    • 横長の画像 (幅 > 400 ピクセル、幅と高さの比率 > 2.5) の場合、画像の総数は (幅 / 高さ) を丸めて計算され、それに応じて画像がスライスされます。

この値が渡されない場合、デフォルトでは GIF の最初のフレームのみが検出され、長い画像は検出前に圧縮されます。

説明

interval パラメーターは maxFrameNum パラメーターと一緒に使用する必要があります。 たとえば、interval を 2、maxFrameNum を 10 に設定した場合、GIF または長い画像を検出する際に、2 フレームごとに 1 フレームが検出され、最大 10 フレームまで検出されます。 課金は、実際に検出されたフレーム数に基づきます。

maxFrameNum

Integer

いいえ

10

キャプチャする最大フレーム数。GIF および長い画像の検出に固有です。 デフォルト値は 10 で、最大 10 フレームがキャプチャされることを意味します。

値は 1 から 100 の間でなければなりません。

interval* maxFrameNum が GIF または長い画像のフレーム数より少ない場合、フレームキャプチャ間隔は自動的に (GIF または長い画像のフレーム数) / maxFrameNum に変更され、全体的な検出効果が向上します。

referer

String

いいえ

www.aliyun.com

リファラーリクエストヘッダー。ホットリンク保護などのシナリオで使用されます。 長さは 256 文字を超えることはできません。

infoType

String

はい

customImage,textInImage

取得する補助情報。 有効な値:

  • customImage:カスタムイメージライブラリのヒット情報

  • textInImage:画像内のテキスト情報

  • publicFigure:公人のヒット情報

  • logoData:ロゴ情報

複数のタイプをコンマで区切って指定できます。 たとえば、「customImage,textInImage」は、カスタムイメージライブラリと画像内テキスト情報の両方を返します。

説明

公人およびロゴ情報は、高度な画像審査のサービスで返すことができます。 詳細については、「サービスの説明」をご参照ください。

戻りデータ

名前

タイプ

説明

Code

Integer

200

ステータスコード。 詳細については、「コードの説明」をご参照ください。

Msg

String

OK

リクエストに対する応答メッセージ。

RequestId

String

ABCD1234-1234-1234-1234-123****

リクエスト ID。

Data

Object

検出結果。

ReqId

String

ABCD1234-1234-1234-1234-123****

リクエスト ID。 審査タスクの結果をクエリするために使用できます。

DataId

String

img123******

検出されたオブジェクトに対応するデータ ID。

リクエスト例

{
    "Service": "baselineCheck",
    "ServiceParameters": {
        "imageUrl": "https://img.alicdn.com/tfs/TB1Mq6ZmCslXu8jSZFuXXXg7FXa-1440-568.jpg",
        "dataId": "img123******",
        "interval": 1,
        "maxFrameNum": 50
    }
}

応答例

{
    "Msg": "OK",
    "Code": 200,
    "RequestId": "ABCD1234-1234-1234-1234-1234XYZ",
    "Data": {
        "ReqId": "ABCD1234-1234-1234-1234-1234XYZ",
        "DataId": "img123******"
    }
}

タスク結果の取得

API の説明

  • サービス API:DescribeImageModerationResult。画像審査 2.0 の審査タスクの結果を取得します。

  • 課金情報:この API 操作は課金されません。

  • クエリタイムアウト:クエリ間隔を 30 秒に設定することを推奨します。 これは、非同期検出タスクを送信してから 30 秒後に結果をクエリする必要があることを意味します。 結果は最大 3 日間保存され、その後自動的に削除されます。

QPS 制限

この API 操作に対する単一の Alibaba Cloud アカウントの QPS 制限は 100 です。 この制限を超えると、API 呼び出しがスロットリングされ、ビジネス運用に影響を与える可能性があります。 妥当な頻度で API 操作を呼び出すことを推奨します。

デバッグ

API を統合する前に、Alibaba Cloud OpenAPI を使用して 画像審査 2.0 タスク結果の取得 API 操作をオンラインでデバッグできます。 これにより、サンプルコードと SDK の依存関係情報を表示して、API 操作とそのパラメーターの使用方法を理解できます。

リクエストパラメーター

名前

タイプ

必須

説明

ReqId

String

はい

ABCD1234-1234-1234-1234-123****

リクエスト ID。 これは、画像審査 2.0 同期検出 API によって返される RequestId フィールドです。

戻りデータ

名前

タイプ

説明

RequestId

String

ABCD1234-1234-1234-1234-123****

このリクエストの ID。 これは、Alibaba Cloud がリクエストに対して生成した一意の識別子であり、トラブルシューティングに使用できます。

Data

Object

画像コンテンツの検出結果。 詳細については、「Data」をご参照ください。

Code

Integer

200

ステータスコード。 詳細については、「コードの説明」をご参照ください。

Msg

String

OK

このリクエストに対する応答メッセージ。

表 2. Data

名前

タイプ

説明

Result

Array

画像検出の結果パラメーター (リスクラベルや信頼度スコアなど)。 詳細については、「Result」をご参照ください。

RiskLevel

String

high

設定された高リスクスコアと低リスクスコアに基づいて返されるリスクレベル。 戻り値には以下が含まれます。

  • high:高リスク

  • medium:中リスク

  • low:低リスク

  • none:リスクは検出されませんでした

説明

高リスクのコンテンツは直接処理することを推奨します。 中リスクのコンテンツは手動で確認することを推奨します。 低リスクのコンテンツは、高い再現率が必要な場合にのみ処理することを推奨します。 それ以外の場合は、リスクが検出されなかったコンテンツと同じように扱うことを推奨します。 リスクスコアは Content Moderation コンソールで設定できます。

DataId

String

img123******

検出されたオブジェクトに対応するデータ ID。

説明

検出リクエストで `dataId` が渡された場合、対応する `dataId` がここに返されます。

FrameNum

Integer

10

画像からキャプチャされたフレームの総数。

Frame

String

[{\"Result\":[{\"Confidence\":98.88,\"Label\":\"contraband_gamble\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"}]

画像フレーム情報の JSON 文字列。 次のフィールドが含まれます。

  • tepmUrl: 画像フレームの一時的なストレージ URL。 5 分間有効です。 画像フレームを速やかに転送してください。

  • Result: 画像検出の結果パラメーター (リスクラベルや信頼度スコアなど)。 詳細については、「Result」をご参照ください。

  • CustomImage: このフィールドは、カスタムイメージライブラリでヒットが見つかった場合に返されます。

  • TextInImage: このフィールドは、画像内でテキストが識別された場合に返されます。

  • PublicFigure: このフィールドは、画像内で公人情報のヒットが見つかった場合に返されます。

  • LogoData: このフィールドは、画像内でロゴ情報のヒットが見つかった場合に返されます。

説明

画像からフレームがキャプチャされない場合、現在の画像情報のみが返されます。 GIF または長い画像からフレームがキャプチャされた場合、各フレームの情報が返されます。

表 3. Result

名前

タイプ

説明

Label

String

violent_explosion

画像コンテンツ検出後に返されるラベル。 1 つの画像に複数のラベルとスコアが含まれる場合があります。 サポートされているラベルについては、以下をご参照ください。

Confidence

Float

81.22

信頼度スコア。0 から 100 の範囲で、小数点以下 2 桁まで表示されます。 一部のラベルには信頼度スコアがありません。 詳細については、「リスクラベルの説明表」をご参照ください。

Description

String

Fireworks content

Labal フィールドの説明。

重要

このフィールドは Label フィールドを説明するものであり、変更される可能性があります。 実際の結果処理については、Label フィールドを処理し、このフィールドに基づいて決定を下さないことを推奨します。

リクエスト例

{
  "ReqId": "ABCD1234-1234-1234-1234-123****"
}

応答例

  • システムがリスクのあるコンテンツを検出した場合、応答の例は次のとおりです。

    {
        "Msg": "success",
        "Code": 200,
        "Data": {
            "DataId": "img123****",
            "Result": [
                {
                    "Label": "pornographic_adultContent",
                    "Confidence": 81,
                    "Description": "Adult pornography"
                },
                {
                    "Label": "sexual_partialNudity",
                    "Confidence": 98,
                    "Description": "Body nudity or sexual content"
                },
                {
                    "Label": "violent_explosion",
                    "Confidence": 70,
                    "Description": "Fireworks content"
                },
                {
                    "Label": "violent_explosion_lib",
                    "Confidence": 81,
                    "Description": "Fireworks content_hit in custom library"
                }
            ],
            "RiskLevel": "high",
            "Frame": "[{\"Result\":[{\"Confidence\":98.18,\"Label\":\"contraband_gamble\"},{\"Confidence\":96.39,\"Label\":\"pornographic_adultContent\"},{\"Confidence\":95.27,\"Label\":\"violent_explosion\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"},{\"Result\":[{\"Confidence\":91.18,\"Label\":\"violent_explosion_lib\"}],\"TempUrl\":\"http://www.aliyundoc.com/test2.jpg\"}]",
            "FrameNum": 2
        },
        "RequestId": "ABCD1234-1234-1234-1234-123****"
    }
  • システムがリスクのあるコンテンツを検出しなかった場合、応答の例は次のとおりです。

    {
        "Msg": "success",
        "Code": 200,
        "Data": {
            "DataId": "img123****",
            "Result": [
                {
                    "Label": "nonLabel",
                    "Confidence": null,
                    "Description": "No risk detected"
                }
            ],
            "RiskLevel": "none",
            "Frame": "[{\"Result\":[{\"Label\":\"nonLabel\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"},{\"Result\":[{\"Label\":\"nonLabel\"}],\"TempUrl\":\"http://www.aliyundoc.com/test2.jpg\"}]",
            "FrameNum": 2
        },
        "RequestId": "ABCD1234-1234-1234-1234-123****"
    }
  • システムが、提供された画像が設定した審査不要画像ライブラリにあることを検出した場合、応答の例は次のとおりです。

    {
        "Msg": "success",
        "Code": 200,
        "Data": {
            "DataId": "img123****",
            "Result": [
                {
                    "Label": "nonLabel_lib",
                    "Confidence": 99.66,
                    "Description": "Hit in review-free library"
                }
            ],
            "RiskLevel": "none",
            "Frame": "[{\"Result\":[{\"Confidence\":99.66,\"Label\":\"nonLabel_lib\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"},{\"Result\":[{\"Confidence\":81.18,\"Label\":\"nonLabel_lib\"}],\"TempUrl\":\"http://www.aliyundoc.com/test2.jpg\"}]",
            "FrameNum": 2
        },
        "RequestId": "ABCD1234-1234-1234-1234-123****"
    }
説明

このドキュメントのリクエストと応答の例は、読みやすさのために改行とインデントでフォーマットされています。 実際に返される結果はフォーマットされていません。

リスクラベルの説明表

リスクラベルの説明については、「リスクラベルの説明表」をご参照ください。 各リスクラベルはコンソールで有効または無効にできます。 一部のリスクラベルについては、より詳細な検出範囲を設定できます。 詳細については、「コンソールユーザーガイド」をご参照ください。

説明

システムから返されたリスクラベルと信頼度スコアを一定期間保存することを推奨します。 これにより、将来のコンテンツガバナンスの参考にすることができます。 これらのリスクラベルに基づいて、手動レビューや注釈の優先順位を設定し、階層化および分類化されたコンテンツガバナンス対策を実施できます。

コードの説明

次の表は、API 操作によって返されるエラーコードを示しています。 システムは、コード 200 を返すリクエストのみを課金します。 他のコードを返すリクエストは課金されません。

コード

説明

200

リクエストは正常です。

280

タスクは検出中です。

400

リクエストパラメーターが空です。

401

リクエストパラメーターが正しくありません。

402

リクエストパラメーターの長さが API 仕様に準拠していません。 確認して修正してください。

403

リクエストが QPS 制限を超えています。 同時実行数を確認し、調整してください。

404

提供された画像のダウンロード中にエラーが発生しました。 確認または再試行してください。

405

提供された画像のダウンロードがタイムアウトしました。 画像にアクセスできない可能性があります。 確認、調整、再試行してください。

406

提供された画像が大きすぎます。 画像サイズを確認、調整してから再試行してください。

407

提供された画像のフォーマットはサポートされていません。 確認、調整、再試行してください。

408

アカウントにはこの API 操作を呼び出す権限がありません。 これは、アカウントでサービスが有効化されていない、アカウントに支払い遅延がある、または呼び出し元のアカウントが権限付与されていないことが原因である可能性があります。

500

システムエラーが発生しました。