音声検出 2.0 は、中国語、英語、および中国語と英語の混合の音声コンテンツをサポートするアップグレードされた音声モデルを備えています。 国際的なビジネスに合わせた検出ポリシーとタグシステムを提供します。 このトピックでは、音声検出 2.0 多言語サービスの機能と使用方法について説明します。
特徴
音声検出 1.0 と比較して、音声検出 2.0 は、国際的なビジネスのニーズを満たすために、別のポリシーとタグシステムを使用します。 また、使用を簡素化し、手動レビューを支援するためのより多くの機能も提供します。
比較項目 | 音声検出 2.0 | 音声検出 1.0 |
多言語機能 |
| デフォルトでは中国語のみをサポートします。 |
モデレーション機能 |
|
|
タグシステム | 不適切な表現や地域などのタグを持つ国際的なタグシステムを使用します。 このシステムは、複数のリスクタグとサブタグをサポートします。 | タグシステムを使用し、単一のリスクタグのみをサポートします。 |
API の特徴 |
|
|
国際化タグ
音声検出 2.0 多言語サービスは、国際的なタグシステムを使用します。 コンテンツに複数の種類のリスクが含まれている場合、サービスは複数のタグを同時に返すことができます。 タグの分類には、以下が含まれますが、これらに限定されません。
タグタイプ | 分類 |
プライマリタグ (ラベル) |
|
サブタグ (riskTips) | サブタグは |
サービスパフォーマンス
音声検出 2.0 は、パフォーマンス専有型のコアエンジンを使用しており、数十のモデルとポリシーを高い同時実行性でスケジュールして、タイムリーなサービスを保証します。
サービスパフォーマンス | 説明 |
ファイルサイズ | バージョン 2.0 では、サポートされる最大の音声ファイルサイズが 200 MB から 500 MB に増加します。 |
音声ファイル形式 | サポートされている音声ファイル形式: MP3、WAV、AAC、WMA、OGG、M4A、AMR。 サポートされている動画ファイル形式: AVI、FLV、MP4、MPG、ASF、WMV、MOV、RMVB、RM。 |
ライブ音声ストリーム | サポートされているプロトコル: RTMP、HLS、HTTP-FLV、RTSP。 |
1 秒あたりのクエリ数 (QPS) | タスクを送信するための 1 秒あたりのクエリ数 (QPS) は 50 から 100 に増加します。 |
同時ストリーム | バージョン 2.0 では、同時ストリームのデフォルトの制限が 20 から 50 に増加します。 |
音声検出では、QPS は API が 1 秒あたりに応答するリクエストの数を指します。 同時ストリームとは、システムで同時に検出されている音声ファイルまたは音声ストリームの数を指します。
課金情報
音声検出 2.0 サービスは、従量課金の課金方法をサポートしています。
従量課金
音声検出 2.0 サービスをアクティブ化すると、デフォルトの課金方法は従量課金になります。 実際の使用量に基づいて毎日課金されます。 サービスを使用しない場合、料金は発生しません。
モデレーションタイプ | サポートされているビジネスシナリオ (サービス) | 単価 |
標準音声検出 (audio_standard) |
| 1,000 分あたり 9.0 米ドル |
アクセスガイド
ステップ 1: サービスをアクティブ化する
サービスのアクティブ化に移動して、音声検出 2.0 サービスをアクティブ化します。
ステップ 2: RAM ユーザーに権限を付与する
SDK または API を使用する前に、RAM ユーザーに権限を付与します。 Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ペアを作成できます。 Alibaba Cloud API 操作を呼び出すときは、ID 検証に AccessKey ペアを使用する必要があります。 詳細については、「AccessKey ペアの取得」をご参照ください。
手順
[RAM コンソール] に RAM 管理者としてログオンします。
- RAM ユーザーを作成します。
詳細については、「RAM ユーザーの作成」をご参照ください。
- RAM ユーザーに
AliyunYundunGreenWebFullAccessシステムポリシーを付与します。詳細については、「RAM ユーザーへの権限付与」をご参照ください。
上記の手順を完了すると、RAM ユーザーとして Content Moderation API を呼び出すことができます。
ステップ 3: SDK のインストールと統合
以下のリージョンがサポートされています:
リージョン | インターネットエンドポイント | 内部エンドポイント |
シンガポール | https://green-cip.ap-southeast-1.aliyuncs.com | https://green-cip-vpc.ap-southeast-1.aliyuncs.com |
米国 (バージニア) | https://green-cip.us-east-1.aliyuncs.com | https://green-cip-vpc.us-east-1.aliyuncs.com |
他の言語の SDK サンプルコードが必要な場合は、OpenAPI Developer Portal のオンラインデバッグツールを使用して API 操作をデバッグできます。 このツールは、API 操作の SDK サンプルコードを自動的に生成します。
API
使用上の注意
サービスエンドポイント: https://green-cip.{region}.aliyuncs.com。
この操作を呼び出して、音声コンテンツ検出タスクを作成できます。 HTTP リクエストを手動で作成するか、SDK を使用できます。 手動で HTTP リクエストを作成する方法については、「RAW HTTP 呼び出しの作成」をご参照ください。 SDK の詳細については、「音声検出 2.0 SDK と統合ガイド」をご参照ください。
API 操作:
検出タスクの送信: VoiceModeration
検出タスク結果のクエリ: VoiceModerationResult
課金:
これは有料の操作です。 HTTP ステータスコード 200 を返すリクエストに対してのみ課金されます。 他のエラーコードを返すリクエストは課金されません。
検出タスクの送信
リクエストパラメーター
名前 | タイプ | 必須 | 例 | 説明 |
Service | String | はい | udio_multilingual_global | モデレーションサービスの種類。有効な値:
|
ServiceParameters | JSONString | はい | 検出サービスで必要なパラメーターセット。 これは JSON 文字列です。 各文字列の説明については、「ServiceParameters」をご参照ください。 |
表 1. ServiceParameters
名前 | タイプ | 必須 | 例 | 説明 |
url | String | はい | http://aliyundoc.com/test.flv | 検出対象のオブジェクトの URL。 パブリック HTTP または HTTPS URL である必要があります。 |
callback | String | いいえ | http://aliyundoc.com | 検出結果がコールバック通知として送信される URL。 HTTP と HTTPS がサポートされています。 このフィールドを空のままにする場合は、検出結果を定期的にポーリングする必要があります。 コールバックインターフェイスは、POST メソッド、UTF-8 エンコードデータ、およびフォームパラメーター [checksum] と [content] をサポートする必要があります。 Content Moderation は、[checksum] および [content] パラメーターを設定し、次のルールとフォーマットに従ってコールバックインターフェイスを呼び出して検出結果を返します。
説明 サーバーのコールバックインターフェイスが Content Moderation によってプッシュされた結果を受信した後、HTTP ステータスコード 200 を返した場合、受信は成功です。 その他の HTTP ステータスコードは失敗と見なされます。 失敗した場合、Content Moderation は、正常に受信されるまで最大 16 回結果のプッシュをリトライします。 16 回のリトライ後も受信されない場合、プッシュは停止されます。 コールバックインターフェイスのステータスを確認してください。 |
seed | String | いいえ | abc**** | コールバック通知リクエストの署名に使用されるランダムな文字列。 英字、数字、アンダースコア (_) を含めることができ、64 文字を超えてはなりません。 この値をカスタマイズして、コールバック通知リクエストが Alibaba Cloud Content Moderation サービスによって開始されたことを確認できます。 説明 このフィールドは、コールバックを使用する場合に必須です。 |
cryptType | String | いいえ | SHA256 | コールバック通知 (callback) を使用する場合、通知コンテンツの暗号化アルゴリズムを設定します。 Content Moderation は、指定されたアルゴリズムを使用して結果 (
|
liveId | String | いいえ | liveId1**** | ライブ音声ストリームの ID。 このパラメーターは、ライブ音声ストリームタスクを重複排除し、繰り返しの検出を防ぐために使用されます。 このパラメーターを渡すと、システムは |
dataId | String | いいえ | voice20240307*** | 検出されたオブジェクトに対応するデータ ID。 大文字と小文字の英字、数字、アンダースコア (_)、ハイフン (-)、ピリオド (.) で構成でき、64 文字を超えてはなりません。 これを使用して、ビジネスデータを一意に識別できます。 |
戻り値パラメーター
名前 | タイプ | 例 | 説明 |
Code | Integer | 200 | エラーコード。 HTTP ステータスコードと一致します。 詳細については、「コードの説明」をご参照ください。 |
Data | JSONObject | {"taskId": "AAAAA-BBBBB"} | 検出結果データ。 |
Message | String | OK | リクエストに対する応答メッセージ。 |
RequestId | String | AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE**** | リクエスト ID。 |
例
リクエスト例
{
"service":"audio_multilingual_global",
"serviceParameters":"{\"cryptType\":\"SHA256\",\"seed\":\"abc***123\",\"callback\":\"https://aliyun.com/callback\",\"url\":\"http://aliyundoc.com/test.flv"}"
}レスポンスの例
{
"code":200,
"data":{
"taskId":"AAAAA-BBBBB"
},
"message":"SUCCESS",
"requestId":"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****"
}タスク結果のクエリ
検出タスクが完了すると、クエリ結果はすべての音声セグメントのデータを返します。
リクエストパラメーター
名前 | タイプ | 必須 | 例 | 説明 |
Service | String | はい | audio_multilingual_global | モデレーションサービスの種類 |
ServiceParameters | JSONString | はい | 検出サービスで必要なパラメーターセット。 これは JSON 文字列です。 各文字列の説明については、「ServiceParameters」をご参照ください。 |
表 2. ServiceParameters
名前 | タイプ | 必須 | 例 | 説明 |
taskId | String | はい | AAAAA-BBBBB | タスクの送信時に返された ID。 |
戻り値パラメーター
名前 | タイプ | 例 | 説明 |
Code | Integer | 200 | エラーコード。 HTTP ステータスコードと一致します。 詳細については、「コードの説明」をご参照ください。 |
Data | JSONObject | {"url":xxxx,"results":xxx} | JSON 形式で返されるパラメーター。 |
Message | String | OK | リクエストに対する応答メッセージ。 |
RequestId | String | AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE**** | リクエスト ID。 |
表 3. Data
名前 | タイプ | 例 | 説明 |
url | String | https://aliyundoc.com | 検出されたオブジェクトの URL。 |
LiveId | String | liveId1**** | ライブ音声ストリームの ID (オプション)。 |
DataId | String | voice20240307*** | 検出されたオブジェクトに対応するデータ ID (オプション)。 |
RiskLevel | String | high | すべての音声セグメントに基づいて計算された、音声のリスクレベル。 戻り値には以下が含まれます:
説明 高リスクのコンテンツは直接処理する必要があります。 中リスクのコンテンツは手動でレビューする必要があります。 低リスクのコンテンツは、高い再現率が必要な場合にのみ処理する必要があります。 それ以外の場合は、リスクが検出されなかったコンテンツと同じように扱います。 |
sliceDetails | JSONArray | 音声セグメントの詳細な結果。 詳細については、「sliceDetails」をご参照ください。 |
表 4. sliceDetails
名前 | タイプ | 例 | 説明 |
startTime | Integer | 0 | 文の開始時刻 (秒単位)。 |
endTime | Integer | 4065 | 文の終了時刻 (秒単位)。 |
startTimestamp | Integer | 1678854649720 | セグメントの開始タイムスタンプ (ミリ秒単位)。 |
endTimestamp | Integer | 1678854649720 | セグメントの終了タイムスタンプ (ミリ秒単位)。 |
text | String | disgusting | 音声から変換されたテキスト。 |
url | String | https://aliyundoc.com | 音声セグメントの一時的な URL。 URL は 30 分間有効です。 速やかに保存してください。 |
labels | String | pullinTraffic | タグ (コンマ (,) 区切り)。 内容:
|
RiskLevel | String | high | 音声セグメントのリスクレベル。 戻り値には以下が含まれます:
|
riskWords | String | AAA,BBB,CCC | ヒットしたリスクワード (コンマ区切り)。 |
riskTips | String | sexuality_Suggestive | サブタグ (コンマ区切り)。 |
extend | String | {\"riskTips\":\"sexuality_Suggestive\",\"riskWords\":\"pxxxxy\"} | 予約済みフィールド。 |
例
リクエスト例
{
"service":"audio_multilingual_global",
"serviceParameters":"{\"taskId\":\"AAAAA-BBBBB"}"
}レスポンスの例
{
"Code": 200,
"Data": {
"DataId": "voice20240307***",
"LiveId": "liveId1****",
"RiskLevel": "high",
"SliceDetails": [
{
"EndTime": 4065,
"Labels": "political_content,xxxx",
"RiskLevel": "high",
"RiskTips": "contraband_ProhibitedGoods",
"RiskWords": "Risk Word A",
"StartTime": 0,
"Text": "Content Moderation product test case",
"Url": "https://aliyundoc.com"
}
]
},
"Message": "OK",
"RequestId": "AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****"
}コールバックメッセージのフォーマット
コールバックメッセージデータは、以下に示すように JSON 形式です。
フィールド名 | フィールドタイプ | 説明 |
checksum | String | チェックサム。 ユーザー UID は Alibaba Cloud アカウント ID であり、Alibaba Cloud 管理コンソールで確認できます。 改ざん防止のために、プッシュされた結果を受信したときに同じアルゴリズムを使用して文字列を生成し、チェックサムと照合して検証できます。 説明 ユーザー UID は、RAM ユーザーの UID ではなく、Alibaba Cloud アカウントの UID である必要があります。 |
taskId | String | コールバックメッセージのタスク ID。 |
content | String | シリアル化された検出結果。 これは JSON 文字列です。 JSON オブジェクトに解析します。 コンテンツ結果のフォーマットは、タスク結果をクエリするための応答と同じです。 詳細については、「戻り値パラメーター」をご参照ください。 |
コードの説明
以下は、操作によって返されるコードの説明です。 料金は、コード 200 を返すリクエストに対してのみ発生します。
コード | 説明 |
200 | リクエストは成功しました。 |
280 | 検証中。 |
400 | リクエストパラメーターが空です。 |
401 | リクエストパラメーターが無効です。 |
402 | リクエストパラメーターの長さが要件を満たしていません。 パラメーターを確認して変更してください。 |
403 | リクエストが QPS 制限を超えています。 QPS 制限を確認して調整してください。 |
404 | 指定されたファイルのダウンロード中にエラーが発生しました。 ファイルを確認するか、リトライしてください。 |
405 | 指定されたファイルのダウンロードがタイムアウトしました。 ファイルにアクセスできない可能性があります。 ファイルを確認してリトライしてください。 |
406 | 指定されたファイルがサイズ制限を超えています。 ファイルを確認してリトライしてください。 |
407 | 指定されたファイルのフォーマットはサポートされていません。 ファイルを確認してリトライしてください。 |
408 | アカウントには、この操作を呼び出す権限がありません。 アカウントでサービスがアクティブ化されていない、支払いが遅延している、またはサービスへのアクセスが承認されていない可能性があります。 |
480 | 同時ストリームの数が制限を超えています。 同時実行数を確認して調整してください。 |
500 | システムエラーが発生しました。 |