リアルタイムの応答を必要としない推論シナリオでは、バッチ API (Application Programming Interface) を使用して、大量のデータリクエストを非同期で処理できます。このサービスは OpenAI と互換性があり、コストはリアルタイム推論の価格のわずか 50% です。そのため、モデル評価やデータアノテーションなどのバッチジョブに最適です。
ワークフロー
バッチ推論のワークフローは非同期です:
タスクの送信: 複数のリクエストを含むファイルをアップロードして、バッチ推論タスクを作成します。
非同期処理: システムはバックグラウンドでキューからタスクを処理します。コンソールまたは API を使用して、タスクの進捗状況とステータスをクエリできます。
結果のダウンロード: タスクが完了すると、システムは成功した応答を含む結果ファイルと、失敗の詳細を含むエラーファイルを生成します。
適用範囲
中国本土
中国本土デプロイメントモードでは、エンドポイントとデータストレージは北京リージョンに配置され、モデル推論の計算リソースは中国本土に限定されます。
サポート対象モデル:
テキスト生成モデル: Qwen-Max、Qwen-Plus、Qwen-Flash、Qwen-Long の安定版および一部の
latestバージョン。また、QwQ シリーズ (qwq-plus) や、deepseek-r1、deepseek-v3 などのサードパーティモデルもサポートしています。マルチモーダルモデル: Qwen-VL-Max、Qwen-VL-Plus、Qwen-VL-Flash の安定版および一部の
latestバージョン。また、Qwen-OCR もサポートしています。テキスト埋め込みモデル: text-embedding-v4。
国際
国際デプロイメントモードでは、エンドポイントとデータストレージはシンガポールリージョンに配置されます。モデル推論の計算リソースは、中国本土を除く世界中で動的にスケジュールされます。
サポート対象モデル: qwen-max、qwen-plus、qwen-flash、qwen-turbo。
使用方法
ステップ 1:入力ファイルの準備
バッチ推論タスクを作成する前に、次の要件を満たすファイルを準備する必要があります:
フォーマット: UTF-8 でエンコードされた JSON Lines (JSONL) 形式で、1 行に 1 つの独立した JSON オブジェクトを記述します。
サイズ制限: 1 つのファイルには最大 50,000 件のリクエストを含めることができ、サイズは 500 MB を超えることはできません。
データ量がこの制限を超える場合は、データを複数のファイルに分割し、別々のタスクとして送信する必要があります。
行制限: 各 JSON オブジェクトは 6 MB 以下で、モデルのコンテキスト長を超えてはなりません。
一貫性: 同じファイル内のすべてのリクエストは、同じモデルを使用する必要があります。
一意の識別子: 各リクエストには、ファイル内で一意の `custom_id` フィールドを含める必要があります。この ID は結果を照合するために使用されます。
リクエスト例
{"custom_id":"1","method":"POST","url":"/v1/chat/completions","body":{"model":"qwen-max","messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":"Hello!"}]}}
{"custom_id":"2","method":"POST","url":"/v1/chat/completions","body":{"model":"qwen-max","messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":"What is 2+2?"}]}}JSONL バッチ生成ツール
このツールを使用して、JSONL ファイルを迅速に生成します。
ステップ 2:結果の送信と表示
コンソールまたは API を使用してタスクを作成および管理できます。
コンソール
(1) バッチ推論タスクの作成
[バッチ推論] ページで、[バッチ推論タスクの作成] をクリックします。
表示されたダイアログボックスで、[タスク名] と [説明] を入力し、[最大待機時間] (1〜14 日) を設定して、JSONL ファイルをアップロードします。
[サンプルファイルのダウンロード] をクリックしてテンプレートを取得できます。

設定が完了したら、[確認] をクリックします。
(2) タスクの表示と管理
表示:
タスクリストページで、各タスクの [進捗] (処理済みリクエスト/合計リクエスト) と [ステータス] を表示できます。
タスクをすばやく見つけるには、タスク名または ID で検索するか、ワークスペースでフィルターできます。

管理:
キャンセル: 「in_progress」状態のタスクは、[操作] 列からキャンセルできます。
トラブルシューティング: 「failed」ステータスのタスクについては、ステータスにカーソルを合わせると概要が表示されます。また、エラーファイルをダウンロードして詳細を確認することもできます。

(3) 結果のダウンロードと分析
タスクが完了したら、[結果の表示] をクリックして出力ファイルをダウンロードできます:
結果ファイル: すべての成功したリクエストとその
response結果を記録します。エラーファイル (もしあれば): すべての失敗したリクエストとその
errorの詳細を記録します。
両方のファイルには custom_id フィールドが含まれています。このフィールドを使用して、出力と元の入力データを照合し、結果を関連付けたり、エラーを特定したりできます。
API
自動化と統合が必要な本番環境では、OpenAI 互換のバッチ API を使用できます。コアワークフローは次のとおりです:
タスクの作成
POST /v1/batchesエンドポイントを呼び出してタスクを作成し、返されたbatch_idを記録します。ステータスのポーリング
batch_idを使用してGET /v1/batches/{batch_id}エンドポイントをポーリングします。statusフィールドがcompletedに変わったら、返されたoutput_file_idを記録し、ポーリングを停止します。結果のダウンロード
output_file_idを使用してGET /v1/files/{output_file_id}/contentエンドポイントを呼び出し、結果ファイルをダウンロードします。
完全な API 定義、パラメーター情報、およびコード例については、「OpenAI 互換バッチ API」をご参照ください。
ステップ 3:データ統計の表示 (オプション)
[モデルモニタリング] ページで、バッチ推論の使用統計をフィルターして表示できます。
データ概要の表示: [時間範囲] (最大 30 日) を選択し、[推論タイプ] を [バッチ推論] に設定して、次の情報を表示できます:
モニタリングデータ: このセクションには、指定された期間内のすべてのモデルの要約統計 (呼び出し総数や失敗数など) が表示されます。
モデルリスト: このセクションには、各モデルの詳細データ (呼び出し総数、失敗率、平均呼び出し時間など) が一覧表示されます。

30 日以上前の推論データを表示するには、[請求書] ページに移動できます。
モデル詳細の表示: [モデルリスト] で、特定のモデルの [操作] 列にある [モニタリング] をクリックして、その [呼び出し統計] の詳細 (呼び出し回数や使用量など) を表示します。

バッチ推論の呼び出しデータは、タスク終了時間に基づいて記録されます。進行中のタスクの場合、呼び出し情報はタスクが完了した後にのみ利用可能になります。
モニタリングデータには 1〜2 時間の遅延が生じる場合があります。
ライフサイクル
validating: システムは、アップロードされたデータファイルのフォーマットを JSONL 仕様に照らして検証し、ファイル内の各リクエストが API フォーマット要件を満たしているかを確認しています。
in_progress: ファイルの検証が完了し、システムはファイル内の推論リクエストを 1 行ずつ処理し始めました。
completed: 結果ファイルとエラーファイルの書き込みが完了し、ダウンロード可能な状態です。
failed: `validating` 状態でタスクが失敗しました。この失敗は通常、無効な JSONL フォーマットやファイルサイズ超過など、ファイルレベルのエラーが原因です。この状態では、システムは推論リクエストを実行せず、結果ファイルも生成されません。
expired: 実行時間がタスク作成時に設定された最大待機時間を超えたため、タスクはシステムによって終了されました。この理由でタスクが失敗した場合は、新しいタスクを作成する際により長い待機時間を設定できます。
cancelled: タスクはキャンセルされました。タスク内の未処理のリクエストは終了します。
課金
単価: 成功したすべてのリクエストの入力トークンと出力トークンは、対応するモデルのリアルタイム推論価格の 50% で課金されます。詳細については、「モデルリスト」をご参照ください。
課金範囲:
タスク内で正常に実行されたリクエストのみが課金されます。
ファイルの解析失敗、タスク実行の失敗、または行レベルのリクエストエラーは課金されません。
キャンセルされたタスクについては、キャンセル前に正常に完了したリクエストは引き続き課金されます。
バッチ推論は独立した課金項目です。サブスクリプション (節約プラン) や 新規ユーザー無料クォータ などの割引、または コンテキストキャッシュ などの機能はサポートしていません。
よくある質問
バッチ推論を使用するために、追加で何かを購入したり有効にしたりする必要はありますか?
いいえ、ありません。Alibaba Cloud Model Studio が有効化されていれば、従量課金制で課金されます。料金はアカウントの残高から差し引かれます。
タスクが送信直後に失敗するのはなぜですか (ステータスが
failedに変わる)?この失敗は通常、ファイルレベルのエラーが原因であり、推論リクエストは開始されていません。以下を確認してください:
ファイルフォーマット: ファイルが厳密な JSONL フォーマットであり、1 行に 1 つの完全な JSON オブジェクトが含まれていることを確認してください。
ファイルサイズ: ファイルサイズと行数が制限を超えていないことを確認してください。詳細については、「入力ファイルの準備」をご参照ください。
モデルの一貫性: ファイル内のすべてのリクエストで
body.modelフィールドが同一であり、そのモデルが現在のリージョンでサポートされていることを確認してください。
タスクの処理にはどのくらい時間がかかりますか?
処理時間はシステムの負荷に依存します。システムがビジー状態の場合、タスクはリソースを待つためにキューに入れられることがあります。成功または失敗の結果は、指定された最大待機時間内に返されます。
エラーコード
呼び出しが失敗し、エラーメッセージが返された場合は、「エラーメッセージ」でソリューションをご参照ください。