はじめに
Mercury 3 は Inception のモデルで、応答性を重視したテキスト推論とエージェント対話 に対応します。このチャット API は テキスト を受け付け、入力予算は 1,000,000 トークン、max_tokens の上限は 131,072 です。Mercury 3 のテキストは届いた順に受け取れ、Mercury 3 の低遅延テキスト処理の次の段階には関数呼び出しの結果を根拠として渡せます。
| 項目 | 値 |
|---|---|
| 入力 | テキスト |
| 出力 | テキスト |
| 入力予算 | 1,000,000 tokens |
| max_tokens の上限 | 131,072 |
主な機能とハイライト
一つずつではなく、並列に書き上げる
多くの言語モデルは左から右へ、トークンを一つずつ順に生成します。Mercury は拡散モデルで、Inception によれば多数のトークンを同時に生成し、推敲していきます。画像の拡散モデルが画像全体を少しずつ仕上げるのと似た考え方です。Inception はこれが、Mercury 3 が毎秒 1,000 トークンを超えて動作できる理由だと説明しています。
待ち時間が効いてくる場面のために作られています
Inception は NVIDIA GPU 上で毎秒 1,068 トークンという数値を公表しており、同等のモデルより 4〜8 倍速いと説明しています。これは提供元自身の計測値ですので、約束ではなく目安として捉えてください。どの API でも速度は負荷、プロンプトの長さ、推論の強度によって変わります。Inception が挙げるユースケースは、音声、サポートチャット、検索エージェント、ブラウザエージェントです。
100 万トークンの入力
1,000,000 トークンは英単語でおよそ 750,000 語に相当し、Inception によれば Mercury 2.5 の 260K から拡大しています。長いやり取り、マニュアル、リポジトリを要約せずにそのままリクエストに含められるため、モデルは要約ではなく原文を読みます。
速度のために推論を抑えられます
reasoning_effort には none、low、medium、high を指定できます。既定値はここでは low です。タグ付け、振り分け、短い応答には none か low のままにし、複数のステップが必要なタスクでは引き上げてください。ツール、ストリーミング、JSON 出力は同じ呼び出しで使えます。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
messages | はい | Mercury 3 の低遅延テキスト処理では、会話と根拠資料をテキストで順に渡し、各ツール結果に元の |
max_tokens | いいえ | Mercury 3 の |
reasoning_effort | いいえ | Mercury 3 は none, low, medium, high を公開し、既定は low です。Mercury 3 の低遅延テキスト処理でレベルを比較すると、深い推論による出力トークンや待ち時間の増加を確認できます。 |
stop | いいえ | Mercury 3 の生成を停止する文字列を 1 つ、または最大 4 つ指定できます。Mercury 3 の回答には一致した停止文字列自体は含まれません。 1 文字以上 · 1 件以上 · 4 件以内 |
temperature | いいえ | Mercury 3 の temperature は 0.5〜1 です。Mercury 3 の低遅延テキスト処理で表現を比較する際は、ほかのサンプリング設定を固定してください。 |
top_p | いいえ | Mercury 3 の |
tools | いいえ | Mercury 3 の低遅延テキスト処理に必要な関数を OpenAI 形式で Mercury 3 に渡します。Mercury 3 が引数を提案し、アプリ側で検証と実行を行います。 128 件以内 |
parallel_tool_calls | いいえ | Mercury 3 の低遅延テキスト処理で複数の外部結果が必要な場合に、Mercury 3 が独立した関数呼び出しをまとめて提案できるかを指定します。 デフォルト値: |
tool_choice | いいえ | Mercury 3 では auto、none、required または特定の関数を選び、Mercury 3 の低遅延テキスト処理を続ける際は返された呼び出し ID を保持してください。 |
response_format | いいえ | Mercury 3 にテキストまたは構造化 JSON を指定し、Mercury 3 の低遅延テキスト処理で使う JSON の項目をアプリ側で検証してください。 |
料金
入力 $0.20 / 出力 $0.70 100 万トークンあたり
ユースケース
リアルタイムのサポートと音声アシスタント
顧客が待っているとき、最初の有用な一文が届くまでの時間が重要になります。応答をストリーミングし、reasoning_effort は none か low に保ち、口調とポリシーは system メッセージに書いてください。
検索・ブラウザエージェント
ツールを呼び出し、結果を読み、次のツールを呼ぶエージェントは、時間の大半をモデルの応答待ちに費やします。検索やページ読み取りの関数を Mercury 3 に渡し、ループを任せてください。Inception は初期パートナーとして browser-use やリアルタイム検索エージェントを挙げています。
大量データの分類
メッセージへのラベル付け、チケットの振り分け、テキストからのフィールド抽出を大規模に行います。JSON オブジェクトを要求し、temperature を低く設定して、後処理なしでそのまま解析してください。
その場での下書きと書き直し
生成が速いと、短い返信、要約、学習者へのフィードバック、書き直しがほぼ即座に感じられます。長い出力では max_tokens を上げ、届いた部分からストリーミングしてください。
プロンプトガイドと実践のヒント
レイテンシに敏感な経路では推論を低く保つ
既定値は low です。最も速い応答には none を使い、計画が必要なタスクだけ medium か high に上げてください。既定値を決める前に、各段階で自分のプロンプトをいくつか比較してください。
temperature の範囲内で使う
このエンドポイントが受け付ける temperature は 0.5 から 1 までです。低い値は分類と抽出に向き、高い値は下書きでより多様な言い回しを生みます。
欲しい回答の長さに合わせて
max_tokensを設定するmax_tokensの既定値は 4,096、上限は 131,072 です。思考を使う場合、その分は同じ上限に含まれます。推論の強度を上げるときは余裕を持たせ、finish reason を確認してください。コードが読む回答には構造を指定する
response_formatで JSON オブジェクトを指定するか、必要な形のパラメータを持つツールを定義してください。受け取った結果は、そのまま処理する前に検証してください。
低遅延のテキスト処理
Mercury 3 は拡散方式でテキストを並列に整えます。問い合わせ対応では、質問、関連する規約の抜粋、必要な次の行動をテキストで渡してください。このエンドポイントは画像・動画・音声部品を受け付けません。
応答を軽く保ちます
推論は low から始め、単純な分類では none と比較してください。長い返答はストリーミングで受け取り、max_tokens には推論と表示される回答の両方の余裕を確保します。Inception の速度は同社環境の測定値であり、各リクエストの待ち時間を保証しません。
外部操作につなげます
Mercury 3 が提案した関数はアプリ側で引数を検証して実行します。結果に対応する tool_call_id を付けて返すと、次のターンで操作結果を参照できます。顧客に表示する前に、回答と渡した規約を照合してください。
Mercury 3 の低遅延テキスト処理では Mercury 3 自身のコンテンツ判断が適用されます。Mercury 3 の NSFW 応答はリクエストや版によって変わるため、無制限の出力は約束しません。
API クイックスタート
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "inception/mercury-3/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
認証、完全なスキーマ、ポーリング、エラー処理は API リファレンスを参照してください。
