search_charges を確認してください。
モデルを選ぶ
- タスクの種類を特定します。画像の生成・編集、テキストまたは画像からの動画生成、音楽、読み上げ音声のいずれかです。数量、品質、長さ、参照素材、予算を具体的に決めます。
- アカウントで利用できるモデル一覧を照会し、そこにある正確なモデル ID を使って、スキーマを確認します。シリーズ名、エイリアス、表示名が、そのまま送信用の ID になるとは限りません。
- 条件に合う新しいシリーズや推奨シリーズを比較し、品質、参照素材への対応、料金、想定される待ち時間を説明します。プラットフォームの統計がない場合は、実測に基づく人気があるかのように述べないでください。
- 最終的なリクエストを見積もる前に、必須項目、範囲、同時に指定できない入力を確認します。モデルや入力を変更したら、改めて確認します。
見積もりを読む
GPT Image のトークン課金モデル(
gpt-image-1.5、gpt-image-2、gpt-image-2.5-flare、gpt-image-2.5-sunburst、gpt-image-2.6-flare、gpt-image-2.6-sunburst)は、token_billed と参考価格を返します。参考価格は、その入力そのものに対して EvoLink が送信時に仮押さえするクレジットです。サイズと品質に応じた出力トークン、プロンプトのトークン、参照画像またはマスクごとに 1,536 トークンを合計し、n を掛けて算出します。size が auto の場合は 2048×2048 の出力として計算するため、サイズを指定すると参考価格がより実際に近くなります。gpt-image-2.6 の GIF は、すべてのフレームが描かれる1枚の画像として計算します(size が auto の場合、フレームは 512×512)。タスクは実際に使用したトークン数で精算されるため、最終的な請求額は参考価格より低くなることも、わずかに高くなることもあります。これらのモデルでは、pricing_parameters のトークン数は使われません。max_cost_usd を明示する場合は、参考価格の1.5倍以上の額にする必要があります。
Gemini Omni Flash の動画モデル(gemini-omni-flash-*、gemini-omni-1.1-flash-*、gemini-omni-1.2-flash-*)も、token_billed と参考価格を返します。参考価格は、EvoLink が送信時に仮押さえするときと同じ方法で計算します。出力の解像度と長さに応じた動画出力トークン、プロンプトのトークン、入力画像ごとに 2,020 トークン、そして入力動画または参照動画がある場合はそのトークンを合計します。入力動画または参照動画がある場合は、その長さを media_seconds(MCP)または --media-seconds(CLI)で指定してください。参照動画が複数ある場合は、最も長いものの長さを指定します。長さの指定がないと参考価格は算出されず、見積もりで指定を求められます。リクエストには動画の解像度が含まれておらず、EvoLink は送信時にそれを読み取ります。そのため、参考価格は 4k として計算され、見積もりには入力解像度ごとの価格(360p、720p、1080p、4k)も併せて示されます(reference_usage.input_resolution_prices)。これらの価格をユーザーに示してください。これらのモデルでも pricing_parameters のトークン数は使われず、max_cost_usd は参考価格の1.5倍と比較されます。タスクは実際に使用したトークン数で精算されます。
qwen-audio-3.1-tts-flash も token_billed と参考価格を返します。参考価格は、EvoLink が送信時に仮押さえするときと同じ方法で、テキストから計算します。pricing_parameters のトークン数は使われず、max_cost_usd は参考価格の1.5倍と比較され、タスクは実際に使用したトークン数で精算されます。hot_fix: null は、hot_fix を指定していないものとして扱われます。
使用量を 0 と指定した結果、生成の価格が 0 になる場合は、使用量が不足しているものとして扱われます。無料のメディア生成はありません。
モデルの価格が、参照動画の長さのように入力からは分からない使用量によって決まる場合、見積もりは金額も承認記録も返しません。total_known は false になり、missing_usage に不足している値がそれぞれ示され、usage_help にその指定方法が示されます。MCP では media_seconds または pricing_parameters、CLI では --media-seconds または --pricing-parameters で指定します。このようなリクエストは、生成の際に送信前の段階で拒否されます(quote_usage_required)。partial の見積もりでは、価格を算出できた部分はそのまま示され、合計額がほかに何によって決まるかも示されます。get_model と models show は、モデルの価格に必要な使用量を billing_usage に一覧表示します。実測値、または明確に見込まれる値を指定してください。値を捏造してはいけません。
見積もりは、EvoLink が課金の基準とする設定を読み取ります。Midjourney の speed と type は model_params から読み取ります。Seedream 5.0 Pro は、size または quality によって出力が 2K になる場合、2K の価格で計算されます。MiniMax H3 と H3 Max の参照素材からの動画生成では、無料分を超える参照画像が計算に含まれます。Tencent の動画アップスケールでは、model_params.max_fps が "30" の場合を除き、元動画のフレームレートを pricing_parameters.output_fps で指定する必要があります。Seedance の下書きからの動画生成では、pricing_parameters.content_filter が true でない限り、下書きがコンテンツフィルターなしで作成されたものとして計算します。
input_valid、problems、basis、warnings を確認してください。モデル一覧の開始価格は、リクエストに対する完全な見積書ではありません。解像度、サウンド、参照素材、実際の入力の長さ、音声の課金方式が料金に影響することがあります。
Seedance 2.5 の生成では、draft: true を指定して quality を省略すると 480p が使われます。見積もりが effective_input と defaults_applied を返した場合は、承認の前に、実際に適用されるそれらの設定を示してください。生成でも同じ設定が使われます。下書きから動画への変換には、別の入力があります。特定のモデル向けのチェックは、ほかのモデル ID や操作には当てはまりません。
seedance-2.5-video-edit では、input.duration: -1 で編集が選択されます。価格計算に使う想定出力秒数は pricing_parameters.duration_seconds に指定します。これは生成の設定を置き換えるものではなく、最終的な使用量を確定するものでもありません。
検索は、次の7つのメディアルートでデフォルトでオフになっています:doubao-seedream-5.0-lite、gemini-3-pro-image-preview、gemini-3.1-flash-image-preview、gemini-nano-banana-2.1、seedance-2.0-text-to-video、seedance-2.0-fast-text-to-video、seedance-2.5-text-to-video。Seedream では model_params.tools: [{"type":"web_search"}] で有効にし、それ以外では model_params.web_search: true を使います。Gemini 3.1 Flash Image と Nano Banana 2.1 は、独立した model_params.image_search: true にも対応しています。
ユーザーが明確に求めるか、有効にすることを承認しない限り、モデルのウェブ検索と画像検索はオフのままにしてください。自分の判断で検索を有効にしたり、コピーした例で有効になっているからという理由だけで有効にしたりしてはいけません。エージェントが検索が必要だと考える場合は、まず、検索ごとにかかる追加の単価と、合計額が不明であることを説明し、明確な同意を得てから有効にしてください。検索なしのタスクに対する承認は、検索の追加を許可するものではありません。検索の設定を変更した場合は、改めて見積もりと承認が必要です。これらはアシスタント向けの指示であり、サーバーは会話上の同意を検証しません。
検索がオフの場合は、検索料金に関する注意書きを加えないでください。最終的な入力で検索が有効になっている場合は、ユーザー自身が求めたものであっても、生成の承認の前に、有効になっている種類ごとの現在の単価を示してください。回数が指定されていない場合は、検索がゼロ回であると仮定した、検索料金を含まない既知料金の小計が partial として返されます。テキストや思考のトークンなど、そのほかの不明な使用量も含まれません。単一のタスクでも、検索が一度も行われないこともあれば、複数回行われることもあります。実際の回数はタスクとモデルの方針によって決まるため、検索料金の合計は生成前には分かりません。ウェブ検索と画像検索は別々に課金されます。
pricing_parameters.search_count と image_search_count は見込みの使用量を表すもので、実行回数の上限ではありません。見込みをゼロにしても、検索は無効になりません。不完全な見積もりでは、ユーザーが明示した予算と照合できません。不明な使用量をなくすために、回数を捏造しないでください。古いクライアントが、検索が有効で見込み回数が指定されていない状態を完全な見積もりとして扱う場合は、その見積書を承認する前にクライアントを更新してください。
リリース済みのクライアントが主に使うのは公開のデフォルト価格であり、アカウントの割引をすべて反映したものでも、実測の使用量でも、アカウント精算用の見積書(Quote)でもありません。新しいエンドポイントやコードの候補版があっても、本番環境で採用されていることにはなりません。価格が不完全な場合や、予算との比較が不完全な場合は、いったん止めてください。換算の目安は $1 あたり約 68 クレジットです。実際のレスポンスとアカウントの記録を使ってください。
承認と予算
正確なモデル、最終的な入力、出力の仕様と数量、見積もり額、制限を示してください。そのうえで、今回の生成について明確な承認を得ます。承認は、同じ入力で、承認済みの価格以下である限り、見積もりから24時間有効です。生成の際には送信前にもう一度見積もりが行われ、価格が変わっていないか下がっていれば、その後に価格ルールが変更されていても、そのまま進みます。価格が上がった場合(price_changed)、モデル、入力、参照素材のいずれかが変わった場合(quote_input_changed)、アカウントが異なる場合、承認の有効期限が切れた場合(quote_expired)は、新しい見積もりと承認が必要です。
これらは、それぞれ別のチェックです。ログインやホストの権限は、課金を承認するものではありません。拒否を回避するために、予算を外したり、キーを変えたり、ルートを切り替えたりしないでください。最終的な上限には、それに対応するサーバー側のサポートが必要です。現時点のドキュメントでは、精算額が見積もり時の予算を決して超えないとは約束できません。
CLI はローカルに
quote_id を保存し、--confirm を付けて送信します。ネイティブ MCP では、入力、見積もり、明確な承認をエージェントのワークフローの中で保持します。CLI のような見積書ファイルや、セッション単位のサーバー側承認ボタンはありません。CLI での承認と MCP での承認を参照してください。
見積もりなしで生成する
ユーザーが、見積もりや確認は不要だと明確に述べた場合(たとえば「直接生成して」)、エージェントは見積書なしで送信します。MCP ではskip_estimate: true、CLI では --skip-estimate を使います。適用範囲はユーザーが述べたとおりで、このタスク、このバッチ、またはその会話での以降のすべての生成のいずれかです。エージェントは、沈黙、残高、自分自身の提案からこれを推測してはいけません。ユーザーが会話の残り全体について見積もりを不要とした場合、エージェントは、以降の生成は確認なしで送信されることを一度だけ伝えます。新しい会話を始めるか、見積もりを元に戻すよう求めると、見積もりは再び行われます。見積もりなしで送信する場合でも、無効な入力と明示された予算は引き続きチェックされ、検索には引き続き承認が必要で、タスクは実際の使用量に基づいて課金されます。見積もりが失敗した場合や合計額が出ない場合で、ユーザーが見積もりを不要としていないときは、エージェントは、実際の使用量での課金でそのまま生成するかどうかを一度だけ尋ねます。
同じモデルの複数のタスク
一度の見積もりで、同じモデルの入力を最大50件まで扱えます(MCP ではinputs、CLI では --inputs-file)。見積もりは、各入力の価格、合計額、そしてそのバッチだけを対象とする承認記録を1つ返します。承認後は、一度の呼び出しですべての入力をまとめて送信し、完了を待たずにタスク ID を返します。結果は list_tasks または tasks batch で取得します。送信されなかった入力がある場合は、同じリクエスト ID とまったく同じ入力でバッチを完了させてください。MCP では、最初の送信から24時間以内に、同じ client_request_id でもう一度呼び出します(承認の有効期限が切れている場合は、先に見積もりをやり直します)。CLI では、最初の送信から23時間以内に tasks resume --quote を実行します。ただし、見積書の有効期限が切れておらず、価格が上がっていない場合に限ります。受け付け済みの入力については元のタスクが返され、新たな課金は発生しません。この期間内は、受け付け済み、未送信、結果不明のいずれの入力も、新しいリクエスト ID で再送信してはいけません。この期間を過ぎたら、どのタスクが存在するかを確認し(list_tasks、tasks batch、tasks list)、通らなかった入力だけを、新しい見積もりと新しいリクエスト ID を使った新しいバッチとして送信します。GPT Image など一部のモデルは、n より少ない枚数の画像しか返さないことがよくあるため、画像1枚につき入力を1つ使ってください。
権限、残高、クォータ
現在、同じアカウントの CLI とリモート MCP の OAuth は、内部キーの権限、クォータ、一時停止状態を共有できます。このキーへの変更は、それを使うすべての利用元に影響しますが、CLI とホストのセッションは別々のままです。ローカル stdio は、設定された個人用の API Key を使います。 モデル、残高、タスクの照会では、メディア生成は送信されません。生成は課金されます。アップロードには、ファイルサービス側の別の制限があります。残高不足、クォータ、アクセスの問題は、該当するアカウント設定で解決してください。再認証しても、残高は増えず、キーの一時停止も解除されません。 失敗したタスク(status: failed)は課金されず、送信時に仮押さえされたクレジットは自動的に返還されます。タイムアウト、ログアウト、ページを閉じたことは、課金されなかったことや返金されたことの根拠にはなりません。返金が反映されたと伝えてよいのは、課金に関する明確な証拠がある場合だけです。使用量の照会は、完全な明細ではありません。
検索結果が空、入力が無効、価格が不完全な場合
- タスクと参照素材に必要な機能の条件は保ったまま、検索の言い回しを広げます。アカウントと権限も確認します。
- このモデルのスキーマをもう一度読み、フィールド、列挙値、範囲、同時に指定できない参照素材を確認します。
- 最終的な入力で見積もりを取り、状態の表に従って対応します。不明な要素を開始価格で埋めないでください。
- まだ送信していないリクエストは、改めて確認します。送信済み、または結果が不明なリクエストは、先に復旧してください。