DEV Community

Cover image for Muse Wonder APIの使い方
Akira
Akira

Posted on Originally published at apidog.com

Muse Wonder APIの使い方

Muse Wonder APIの使い方

Muse Wonder APIは、https://api.meta.ai/v1でmuse-wonder-1.0を提供するMetaのModel APIです。Responses API、Chat Completions、Anthropic互換のMessagesエンドポイントに対応し、maxまでの推論努力を使用できます。OpenAI SDKでもベースURLを変更するだけで動作します。

今すぐApidogを試す

このガイドでは、キーの取得から実用的なエージェント処理までを説明します。最初のリクエスト、エンドポイントの選択、推論の制御、複数ターンの状態管理、ツール、ストリーミング、バックグラウンド実行、呼び出しコストを把握するための使用量フィールドを扱います。すべてのリクエストはApidogでも設定できるため、チームはキーを共有せずにモデルをテストできます。モデルの内容とスコアについては、まずMuse Wonderの解説を参照してください。

Muse Wonder APIの概要

項目 値
ベースURL https://api.meta.ai/v1
モデルID muse-wonder-1.0
認証 Authorization: Bearer $MODEL_API_KEY
エンドポイント POST /v1/responses、POST /v1/chat/completions、POST /v1/messages
100万トークンあたりの価格 入力$4、出力$20、キャッシュ入力$0.20
コンテキストウィンドウ 1,048,576トークン、ロングコンテキスト追加料金なし
推論努力 minimal、low、medium、high、xhigh、max
レート制限 チームごと、モデルごとに毎分3,000リクエストおよび400万トークン
ウェブ検索ツール トークンとは別に1,000クエリあたり$2.50

より大きいモデルであるMuse Wonder FullはAPIでは提供されていません。Muse CodeのPowerプランとMaximumプラン内でのみ利用できます。Wonderで努力度をmaxに設定しても、Fullになるわけではありません。

Muse Wonder API

ステップ1:キーを取得して最初の呼び出しを実行する

Model APIダッシュボードのAPI keysでキーを作成し、MODEL_API_KEYとして保存します。その後、次のコマンドを実行します。

curl https://api.meta.ai/v1/responses \
  -H "Authorization: Bearer $MODEL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "muse-wonder-1.0",
    "input": "List three risks in a lease clause that lets the landlord enter without notice.",
    "reasoning": {"effort": "medium"},
    "max_output_tokens": 2048
  }'
Enter fullscreen mode Exit fullscreen mode

OpenAI SDKでは、ベースURLとAPIキーの2行を変更します。

from openai import OpenAI
import os

client = OpenAI(
    base_url="https://api.meta.ai/v1",
    [REDACTED CREDENTIAL],
)

resp = client.responses.create(
    model="muse-wonder-1.0",
    input="List three risks in a lease clause that lets the landlord enter without notice.",
    reasoning={"effort": "medium"},
    max_output_tokens=2048,
)

print(resp.output_text)
print(resp.usage)
Enter fullscreen mode Exit fullscreen mode

レスポンスにはテキストとusageブロックが含まれます。すべての呼び出しでこのブロックを確認してください。output_tokens_details.reasoning_tokensは出力予算のどれだけが思考に使われたかを示します。input_tokens_details.cached_tokensは、どれだけの入力がキャッシュ料金で課金されたかを示します。

ステップ2:エンドポイントを選ぶ

MetaのクイックスタートはResponses APIを使用しており、マルチステップ処理にはこれが適切なデフォルトです。Responsesはレスポンス間で推論を保持し、会話履歴を管理できます。Chat Completionsは、既存コードがOpenAI SDK向けに書かれている場合に利用します。https://api.meta.ai/v1/messagesのMessagesエンドポイントはAnthropic形式のリクエストを受け付けるため、Claude CodeをMuse Wonder上で動作させられます。

目的 使用するAPI
新しいエージェント、ツールループ、長いセッション Responses
既存のOpenAI形式コード、単一ターン Chat Completions
Claude Codeや他のAnthropic形式ハーネス Messages
推論サマリー Responsesのみ

3つの形式ではパラメータ名が異なります。推論努力はResponsesではreasoning.effort、Chat Completionsでは最上位のreasoning_effortです。出力上限はそれぞれmax_output_tokensとmax_tokensです。Responsesの構造化出力はresponse_formatではなくtext.formatを使用します。

ステップ3:推論努力を設定する

Muse Wonderは常に推論します。noneはHTTP 400を返します。受け入れられるレベルはminimal、low、medium、high、xhigh、maxです。パラメータを省略すると、モデルが自分でレベルを選択します。

Metaの助言は他の推論モデルと同じです。推論トークンは$20の出力レートで課金され、出力上限にもカウントされるため、許容できる結果が得られる最も低いレベルを使用してください。

ここから2つの実用的なルールが導かれます。

  1. 高い努力度ではmax_output_tokensを十分に大きく設定します。maxでは推論が出力の大部分を占めるため、厳しい上限は回答を切り捨てる可能性があります。
  2. リクエスト種別ごとにreasoning_tokensを記録し、ベンチマークではなく実際のトラフィックで各努力度のコストを確認します。このモデルを52と評価したArtificial Analysisの実行では、max努力度でタスクあたり約54,000出力トークンが使われました。

Responses APIでは、reasoning.summaryをauto、concise、またはdetailedに設定して推論サマリーを要求できます。サマリーは保証されず、配列が空で返されることがあります。生の推論は返されません。

ステップ4:ターン間で状態を引き継ぐ

Responses APIには2つの状態管理モードがあり、それらを組み合わせることはできません。

ステートレスな暗号化リプレイはMetaの推奨方法です。store: falseとinclude: ["reasoning.encrypted_content"]を送信します。レスポンスが返すreasoning項目を保持し、次ターンでencrypted_contentとsummaryフィールドとともに返します。summaryが空配列でも問題ありません。Metaが何も保存しなくても、モデルの推論はターンを越えて維持されます。

サーバー管理履歴はより簡単です。previous_response_idを渡し、新しい入力だけを送信します。instructionsは引き継がれないため、毎回システム指示を再送してください。

first = client.responses.create(
    model="muse-wonder-1.0",
    input="Summarize this API's auth flow: ...",
    instructions="You are an API reviewer.",
)

second = client.responses.create(
    model="muse-wonder-1.0",
    previous_response_id=first.id,
    instructions="You are an API reviewer.",
    input="Now list the endpoints that need an OAuth scope.",
)
Enter fullscreen mode Exit fullscreen mode

ステップ5:ツール、構造化出力、ウェブ検索

関数ツールはResponsesとChat CompletionsでOpenAIの形式に従います。Muse Wonderはツールを並列呼び出しでき、失敗したツール呼び出しからの回復も訓練されています。これが、Metaの発表記事でActive Focusと表現されている要素の1つです。JSONスキーマでツールを定義し、モデルが返すfunction_call項目を実行して、function_call_output項目を返します。

コードが解析できる回答にするには、Responsesでtext.formatをJSONスキーマに設定します。最新情報が必要な場合は、tools=[{"type": "web_search"}]でMetaのホスト型検索を追加します。トークン料金に加えて、1,000クエリあたり$2.50が課金されます。

他のモデルでツール呼び出しをすでにテストしている場合、Apidogのエージェントツール呼び出しハーネスはここでもそのまま動作します。リクエスト形式はOpenAIと同じです。

ステップ6:ストリーミングまたはバックグラウンド実行

stream: trueを設定し、イベントストリームを消費します。主なイベントは次のとおりです。

  • response.created
  • response.output_item.added
  • response.output_text.delta
  • response.function_call_arguments.delta
  • response.completed

失敗はresponse.failedで終わります。推論サマリーを要求した場合は、response.reasoning_summary_text.deltaとして届きます。

長いジョブにはbackground: trueを送信します。APIは"status": "queued"で応答し、GET /v1/responses/{id}?stream=trueからライフサイクルイベントをポーリングまたはストリーミングできます。BackgroundはPOSTのstream: trueと組み合わせられません。リクエスト本文は1 MiB、チームごとに毎分600件の新規バックグラウンド送信という別制限もあります。キャンセルするにはPOST /v1/responses/{id}/cancelを使用します。

ステップ7:繰り返しをキャッシュする

キャッシュ入力は100万トークンあたり$0.20で、$4の通常入力レートから95%割引されます。Metaはusage.input_tokens_details.cached_tokensでキャッシュ量を報告します。

効果を得るためのパターンは他のプロバイダーと同じです。システム指示、ツール定義、参照ドキュメントのような安定した素材を先頭に置き、リクエストごとのコンテンツを最後に置きます。プロンプトキャッシュガイドがプレフィックス設計を解説しています。

キャッシュ書き込みコストにも注意してください。Artificial Analysisの実行では、タスクあたり$4.52のうち$1.92がキャッシュ書き込みで、キャッシュヒットの$1.44より大きかったです。

ApidogでMuse Wonder APIをテストする

共有されたApidogプロジェクトを使うと、キーをチャットスレッドに出さずに、全員が同じリクエストを利用できます。

  1. 環境を作成します。 名前はMeta Model APIとし、base_urlをhttps://api.meta.ai/v1、MODEL_API_KEYをシークレット変数に設定します。シークレット値はUIでマスクされ、エクスポートされません。
  2. 3つのリクエストを追加します。 エンドポイントごとに1つ作成し、それぞれにAuthorization: Bearer {{MODEL_API_KEY}}を設定します。Responsesリクエストをlow、medium、max努力度用に複製すると、コストを並べて比較できます。
  3. 使用量を検証します。 $.usage.output_tokens_details.reasoning_tokensと$.usage.input_tokens_details.cached_tokensにJSONPathアサーションを追加します。キャッシュヒットを期待したリクエストでcached-tokensが0なら、プレフィックスのバグであり、本番に到達する前に検出できます。
  4. 429をモックします。 Metaのドキュメントでは、約500 msからジッター付き指数バックオフを行い、Retry-Afterを尊重するように指示されています。そのヘッダー付きの429を返すApidogモックにクライアントを向けて、チームの残りメンバーと毎分3,000リクエストの制限を共有する前に再試行ロジックを証明します。
  5. CIで実行します。 Apidog CLIを使用すれば、モデルや価格の変更が顧客環境ではなくパイプラインで失敗として検出されます。

Apidogをダウンロードし、上のリクエスト例から3つのエンドポイントをインポートしてください。

よくある質問

Muse Wonder APIに無料枠はありますか?

ありません。トークンごとの課金で最低料金はないため、少数のテスト呼び出しは数セントで済みますが、無料クレジットはありません。無料アクセスガイドが最も安い方法を紹介しています。

APIデータは訓練に使用されますか?

APIのStandardモードでは使用されません。Muse CodeサブスクリプションはデフォルトでContributorモードになり、その場合はデータを使用します。この設定はAPIではなくMuse Codeにあります。

API経由でMuse Wonder Fullを使用できますか?

できません。呼び出せるモデルIDもトークン単価もありません。Muse CodeのPowerおよびMaximumサブスクライバーのみが選択できます。

レート制限は何ですか?引き上げできますか?

モデルごとに毎分3,000リクエストと400万トークンで、チーム内のすべてのキー合算でカウントされます。Metaの価格ページにはtiersや増額プロセスの記載がありません。レート制限の記事が制限内に収める方法を解説しています。

次のステップ

製品の実際のタスク1件で、同じ呼び出しをlow、medium、max努力度で実行してください。デフォルトを決める前にreasoning_tokensを比較します。請求額は$4という見出しではなく、この数値に従って増えます。

Top comments (0)