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

AI Guardrails:ビデオ ライブストリーム モデレーション API 2.0

最終更新日:Jul 10, 2026

ビデオライブストリームモデレーション 2.0 は、ライブストリームの動画と音声に含まれるリスクのあるコンテンツの検出に役立ちます。このトピックでは、API 操作を使用してライブストリームモデレーションを実行する方法について説明します。

オンボーディングガイド

  1. Alibaba Cloud アカウントを登録し、指示に従って登録を完了します。

  2. AI ガードレールの従量課金を有効化します。サービスが有効化されていることを確認してください。詳細については、「サービスの有効化」をご参照ください。サービスの有効化に料金は発生しません。API を使用すると、システムが使用量に基づいて自動的に課金します。詳細については、「課金の説明」をご参照ください。

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

  4. サービスを開発して統合します。SDK を使用してオペレーションを呼び出すことを推奨します。詳細については、「ビデオモデレーション SDK v2.0 と統合ガイド」をご参照ください。

  5. ライブ動画ストリームモデレーションサービスには、次の 3 つの API オペレーションが含まれます。

モデレーションジョブの送信

API の説明

  • API オペレーション: VideoModeration。このオペレーションは、ライブビデオストリームの非同期モデレーションのみをサポートしています。

  • 対応リージョンとエンドポイント:

    リージョン

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

    VPC エンドポイント

    対応サービス

    Singapore

    green-cip.ap-southeast-1.aliyuncs.com

    green-cip-vpc.ap-southeast-1.aliyuncs.com

    liveStreamDetection_global, liveStreamDetectionByVL_global

    US (Virginia)

    green-cip.us-east-1.aliyuncs.com

    green-cip-vpc.us-east-1.aliyuncs.com

    liveStreamDetection_global

    US (Silicon Valley)

    green-cip.us-west-1.aliyuncs.com

    利用不可

    Germany (Frankfurt)

    green-cip.eu-central-1.aliyuncs.com

    利用不可

  • 課金

    本オペレーションは有料です。ライブビデオフレームと音声に対して設定したモデレーションポリシーに基づいて課金されます。ライブビデオフレームでは、複数のサービスを選択できます。合計料金は、ビデオスナップショットの数に各サービスの単価を乗じて計算されます。ライブストリーム内の音声も違反がないかモデレーションする場合、追加料金が課金されます。この料金は、動画の再生時間に音声モデレーション機能の単価を乗じて計算されます。課金方法の詳細については、「課金」をご参照ください。

  • 検出対象: ライブビデオストリーム。

  • 応答: 非同期モデレーションジョブは、結果をリアルタイムでは返しません。コールバックまたはポーリングを使用してモデレーション結果を取得する必要があります。

    • コールバックを使用してモデレーション結果を取得する: 非同期モデレーションジョブを送信する際に、リクエストで callback パラメーターを指定すると、モデレーション結果を自動的に受信できます。

    • ポーリングを使用してモデレーション結果を取得する: 非同期モデレーションジョブを送信する際に、callback パラメーターを指定しないでください。ジョブの送信後、結果クエリ操作を呼び出してモデレーション結果を取得できます。

  • ライブストリームの要件

    • 対応プロトコル: RTMP、HLS、HTTP-FLV、RTSP。

    • ライブストリームの持続時間制限: 1 回のライブビデオストリームモデレーションジョブは、最大 24 時間まで継続できます。この制限を超えると、ジョブは自動的に終了します。

  • 検出ルールの設定:

    • 初回の呼び出しでは、Content Moderation コンソールでライブストリームモデレーションのルールを設定できます。

    • ルールを設定しない場合、Live Stream Moderation V2.0 API は、次のデフォルト設定を使用します:

      サービス

      デフォルト設定

      ライブストリーム検出 (liveStreamDetection_global)

      • 固定フレームキャプチャ頻度: 1 フレーム/秒

      • ビデオフレーム検出サービス: 汎用ベースライン検出 (baselineCheck_global)

      • ビデオ音声検出: 有効

      • ビデオ音声検出サービス: Social and entertainment live stream detection (live_stream_detection_global)

      • 結果の返却方法: 検出された脅威を含む結果のみを返します

      ライブストリーム検出 (大規模モデル) (liveStreamDetectionByVL_global)

      説明

      現在は Beijing リージョンと Shanghai リージョンでのみサポートされています。大規模モデル版は、同時インジェストエンドポイントが 10 に制限されています。

      • 固定フレームキャプチャ頻度: 1 フレーム/秒

      • ビデオフレーム検出サービス: Image moderation service with large and small models (postImageCheckByVL)

      • ビデオ音声検出: 有効

      • ビデオ音声検出サービス: Social and entertainment live stream detection (live_stream_detection)

      • 結果の返却方法: 検出された脅威を含む結果のみを返します

QPS 制限

このオペレーションの 1 秒あたりのクエリ数 (QPS) 制限は、ユーザーごとに 100 です。同時モデレーションストリームの数は 50 に制限されています。つまり、最大 50 個のジョブを同時に処理できます。制限を引き上げるには、ビジネスマネージャーにお問い合わせください。制限を超えると、API 呼び出しがスロットリングされます。これはビジネスに影響を及ぼす可能性があります。オペレーションは適切に呼び出してください。

デバッグ

統合前に、Alibaba Cloud OpenAPI を使用して、VideoModeration API のオンラインでのデバッグ、サンプルコードと SDK 依存関係情報の確認、API メソッドとパラメーターの概要の取得も可能です。

重要

オンラインデバッグ機能は、ログイン中のアカウントで AI ガードレールの API オペレーションを呼び出します。そのため、呼び出し回数はアカウントの課金対象の使用量に加算されます。

リクエストパラメータ

名前

タイプ

必須

説明

Service

文字列

はい

liveStreamDetection_global

モデレーションサービスの種類です。有効な値:

  • liveStreamDetection_global :ライブビデオストリームのモデレーション

  • liveStreamDetectionByVL_global :ライブビデオストリームのモデレーション (大規模モデルエディション)

ServiceParameters

JSONString

はい

モデレーションサービスに必要なパラメーターです。値は JSONString です。パラメーターの詳細については、「表 1. ServiceParameters」をご参照ください。

表 1. サービスパラメーター

名前

必須

説明

url

文字列

はい

http://www.aliyundoc.com/a.flv

モデレーション対象オブジェクトの URL です。URL がインターネット経由でアクセス可能であることを確認してください。URL の長さは最大 2,048 文字です。

説明

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

callback

文字列

いいえ

http://www.aliyundoc.com

モデレーション結果をコールバックで送信する URL です。HTTP と HTTPS がサポートされています。このパラメーターを空にした場合は、モデレーション結果をポーリングする必要があります。

コールバックインターフェイスは、POST リクエスト、UTF-8 でエンコードされたデータ、および checksumcontent のフォームパラメーターをサポートする必要があります。

AI Guardrails は、次のルールと形式に基づいて checksum および content パラメーターを設定し、コールバックインターフェイスを呼び出してモデレーション結果を返します。

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

    説明

    ユーザー UID は、RAM ユーザーの UID ではなく、Alibaba Cloud アカウントの UID である必要があります。

  • content:値は JSON 形式の文字列です。文字列を解析し、反転させて JSON オブジェクトを取得する必要があります。content の結果の例については、検出クエリのサンプルレスポンスをご参照ください。

説明

コールバックサーバーが AI Guardrails によってプッシュされた結果を受信した後、返された HTTP ステータスコードが 200 の場合、結果の受信は成功とみなされます。その他の HTTP ステータスコードは失敗を意味します。結果の受信に失敗した場合、AI Guardrails は結果が正常に受信されるまで、モデレーション結果のプッシュを最大 16 回再試行します。16 回再試行しても結果が受信されない場合、結果はそれ以上プッシュされません。コールバックインターフェイスのステータスを確認することを推奨します。

seed

文字列

いいえ

abc****

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

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

説明

このパラメーターは、コールバックを使用する場合に必須です。

cryptType

文字列

いいえ

SHA256

コールバック通知の署名に使用する暗号化アルゴリズムです。AI Guardrails は、指定した暗号化アルゴリズムに基づいて、返された結果 (ユーザー UID + シード + content 文字列) の署名を計算し、その署名をコールバック URL に送信します。有効な値:

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

  • SM3:中国の暗号 HMAC-SM3 アルゴリズムを使用します。英小文字と数字で構成される 16 進文字列が返されます。

    たとえば、abc が SM3 アルゴリズムを使用して暗号化されると、66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0 が返されます。

dataId

文字列

いいえ

videoId****

オブジェクトのデータ ID です。

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

liveId

文字列

いいえ

liveId****

ライブビデオストリームの ID です。

このパラメーターは、重複するライブビデオストリームのモデレーションタスクを排除し、繰り返しのモデレーションを防ぐために使用されます。このパラメーターを指定すると、システムは uid+service+liveId の組み合わせに基づいてライブストリームモデレーションタスクが進行中かどうかを確認します。タスクが進行中の場合、システムは既存のタスクの taskId を返し、新しいタスクは開始しません。

説明

コールバックサーバーが AI ガードレールからプッシュされた結果を受信した後、HTTP ステータスコード 200 は結果が正常に受信されたことを意味します。その他の HTTP ステータスコードは失敗を意味します。結果が受信されない場合、AI ガードレールはモデレーション結果のプッシュを最大 16 回再試行します。16 回の再試行後も結果が受信されない場合、AI ガードレールは結果のプッシュを停止します。コールバックインターフェイスのステータスを確認してください。

応答パラメーター

名前

説明

Code

整数

200

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

Data

JSONObject

{"TaskId": "AAAAA-BBBBB"}

モデレーション結果のデータです。

Message

文字列

OK

リクエストのレスポンスメッセージです。

RequestId

文字列

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

リクエスト ID です。

サンプルリクエスト

{
    "Service": "liveStreamDetection_global",
    "ServiceParameters": {
        "url": "http://www.aliyundoc.com/a.flv",
        "dataId": "videoId****",
        "liveId": "liveId****"
    }
}

成功レスポンスのサンプル

{
    "Msg": "OK", // メッセージ
    "Code": 200, // コード
    "Data": // データ
    {
        "TaskId": "AAAAA-BBBBB", // タスク ID
        "DataId": "videoId****" // データ ID
    },
    "RequestId": "ABCD1234-1234-1234-1234-123****" // リクエスト ID
}

ライブストリームモデレーションジョブの結果をクエリする

API の説明

  • API オペレーション: VideoModerationResult

  • 課金:このオペレーションは課金されません。

  • クエリタイムアウト:クエリ間隔を 30 秒に設定できます。つまり、非同期モデレーションジョブを送信してから 30 秒後に結果をクエリできます。クエリの最大期間は24 時間です。24 時間が経過すると、結果は自動的に削除されます。

  • 結果の返却:ライブストリームが配信中の場合、クエリごとに直近 10 件のモデレーション結果が返されます。ライブストリームが終了している場合は、すべてのモデレーション結果が返されます。

QPS 制限

このオペレーションの QPS 制限は、ユーザーごとに 100 です。制限を超えると、API 呼び出しがスロットリングされます。これにより、お客様のビジネスに影響が出る可能性があります。適切な頻度でオペレーションを呼び出してください。

デバッグ

統合前に、Alibaba Cloud OpenAPI を使用して VideoModerationResult API をオンラインでデバッグすることもできます。その際、サンプルコードと SDK の依存関係情報を参照し、API メソッドとパラメーターの概要を取得できます。

リクエストパラメーター

名前

タイプ

必須

説明

Service

文字列

はい

liveStreamDetection_global

モデレーションサービスのタイプ。値は、モデレーションタスクを送信したときに指定したサービスタイプと一致する必要があります。

ServiceParameters

JSON 文字列

はい

モデレーションサービスに必要なパラメーター。このパラメーターは JSON 文字列です。パラメーターの詳細については、表 1. サービスパラメーターをご参照ください。

テーブル 1. ServiceParameters

名前

必須

説明

taskId

文字列

はい

abcd****

照会するモデレーションタスクの taskId。一度に 1 つの taskId のみ指定できます。

説明

モデレーションタスクの taskId は、タスクを送信した後の応答データから取得できます。

レスポンス パラメーター

名前

説明

RequestId

文字列

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

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

Data

オブジェクト

ライブストリームコンテンツモデレーションの結果。詳細については、テーブル 2. Data をご参照ください。

Code

文字列

"200"

状態コード。詳細については、コードの説明 をご参照ください。

Message

文字列

OK

リクエストの応答メッセージ。

テーブル 2:データ

名前

説明

DataId

文字列

videoId****

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

説明

モデレーションリクエストで dataId パラメーターを指定した場合、対応する DataId が返されます。

LiveId

文字列

liveId****

ライブストリームの ID。

説明

モデレーションリクエストで liveId パラメーターを指定した場合、対応する LiveId が返されます。

TaskId

文字列

AAAAA-BBBBB

モデレーションタスクの ID。

RiskLevel

文字列

high

ライブストリームのリスクレベル。値は、ビデオフレームとオーディオの両方のモデレーション結果に基づいて決定されます。有効な値:

  • high: 高リスク

  • medium: 中リスク

  • low: 低リスク

  • none: 検出されたリスクなし

説明

高リスクコンテンツは直接処理し、中リスクコンテンツは手動でレビューし、低リスクコンテンツは高い再現率が必要な場合のみ処理することを推奨します。その他の場合は、低リスクコンテンツをリスクなしのコンテンツと同じ方法で処理することを推奨します。ビデオフレームのリスクスコアは、AI ガードレール コンソールで設定できます。

FrameResult

JSON オブジェクト

ビデオフレームのモデレーション結果。呼び出しが成功した場合 (code=200)、構造体が返されます。構造体の詳細については、テーブル 3. FrameResult をご参照ください。

説明

ビデオストリームモデレーションの場合、ステータスコード 280 はモデレーションが進行中であること、200 はモデレーションが完了したことを示します。モデレーションが進行中の場合、モデレーション結果にはモデレーション開始から現在までに検出された結果が含まれます。

AudioResult

JSON オブジェクト

オーディオのモデレーション結果。構造体が返されます。構造体の詳細については、テーブル 8. AudioResult をご参照ください。

表 3. FrameResult

名前

説明

FrameNum

整数

200

返されるビデオフレームのスナップショット数。

FrameSummarys

JSON 配列

ビデオフレームのラベルのサマリー。構造体の詳細については、「表 4. FrameSummarys」をご参照ください。

RiskLevel

文字列

high

ビデオフレームのリスクレベル。値は、すべてのライブストリームスナップショットに基づいて計算されます。有効な値:

  • high: 高リスク

  • medium: 中リスク

  • low: 低リスク

  • none: 検出されたリスクなし

Frames

JSON 配列

ラベルにヒットしたライブストリームフレームに関する情報。構造体の詳細については、「表 5. Frames」をご参照ください。

テーブル 4. フレームサマリー

名前

説明

Label

文字列

violent_armedForces

ビデオフレームのラベルです。

Description

文字列

花火を含むと疑われる

Label フィールドの説明です。

重要

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

LabelSum

整数

8

ラベルが出現する回数です。

表5. フレーム

名前

説明

TempUrl

文字列

http://www.aliyundoc.com/test.jpg

ライブストリームフレームの一時 URL。URL は 30 分間有効です。フレームを速やかに保存してください。

説明

動画証拠ストレージが有効になっている場合、保存されたビデオフレームの OSS URL が返されます。

Offset

Float

50.5

ライブストリームの開始時点を基準とした、ライブストリームフレームのタイムスタンプ。単位:秒。

Timestamp

Integer

1684559739000

フレームが処理された絶対タイムスタンプ。単位:ミリ秒。

RiskLevel

文字列

high

ライブストリームフレームのリスクレベル。設定された高リスクスコアと低リスクスコアに基づいて返されます。有効な値:

  • high :高リスク

  • medium :中リスク

  • low :低リスク

  • none :リスク検出なし

説明

高リスクコンテンツは直接対処し、中リスクコンテンツは手動でレビューし、低リスクコンテンツは高い再現率が必要な場合のみ対処することを推奨します。その他の場合は、低リスクコンテンツをリスクが検出されなかったコンテンツと同じ方法で対処することを推奨します。ビデオフレームのリスクスコアは、AI ガードレール コンソールのルール設定で設定できます。

Results

JSONArray

ライブストリームフレームのモデレーションの結果。リスクラベルと信頼度スコアが含まれます。詳細については、「表 6. 結果」をご参照ください。

テーブル 6:結果

名前

タイプ

説明

Service

文字列

baselineCheck_global

呼び出すフレームモデレーションサービス。

Result

配列

ライブストリームフレームモデレーションの結果です。リスクラベルと信頼度スコアが含まれます。詳細については、「テーブル 7. Result」をご参照ください。

表 7:結果

名前

説明

ラベル

文字列

violent_explosion

ライブストリームフレームのモデレーションによって返されるリスクラベルで、フレーム内で検出された政治的なコンテンツ、アダルトコンテンツ、暴力的なコンテンツ、広告違反などの特定のリスクタイプを示します。1 つのフレームに複数のラベルが付くことがあり、各ラベルには対応する信頼度スコアがあります。ラベルは、リクエストで設定されたモデレーションサービス (service パラメーター) によって異なります:

  • 一般的なコンテンツ安全サービス (baselineCheck, baselineCheck_pro, baselineCheck_cb, baselineCheck_global): 政治的、ポルノ、暴力的、広告コンテンツなどの一般的なリスクカテゴリのラベルを返します。

  • ライブ配信および一般的なリスク検出サービス (liveStreamCheckriskDetectionriskDetection_cb) は、ライブ配信に固有のリスクのラベルを返します。

  • AI 生成コンテンツ検出サービス (aigcCheckaigcCheck_cbaigcDetector_global): AI 生成コンテンツを識別するラベルを返します。

  • 画像言語モデルサービス (baselineCheckByVL やその他の大規模モデルベースの画像監査サービスなど) は、きめ細かいリスクラベルを返します。

  • 特定のコンテンツ向けのモデレーションサービス (profilePhotoCheckpostImageCheckadvertisingChecktonalityImprove) は、モデレートされるコンテンツタイプに特化したラベルを返します。

各モデレーションサービスでサポートされているラベルの完全なリストについては、「Video File Moderation Enhanced 2.0 API」をご参照ください。

信頼度

浮動小数点数

81.22

信頼度スコア。0 から 100 の範囲です。値は小数点以下 2 桁まで正確です。

説明

文字列

花火を含むと疑われる

Label フィールドの説明。

重要

このフィールドは、Label フィールドの説明を提供するものですが、変更される可能性があります。結果の処理は、このフィールドではなく Label フィールドに基づいて行うことを推奨します。

表 8. 音声結果

名前

タイプ

説明

AudioSummarys

JSONArray

音声ラベルの概要一覧。構造体の詳細については、「Table 9. AudioSummarys」をご参照ください。

RiskLevel

文字列

high

音声のリスクレベル。この値は、すべての音声セグメントに基づいて算出されます。有効な値は次のとおりです:

  • high:高リスク

  • medium:中リスク

  • low:低リスク

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

SliceDetails

JSONArray

音声から変換されたテキストの詳細。各要素は 1 つの文に対応します。値には 1 つ以上の要素が含まれます。構造体の詳細については、「Table 10. SliceDetails」をご参照ください。

説明

SliceDetails 要素で返されるリスク結果のフィールドは、ライブストリームモデレーションルールで設定された音声モデレーションサービスのバージョンによって異なります:

  • 大規模モデルバージョン (例:liveStreamDetectionByVLliveStreamDetectionByVL_cbliveStreamDetectionByVL_global):リスク結果は result フィールドで返されます。

  • 小規模モデルバージョン (例:liveStreamDetectionliveStreamDetection_cbliveStreamDetection_global):リスク結果は LabelsRiskLevelRiskWordsRiskTips の各フィールドで返されます。

表 9. 音声要約

名前

説明

Label

文字列

profanity

動画の音声のラベル。

LabelSum

整数

8

ラベル数。

表 10. スライス詳細

名前

タイプ

説明

StartTime

Integer

0

センテンスの開始時刻です。単位:秒。

EndTime

Integer

4065

センテンスの終了時刻です。単位:秒。

StartTimestamp

Integer

1678854649720

セグメントの開始タイムスタンプです。単位:ミリ秒。

EndTimestamp

Integer

1678854649720

セグメントの終了タイムスタンプです。単位:ミリ秒。

Text

文字列

disgusting

音声から変換されたテキストコンテンツです。

Url

文字列

https://aliyundoc.com/test.wav

モデレートされたコンテンツが音声ストリームの場合、このパラメーターはテキストに対応する音声ストリームの一時的な URL を示します。URL の有効期限は 30 分です。音声ストリームは速やかに保存してください。

RiskLevel

文字列

high

音声セグメントのリスクレベルです。有効な値:

  • high:高リスク

  • medium:中リスク

  • low:低リスク

  • none:リスク検出なし

Labels

文字列

political_content,xxxx

ラベルの詳細です。複数のラベルはカンマで区切られます。音声モデレーションサービスの小規模モデルバージョンを選択した場合、リスク結果は LabelsRiskWordsRiskTipsExtend フィールドで返されます。大規模モデルバージョンを選択した場合、リスク結果は Result フィールドで返されます。有効な値:

  • [ad]:広告関連コンテンツ

  • [violence]:暴力またはテロ関連コンテンツ

  • [political_content]:政治的コンテンツ

  • [specified_speaking]:特定の発話コンテンツ

  • [specified_lyrics]:特定の歌詞

  • [sexual_content]:性的コンテンツ

  • [sexual_sounds]:性的な音

  • [contraband]:禁制品コンテンツ

  • [profanity]:罵倒的なコンテンツ

  • [religion]:宗教的コンテンツ

  • [cyberbullying]:サイバーブリング

  • [negative_content]:ネガティブコンテンツ

  • [nontalk]:無音

  • [C_customized]:カスタムライブラリヒット

RiskWords

文字列

AAA,BBB,CCC

ヒットしたリスクワードです。複数のワードはカンマで区切られます。

RiskTips

文字列

porn_vulgar_words,porn_description

サブラベルです。複数のラベルはカンマで区切られます。

Extend

文字列

{"riskTips":"porn_vulgar_words","riskWords":"pornographic_service"}

予約済みフィールドです。

Result

JSONArray

この音声スライスの詳細なリスク検出結果です。このフィールドは、音声モデレーションサービスで大規模モデルバージョンが設定されている場合にのみ返されます。小規模モデルバージョンが使用されている場合、このフィールドは返されず、代わりにリスク結果は LabelsRiskWordsRiskTips などのフィールドで返されます。フィールド構造は、大規模モデルの音声モデレーションAPIの Result フィールドと一致します。サブフィールドの説明は次のとおりです。

表 10-1. 結果

パラメーター

タイプ

説明

Label

String

political_entity

音声コンテンツ検出後に返されるラベルです。複数のラベルとスコアが検出される場合があります。テキストポリシーのラベルと音声固有のラベルが含まれます:

  • テキストポリシーのラベルについては、「リスクラベルのセクション」をご参照ください

  • 音声固有のラベルには以下が含まれます:

    • [specified_nontalk]:無音

    • [specified_speaking]:指定した音声

    • [sexual_sounds]:呻き声

説明

指定した音声と呻き声はデフォルトでは検出されません。検出を有効にするには、アカウントマネージャーにお問い合わせください。

Description

String

Suspected pornographic content

Label フィールドの説明です。

重要

このフィールドは Label フィールドを説明するもので、変更される可能性があります。結果を処理する際は、このフィールドではなく Label フィールドを使用してください。

Confidence

Float

81.22

0~100 の範囲の信頼度スコアで、小数点以下第 2 位に丸められます。一部のラベルには信頼度スコアがない場合があります。

RiskLevel

String

high

このラベルのリスクレベルです。有効な値:

  • high:高リスク

  • medium:中リスク

  • low:低リスク

  • none:リスクなし

Riskwords

String

AA,BB,CC

検出された機微な単語がカンマで区切られています。一部のラベルは機微な単語を返さない場合があります。

CustomizedHit

JSONArray

[{"LibName":"...","Keywords":"..."}]

カスタムライブラリに一致した場合、 Label は customized となり、カスタムライブラリ名とカスタム単語が返されます。詳細については、「表 10-2 CustomizedHit」をご参照ください。

RiskPositions

JSONArray

検出された機微な単語の位置情報です。詳細については、「表 10-3 RiskPositions」をご参照ください。

表 10-2. CustomizedHit

パラメーター

タイプ

説明

LibName

文字列

CustomLib1

カスタムライブラリ名。

Keywords

文字列

keyword1,keyword2

キーワード。カンマで区切ります。

表 10-3. リスクポジション

パラメーター

タイプ

説明

RiskWord

文字列

AA

検出されたセンシティブな単語

StartPos

整数

10

センシティブな単語の開始位置

EndPos

整数

12

センシティブな単語の終了位置

サンプルリクエスト

{
    "Service": "liveStreamDetection_global",
    "ServiceParameters": {
        "taskId": "abcd****"
    }
}

成功レスポンスのサンプル

  • ライブストリームビデオのみのモデレート

{
    "Code": 200,
    "RequestId": "25106421-XXXX-XXXX-XXXX-15DA5AAAC546",
    "Message": "成功",
    "Data": {
        "DataId": "dc16c28f-xxxx-xxxx-xxxx-51efe0131080",
        "LiveId": "live0307-0728-****",
        "RiskLevel": "high",
        "FrameResult": {
            "FrameNum": 2,
            "FrameSummarys": [
                {
                    "Label": "violent_explosion",
                    "Description": "花火が含まれている疑いがあります",
                    "LabelSum": 8
                },
                {
                    "Label": "sexual_cleavage",
                    "Description": "ヌードまたは性的コンテンツが含まれている疑いがあります",
                    "LabelSum": 8
                }
            ],
            "RiskLevel": "medium",
            "Frames": [
                {
                    "Offset": 1,
                    "RiskLevel": "none",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Label": "nonLabel",
                                    "Description": "リスクは検出されませんでした"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test1.jpg",
                    "Timestamp": 1704769999000
                },
                {
                    "Offset": 2,
                    "RiskLevel": "medium",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Confidence": 78.88,
                                    "Label": "sexual_cleavage",
                                    "Description": "ヌードまたは性的コンテンツが含まれている疑いがあります"
                                },
                              	{
                                    "Confidence": 74.18,
                                    "Label": "violent_explosion",
                                    "Description": "花火が含まれている疑いがあります"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test2.jpg",
                    "Timestamp": 1704769989000
                }
            ]
        }
    }
}
  • ライブストリームのビデオおよびオーディオのモデレーション

{
    "Code": 200,
    "RequestId": "25106421-XXXX-XXXX-XXXX-15DA5AAAC546",
    "Message": "正常に終了しました",
    "Data": {
        "DataId": "dc16c28f-xxxx-xxxx-xxxx-51efe0131080",
        "LiveId": "live0307-0728-****",
        "RiskLevel": "high",
        "AudioResult": {
            "AudioSummarys": [
                {
                    "Label": "sexual_sounds",
                    "LabelSum": 3
                }
            ],
            "RiskLevel": "high",
            "SliceDetails": [
                {
                    "EndTime": 60,
                    "EndTimestamp": 1698912813192,
                    "Labels": "",
                    "RiskLevel": "none",
                    "StartTime": 30,
                    "StartTimestamp": 1698912783192,
                    "Text": "AI Guardrails",
                    "Url": "http://abc.oss-ap-southeast-1.aliyuncs.com/test.wav"
                },
                {
                    "EndTime": 30,
                    "EndTimestamp": 1698912813192,
                    "Extend": "{\"customizedWords\":\"service\",\"customizedLibs\":\"test\"}",
                    "Labels": "C_customized",
                    "RiskLevel": "high",
                    "StartTime": 0,
                    "StartTimestamp": 1698912783192,
                    "Text": "Alibaba Cloud AI Guardrails サービスへようこそ",
                    "Url": "http://abc.oss-ap-southeast-1.aliyuncs.com/test.wav"
                }
            ]
        },
        "FrameResult": {
            "FrameNum": 2,
            "FrameSummarys": [
                {
                    "Label": "violent_explosion",
                    "Description": "花火が含まれている疑いがあります",
                    "LabelSum": 8
                },
                {
                    "Label": "sexual_cleavage",
                    "Description": "ヌードまたは性的コンテンツが含まれている疑いがあります",
                    "LabelSum": 8
                }
            ],
            "RiskLevel": "medium",
            "Frames": [
                {
                    "Offset": 1,
                    "RiskLevel": "none",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Label": "nonLabel",
                                    "Description": "リスクは検出されませんでした"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test1.jpg",
                    "Timestamp": 1704769999000
                },
                {
                    "Offset": 2,
                    "RiskLevel": "medium",
                    "Results": [
                        {
                            "Result": [
                                {
                                    "Confidence": 74.18,
                                    "Label": "violent_explosion",
                                    "Description": "花火が含まれている疑いがあります"
                                },
                                {
                                    "Confidence": 78.88,
                                    "Label": "sexual_cleavage",
                                    "Description": "ヌードまたは性的コンテンツが含まれている疑いがあります"
                                }
                            ],
                            "Service": "baselineCheck_global"
                        }
                    ],
                    "TempUrl": "http://abc.oss-ap-southeast-1.aliyuncs.com/test2.jpg",
                    "Timestamp": 1704769989000
                }
            ]
        }
    }
}

ライブストリームモデレーションジョブのキャンセル

API の説明

このオペレーションを呼び出すと、ライブストリーム モデレーション ジョブをキャンセルできます。

  • API オペレーション: VideoModerationCancel

  • 課金:このオペレーションに料金は発生しません。

デバッグ

統合の前に、Alibaba Cloud OpenAPI を使用して VideoModerationCancel API をオンラインでデバッグし、サンプル呼び出しコードと SDK の依存関係情報を表示して、API の使用量とパラメーターの概要を確認することもできます。

リクエストパラメータ

名前

タイプ

必須

説明

Service

文字列

はい

liveStreamDetection_global

モデレーションサービスの種類です。値は、モデレーションジョブの送信時に指定したサービスタイプと一致させる必要があります。

ServiceParameters

JSON 文字列

はい

サービスに必要なパラメーターです。このパラメーターは JSON 文字列です。パラメーターの詳細については、「表 11. ServiceParameters」をご参照ください。

表 11. サービス パラメーター

名前

タイプ

必須

説明

taskId

文字列

はい

abcd****

キャンセルするモデレーションタスクの taskId。一度に指定できる taskId は 1 つのみです。

注: モデレーションタスクの taskId は、タスクの送信後に返される応答データから取得できます。

レスポンスパラメーター

名前

タイプ

説明

Code

Integer

200

ステータスコードです。詳細については、「Code description」をご参照ください。

Message

文字列

OK

リクエストに対するレスポンスメッセージです。

RequestId

文字列

AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****

リクエスト ID です。

サンプルリクエスト

{
    "Service": "liveStreamDetection",
    "ServiceParameters": {
        "taskId": "abcd****"
    }
}

サンプルレスポンス

{
    "Msg": "OK",
    "Code": 200,
    "RequestId": "70ED13B0-BC22-576D-9CCF-1CC12FEAC477"
}

コードの説明

このトピックでは、動画ライブストリーム審査 2.0 API の応答コードについて説明します。応答コードが 200 または 280 のリクエストのみが課金対象となります。その他の応答コードを返すリクエストは課金されません。

コード

説明

200

リクエストが成功した、またはモデレーションが完了しました。

280

モデレーションが進行中です。

400

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

401

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

402

リクエストパラメーターの長さが要件を満たしていません。パラメーターを確認して、再試行してください。

403

1 秒あたりのクエリ数 (QPS) が上限を超えています。同時リクエスト数を確認して、再試行してください。

404

動画のダウンロード中にエラーが発生しました。動画を確認して、再試行してください。

405

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

406

動画のサイズが大きすぎます。動画のサイズを確認して、再試行してください。

407

動画のフォーマット がサポートされていません。フォーマット を確認して、再試行してください。

408

このオペレーション を呼び出す権限がありません。アカウントでサービスが有効化されていない、支払いが遅延している、または必要な権限が付与されていない可能性があります。

409

指定された TaskId は存在しません。結果が 24 時間以上保持され、期限切れになった可能性があります。

480

同時モデレーションストリーム数が上限を超えています。同時リクエスト数を確認して、再試行してください。

500

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