Muse работает с тем же ключом gd-… и общим балансом Guard. Для генерации доступны три точных ID: muse-wonder-1.0, muse-spark-1.3 и muse-spark-1.2. Короткое имя muse ведёт на Muse Wonder 1.0. Других публичных ID Muse нет.
Получите ключ в @guardapi, затем выберите HTTP, Python SDK или Node.js SDK. Покупка даёт один общий ключ; отдельная регистрация у Meta не нужна.
- Сохраните ключ в переменной
GUARD_API_KEY; не вставляйте его в репозиторий и не печатайте в журнал. - Выберите API: Messages, Chat Completions или Responses. Программам с OpenAI-совместимым API нужен адрес
https://api.guardrelay.ai/v1, клиентам Anthropic —https://api.guardrelay.ai. - Передайте точный
model(muse-wonder-1.0) и бюджет ответа. Для первого запроса используйте обычный JSON-ответ. - Проверьте текст, конечное состояние и
usage; затем при необходимости включитеstream: true.
export GUARD_API_KEY="gd-ваш-ключ"
curl https://api.guardrelay.ai/v1/chat/completions \
-H "Authorization: Bearer $GUARD_API_KEY" \
-H "content-type: application/json" \
-d '{"model":"muse-wonder-1.0","messages":[{"role":"user","content":"Reply with OK"}],"max_tokens":4096}'$env:GUARD_API_KEY = "gd-ваш-ключ"
$headers = @{ Authorization = "Bearer $env:GUARD_API_KEY" }
$body = @{
model = "muse-wonder-1.0"
max_tokens = 4096
messages = @(@{ role = "user"; content = "Reply with OK" })
} | ConvertTo-Json -Depth 10
Invoke-RestMethod -Method Post `
-Uri "https://api.guardrelay.ai/v1/chat/completions" `
-Headers $headers `
-ContentType "application/json" `
-Body $body| API | Путь | Бюджет ответа |
|---|---|---|
| Messages | POST /v1/messages | max_tokens; без явного значения — 131 072, а если баланс ключа не покрывает такой резерв вместе с запасом ещё на восемь резервов по 32 000, — 32 000 |
| Chat Completions | POST /v1/chat/completions | max_tokens / max_completion_tokens; без явного значения — 4096 |
| Responses | POST /v1/responses | max_output_tokens; без явного значения — 4096 |
Значения по умолчанию задаёт шлюз Guard, а не модель.
Семейство выбирается точным model на общем адресе. Клиентам Anthropic нужен адрес https://api.guardrelay.ai (клиент сам добавляет /v1/messages), OpenAI-совместимым — https://api.guardrelay.ai/v1.
Messages:
curl https://api.guardrelay.ai/v1/messages \
-H "Authorization: Bearer $GUARD_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"muse-wonder-1.0","max_tokens":4096,"messages":[{"role":"user","content":"Reply with OK"}]}'Responses:
curl https://api.guardrelay.ai/v1/responses \
-H "Authorization: Bearer $GUARD_API_KEY" \
-H "content-type: application/json" \
-d '{"model":"muse-wonder-1.0","input":"Reply with OK","max_output_tokens":4096}'Chat Completions показан выше, в быстром старте.
| Model ID | Название | Окно | Предел ответа | Вход |
|---|---|---|---|---|
muse-wonder-1.0 | Muse Wonder 1.0 | 1 048 576 | Meta не публикует предел | Текст, изображения, PDF |
muse-spark-1.3 | Muse Spark 1.3 | 1 048 576 | Meta не публикует предел | Текст, изображения, PDF |
muse-spark-1.2 | Muse Spark 1.2 | 1 048 576 | Meta не публикует предел | Текст, изображения, PDF |
Изображения и PDF передаются встроенными данными base64. Как это сделать, показано на страницах Vision и PDF / documents.
| Модель | Обычный ввод / 1M | Чтение кэша / 1M | Вывод / 1M |
|---|---|---|---|
muse-wonder-1.0 | $4.00 | $0.20 | $20.00 |
muse-spark-1.3 | $1.25 | $0.15 | $4.25 |
muse-spark-1.2 | $1.25 | $0.15 | $4.25 |
Ставки указаны в USD за 1M токенов и равны ставкам Meta Model API. За запись в кэш отдельной платы нет, чтение кэша оплачивается по ставке из таблицы. Длинный контекст оплачивается без надбавки.
Пример для muse-wonder-1.0: 4000 обычных входных + 8000 кэшированных + 1000 выходных токенов стоят 4000×4.00/1M + 8000×0.20/1M + 1000×20.00/1M = $0.03760000.
Поиск в сети оплачивается отдельно: $0.0025 за каждый поисковый запрос Muse, начиная с первого. Подробности ниже, в разделе про поиск.
Уровень размышлений задаётся полем выбранного API. Полного текста размышлений Muse не возвращает; в Responses с reasoning.summary: "auto" Meta может вернуть их краткое изложение (элемент reasoning с полем summary).
| API | Поле уровня |
|---|---|
| Chat Completions | reasoning_effort |
| Responses | reasoning.effort |
| Messages | output_config.effort |
Значения уровня: minimal, low, medium, high, xhigh, max. Значение none не принимается и получает отказ.
Muse ищет в сети поиском Meta через Messages и Responses; в Chat Completions поиска нет. Инструмент web_search_20250305, который присылает Claude Code, Guard переводит в поиск Meta.
{
"model": "muse-wonder-1.0",
"max_tokens": 4096,
"messages": [{"role": "user", "content": "What is new today?"}],
"tools": [{"type": "web_search_20250305", "name": "web_search"}]
}| Что | Списание |
|---|---|
| Поисковый запрос | $0.0025 за каждый запрос, начиная с первого |
| Перед ответом | удерживается стоимость пяти поисков (5 × $0.0025 = $0.0125); итог считается по фактическому числу поисков |
| Чтение страницы | идёт через родной поиск Meta и само по себе платным поиском не считается |
- Страницы читает сам поиск Meta. Отдельного инструмента
web_fetchу Muse нет. - Предел числа поисков
max_uses, который Claude Code присылает с каждым поиском, принимается, но не соблюдается: сколько искать, решает Meta. Каждый поиск оплачивается по цене, указанной выше. Поиск из Claude Code работает. - Списки сайтов (
allowed_domains,blocked_domains) Meta не поддерживает: запрос с ними получает понятный отказ.
POST /v1/messages/count_tokens работает и для Muse. Бесплатный подсчёт перед ответом возвращает приблизительную оценку, а не точный счёт Meta. Это справочное число: списание идёт по фактическому расходу, а не по оценке.
Серверный промпт Muse настраивается так же, как у других семейств: у ключа должно быть действующее право на семейство Muse и включена опция применения. Если условий нет, запрос идёт без промпта. Подробности — на странице Серверные промпты.
- Формат ошибок, коды и
request_idобщие для всех семейств: см. Коды ошибок. - Понятный отказ получают, в том числе: видео и аудио; уровень размышлений
none; списки сайтов в поиске; отдельный инструментweb_fetch.