Кратко
Muse Wonder — предпросмотровая модель Meta для сложного кодирования, рассуждений и агентных рабочих процессов. Разработчики могут получить доступ к Muse Wonder API в CometAPI с помощью клиента, совместимого с OpenAI, и model="muse-wonder". Это руководство помогает разработчикам, знакомым с Python или JavaScript, отправить первый запрос, добавить потоковую передачу и оценить рассуждения, медиа и стоимость. По сравнению с Muse Spark, практическая причина оценивать Wonder — его потенциал надежнее завершать сложные задачи; одно лишь большое контекстное окно само по себе не является причиной для миграции.
Ключевые выводы
- Интеграция: используйте серверный API-ключ,
https://api.cometapi.com/v1и model="muse-wonder". - Вместимость: Muse Wonder имеет контекстное окно на 1,048,576 токенов; сокращайте повторяющийся контекст для контроля стоимости.
- Возможности: отдельно оценивайте поток, вызовы инструментов и медиа на выбранном маршруте шлюза.
- Рассуждение: нативный Muse Wonder поддерживает уровни от minimal до max; высокий уровень увеличивает расход токенов и задержку.
- Развертывание: бенчмаркайте реальные задачи, проверяйте текущую тарификацию и сохраняйте модель отката перед расширением трафика.
Что такое Muse Wonder API?
Meta представила Muse Wonder 12 октября 2026 года. Модель доступна в предпросмотре через Meta Model API для сложного кодирования, рассуждений и рабочих процессов с инструментами. CometAPI использует идентификатор модели muse-wonder; нативный идентификатор Meta — muse-wonder-1.0.
Нативная модель ориентирована на продолжительные рассуждения, кодирование и работу, управляемую инструментами. Приложения по-прежнему предоставляют инструменты, постоянное состояние, условия остановки и проверки разрешений; отдельный вызов модели не создает автономную среду выполнения.
Характеристики Muse Wonder API
| Спецификация | Документация модели Meta |
|---|---|
| Разработчик | Meta |
| Релиз | 12 октября 2026 |
| Нативный идентификатор Meta | muse-wonder-1.0 |
| Идентификатор CometAPI | muse-wonder |
| Нативное контекстное окно | 1,048,576 токенов |
| Нативные входные данные | Текст, изображение, видео, аудио и PDF; форматы шлюза требуют отдельной валидации |
| Вывод | Текст |
| Статус нативного API | Предпросмотр |
| Поток и инструменты | Нативные возможности API; проверьте выбранный маршрут CometAPI |
| Полный вариант | Подписки Muse Code, дающие право; не выбирается уровнем рассуждений |
Muse Wonder против Muse Wonder Full
Muse Wonder доступен через Meta Model API; Muse Wonder Full доступен только в подписках Power Usage и Maximum Usage в Muse Code, и установка reasoning_effort в max не переключает на Muse Wonder Full. См. анонс запуска Meta.
Muse Spark API и Muse Wonder API: сравнение
Выбирайте между моделями по измеренной успешности задач и стоимости. Нативное руководство по модели рекомендует Wonder для сложной работы и Spark для экономичных рабочих нагрузок; обе имеют контекстное окно в 1,048,576 токенов. Сравнивайте конкретную версию Spark, а не предполагаете, что все версии имеют одинаковые возможности.
Muse Spark лучше подходит для экономичных нагрузок; Muse Wonder нацелен на сложное кодирование и продолжительные рассуждения. Проверьте поддержку медиа, параметры рассуждений и тарификацию для точной версии модели и маршрута шлюза. Сохраняйте модель, соответствующую вашим целям по успешности задач и стоимости.
Как использовать Muse Wonder API с CometAPI: по шагам
Шаг 1: Создайте и защитите свой ключ CometAPI
Создайте учетную запись, сгенерируйте серверный API-ключ и держите его вне кода браузера и публичных репозиториев. Следуйте документации по интеграции CometAPI для аутентификации. Эти примеры требуют профинансированного или соответствующего аккаунта, Python 3.10+ или поддерживаемой среды Node.js LTS, и исходящего HTTPS-доступа. Сохраните примеры JavaScript как файлы .mjs.
Установите API-ключ в сеансе Bash.
export COMETAPI_KEY="your_cometapi_api_key"
Установите API-ключ в сеансе PowerShell.
$env:COMETAPI_KEY="your_cometapi_api_key"
Шаг 2: Настройте конечную точку Muse Wonder
| Параметр | Значение |
|---|---|
| Base URL | https://api.cometapi.com/v1 |
| Chat endpoint | /chat/completions |
| HTTP method | POST |
| Authorization | Bearer API key |
| Model | muse-wonder |
Шаг 3: Отправьте первый запрос с cURL
Отправьте минимальный аутентифицированный чат-запрос.
curl -X POST "https://api.cometapi.com/v1/chat/completions" \
-H "Authorization: Bearer $COMETAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "muse-wonder",
"messages": [
{"role": "system", "content": "You are a senior engineer."},
{"role": "user", "content": "List three ways to improve Python API reliability."}
],
"stream": false
}'
Успешный незапотоковый запрос должен вернуть choices[0].message.content. Проверьте возвращенные model и usage, если они присутствуют, и убедитесь, что текст отвечает на ваш запрос. Ошибки аутентификации требуют проверки учетных данных; ошибка недействительной модели требует проверки доступа к модели. Примеры иллюстрируют шаблоны запросов и не представляют измеренную задержку или результаты бенчмарков.
Шаг 4: Выполните запрос на Python
Установите клиентскую библиотеку Python.
pip install --upgrade openai
Отправьте запрос на Python и проверьте использование токенов.
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1",
timeout=120.0,
)
response = client.chat.completions.create(
model="muse-wonder",
messages=[
{"role": "system", "content": "You are a Python engineer."},
{"role": "user", "content": "Review: def divide(a,b): return a/b"},
],
)
print(response.choices[0].message.content)
if response.usage:
print("Total tokens:", response.usage.total_tokens)
Шаг 5: Используйте JavaScript или Node.js
Установите клиентскую библиотеку JavaScript.
npm install openai
Отправьте запрос в Node.js.
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.COMETAPI_KEY,
baseURL: "https://api.cometapi.com/v1",
});
const response = await client.chat.completions.create({
model: "muse-wonder",
messages: [{role: "user", content: "Explain async/await."}],
});
console.log(response.choices[0].message.content);
Как транслировать ответы Muse Wonder через CometAPI
Потоковая передача возвращает инкрементальные фрагменты ответа через Server-Sent Events. Она улучшает воспринимаемую отзывчивость, хотя не обязательно общую стоимость или время завершения. Отображайте только фрагменты, содержащие контент, и обрабатывайте прерывания и тайм-ауты.
Пример потоковой передачи на Python
Чтение инкрементальных фрагментов ответа на Python.
import os
from openai import OpenAI
client = OpenAI(api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1", timeout=180.0)
stream = client.chat.completions.create(
model="muse-wonder",
messages=[{"role": "user", "content": "Design a scalable FastAPI service."}],
stream=True,
)
parts = []
for chunk in stream:
if not chunk.choices:
continue
content = chunk.choices[0].delta.content
if content:
print(content, end="", flush=True)
parts.append(content)
print("\nResponse complete.")
Пример потоковой передачи на JavaScript
Чтение инкрементальных фрагментов ответа в Node.js.
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.COMETAPI_KEY,
baseURL: "https://api.cometapi.com/v1",
});
const stream = await client.chat.completions.create({
model: "muse-wonder",
messages: [{role: "user", content: "Outline a research agent."}],
stream: true,
});
for await (const chunk of stream) {
const text = chunk.choices?.[0]?.delta?.content;
if (text) process.stdout.write(text);
}
Какие уровни усилий для рассуждений поддерживает Muse Wonder?
Поддерживаемые значения усилий для рассуждений
Нативная модель принимает minimal, low, medium, high, xhigh и max; none не поддерживается. Начните с умеренной настройки и повышайте ее только тогда, когда ваши оценки оправдывают дополнительную задержку и стоимость по токенам. См. справочник по рассуждениям Meta. Отдельно протестируйте переадресацию через шлюз.
Как задать уровень усилий для рассуждений в Chat Completions
Следующий пример отправляет high через шлюз как тест возможностии. Если отклонено, изучите ошибку перед удалением поля: 400 также может означать недействительные messages, некорректную модель или другую проблему запроса. Повторите с минимальным текстовым запросом, чтобы изолировать причину.
Протестируйте высокий уровень усилий для рассуждений на шлюзе.
import os
from openai import OpenAI, BadRequestError
client = OpenAI(api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1")
try:
response = client.chat.completions.create(
model="muse-wonder",
messages=[{"role": "user", "content": "Diagnose a distributed timeout."}],
extra_body={"reasoning_effort": "high"},
)
print(response.choices[0].message.content)
except BadRequestError as err:
print("This reasoning parameter may not be accepted:", err)
Как задать уровень усилий для рассуждений в Responses API
Нативный Responses API вкладывает поле как reasoning.effort и использует muse-wonder-1.0. Пример ниже использует учетные данные Meta и его нативную конечную точку; подтвердите поддержку Responses отдельно, прежде чем адаптировать это к CometAPI.
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["META_API_KEY"],
base_url="https://api.meta.ai/v1",
)
response = client.responses.create(
model="muse-wonder-1.0",
input="Diagnose a distributed timeout.",
reasoning={"effort": "high"},
)
print(response.output_text)
Почему max не выбирает Muse Wonder Full
max изменяет бюджет рассуждений выбранной модели. Он не меняет идентификатор модели и не дает доступ к Full; различие в доступе объясняется во введении к модели.
Как Muse Wonder API может анализировать изображения и PDF
Meta документирует ввод изображений, видео, аудио и PDF для нативного Wonder. Нативная поддержка медиа у Meta не гарантирует, что CometAPI примет ту же схему контента, формат URL, типы файлов или ограничения размера. Проверьте эти детали на выбранном маршруте перед промышленной эксплуатацией. Пример image_url ниже — шаблон совместимости: используйте доступное изображение под вашим контролем, подтвердите поддержку конечной точки и сравните ответ с видимыми деталями.
Протестируйте URL изображения с известной картинкой.
import os
from openai import OpenAI
client = OpenAI(api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1")
response = client.chat.completions.create(
model="muse-wonder",
messages=[{"role": "user", "content": [
{"type": "text", "text": "Describe anomalies in this dashboard."},
{"type": "image_url", "image_url": {
"url": "https://example.com/dashboard.png"}},
]}],
)
print(response.choices[0].message.content)
Для предсказуемого текстового процесса с PDF извлекайте выделяемый текст локально и отправляйте выбранные фрагменты как текст. Это не тестирует нативный ввод PDF и не сохраняет макет страницы, рисунки или отсканированный контент. Пример ограничивает ввод 50,000 символами для небольшого теста; в продакшене извлекайте или разбивайте контент и сохраняйте ссылки на страницы вместо тихой обрезки отчета.
Извлеките выделяемый текст PDF для ограниченного теста.
# pip install pymupdf openai
import os
import fitz
from openai import OpenAI
client = OpenAI(api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1")
with fitz.open("report.pdf") as doc:
document_text = "\n".join(p.get_text() for p in doc)
response = client.chat.completions.create(
model="muse-wonder",
messages=[{"role": "user", "content":
"Summarize the risks in this report:\n" + document_text[:50000]}],
)
print(response.choices[0].message.content)
Как построить агента с вызовом инструментов с Muse Wonder API
Модель может запросить вызов функции, но приложение должно его авторизовать и выполнить. Этот пример демонстрирует один ограниченный, только для чтения, поиск статуса заказа; в продакшене валидируйте входные данные и ограничивайте инструменты разрешениями.
Выполните ограниченный запрос инструмента статуса заказа.
import json, os
from openai import OpenAI
client = OpenAI(api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1")
tools = [{"type": "function", "function": {
"name": "get_order_status",
"description": "Look up an order status",
"parameters": {"type": "object",
"properties": {"order_id": {"type": "string"}},
"required": ["order_id"], "additionalProperties": False}
}}]
messages = [{"role": "user", "content": "Status of order A1001?"}]
r = client.chat.completions.create(model="muse-wonder",
messages=messages, tools=tools, tool_choice="auto")
msg = r.choices[0].message
messages.append(msg)
if msg.tool_calls:
for call in msg.tool_calls:
if call.function.name != "get_order_status":
raise ValueError("Tool not permitted")
args = json.loads(call.function.arguments)
status = {"A1001": "Shipped"}.get(args["order_id"], "Not found")
messages.append({"role": "tool", "tool_call_id": call.id,
"content": json.dumps({"status": status})})
r = client.chat.completions.create(model="muse-wonder",
messages=messages, tools=tools)
print(r.choices[0].message.content)
else:
print(msg.content)
Этот учебный пример обрабатывает один раунд вызова инструмента. Если последующий ответ запрашивает еще один вызов инструмента, продолжайте только в пределах ограниченного цикла и снова валидируйте его имя и аргументы. Сохраняйте результаты инструментов для безопасности повторов; производственный агент также нуждается в лимите по времени, ограничении итераций и четком условии завершения.
Сколько стоит Muse Wonder API
Официальная тарификация Meta сообщает $4.00 за миллион не кэшированных входных токенов, $0.20 за миллион кэшированных входных токенов и $20.00 за миллион выходных токенов.
Снимок цен источника от 14 октября 2026 года указывает стоимость CometAPI $3.20 за миллион не кэшированных входных токенов и $16.00 за миллион выходных токенов. Это ставки шлюза, а не замена цен Meta $4.00 на вход и $20.00 на выход. Подтвердите текущие ставки вашего аккаунта и маршрута перед использованием; тариф CometAPI на кэшированный вход не предполагается.
| На 1M токенов | Нативный API Meta | Muse Wonder API в CometAPI |
|---|---|---|
| Некэшированный вход | $4.00 | $3.20 |
| Кэшированный вход | $0.20 | Подтвердите тариф маршрута |
| Выход | $20.00 | $16.00 |
Для 100,000 не кэшированных входных токенов и 50,000 тарифицируемых выходных токенов указанные ставки Meta дают $0.40 + $1.00 = $1.40. Указанные ставки CometAPI дают $0.32 + $0.80 = $1.12. Этот пример исключает дополнительные сборы и не предполагает скидку за кэш.
В этом некэшированном примере указанные ставки CometAPI дают оценку на 20% ниже. Реальные счета зависят от использования токенов, тарификации маршрута и любых дополнительных сборов. Если применяется кэширование, рассчитывайте его по подтвержденному тарифу на кэшированные данные, а не применяйте некэшированную ставку ко всем токенам.
Оцените стоимость по ставкам CometAPI из исходного снимка; замените их подтвержденными ставками вашего аккаунта.
def estimate_cost(input_tokens, output_tokens,
input_rate=3.20, output_rate=16.00):
if input_tokens < 0 or output_tokens < 0:
raise ValueError('Token counts must be non-negative')
return (input_tokens * input_rate
+ output_tokens * output_rate) / 1_000_000
print(estimate_cost(100000, 50000)) # 1.12
Как мигрировать и запускать Muse Wonder в продакшене
Обновите и проверьте интеграцию
Большинство интеграций с клиентами, совместимыми с OpenAI, могут сохранить общую структуру. Обновите базовый URL, учетные данные и ID модели, затем выполните поэтапную оценку на реальных подсказках. Специфичные для протокола поля рассуждений и мультимедиа требуют независимой проверки.
Задайте COMETAPI_KEY, обновите базовый URL на https://api.cometapi.com/v1 и выберите muse-wonder. Проверьте аутентификацию и доступ к модели с минимальным текстовым запросом. Затем отдельно тестируйте поля рассуждений, потоковые фрагменты, выполнение вызовов инструментов и любые форматы медиа. Изучайте ошибки и качество ответов: HTTP 400 может иметь несколько причин, а успешный HTTP-ответ сам по себе не доказывает поддержку возможностей. Записывайте возвращаемое usage и сравнивайте стоимость с вашим бюджетом. Держите базовый URL и модель конфигурируемыми, чтобы вы могли откатиться.
Настройте миграцию и откат, управляемые переменными окружения.
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["COMETAPI_KEY"],
base_url=os.getenv("AI_BASE_URL", "https://api.cometapi.com/v1"),
)
model = os.getenv("AI_MODEL", "muse-wonder")
r = client.chat.completions.create(
model=model,
messages=[{"role":"user", "content":"Review this API design."}],
)
print(r.choices[0].message.content)
Начните с небольшой канарейечной доли живого трафика. Сравнивайте корректность, успех инструментов, задержку до первого токена, общую задержку, частоту повторов и общую стоимость на успешно завершенную задачу перед расширением выката.
Добавьте тайм-ауты, лимиты повторов и мониторинг
Задайте тайм-ауты запросов и явные лимиты; логируйте несекретные идентификаторы запросов и использование токенов; по возможности редактируйте персональные данные; повторяйте только при временных сбоях; и требуйте авторизацию для необратимых действий инструментов. Более дешевый вызов модели не обязательно означает более дешевую задачу, если он вызывает повторы.
Повторяйте временные ошибки с ограниченным экспоненциальным бэк-оффом.
import os, time, random
from openai import (OpenAI, APIConnectionError, APITimeoutError,
RateLimitError, InternalServerError)
client = OpenAI(api_key=os.environ["COMETAPI_KEY"],
base_url="https://api.cometapi.com/v1", timeout=60, max_retries=0)
def complete_with_retry(prompt, attempts=4):
for i in range(attempts):
try:
r = client.chat.completions.create(
model="muse-wonder",
messages=[{"role": "user", "content": prompt}])
return r.choices[0].message.content
except (RateLimitError, APIConnectionError,
APITimeoutError, InternalServerError):
if i == attempts-1:
raise
time.sleep(min(2**i, 16) + random.uniform(0, 0.5))
Рекомендуемая операционная метрика: стоимость за успешную задачу = суммарные затраты на модель и инструменты / число успешных задач. Отслеживайте защитные меры по безопасности и правильности, а также совокупные затраты.
Вопросы и ответы
Почему Muse Wonder API может остановиться до финального ответа?
Рассуждения и видимый текст разделяют бюджет завершения в нативном API. Длинный проход рассуждений может оставить меньше места для финального ответа. Проверьте причину завершения и usage, уменьшите усилия или сузьте задачу и повышайте поддерживаемый маршрутом лимит завершения только в рамках бюджета. Прерванный поток требует отдельной диагностики транспорта.
Стоит ли повторять поток Muse Wonder API с самого начала?
Новый запрос — это новая генерация, а не автоматическое продолжение прерванного ответа. Сохраните частичный вывод и идентификатор запроса, пометьте ответ как незавершенный и решите, запускать ли заново или просить продолжение с явным контекстом. Для рабочих процессов с инструментами сохраняйте выполненные действия, чтобы повтор не выполнял их дважды.
Как валидировать ответы Muse Wonder API на медиа?
Используйте небольшое тестовое изображение или документ с известными фактами и задавайте вопросы, ответы на которые требуют этих фактов. Сравнивайте ответ с оригиналом, включая числа и ссылки на страницы. Один лишь успешный HTTP-статус не доказывает, что конечная точка приняла или интерпретировала медиа корректно; изучайте ошибки и форматы запросов перед масштабированием загрузки.
Как аудировать расхождение стоимости Muse Wonder API?
Записывайте возвращенные usage, модель, маршрут, время запроса и тариф аккаунта на тот момент. Разделяйте некэшированный вход, подтвержденные чтения из кэша и общий тарифицируемый выход, включая рассуждения, где применимо. Сравнивайте эти величины с биллинговой записью; проверьте валюту, изменения тарифов и дополнительные сборы, прежде чем предполагать ошибку учета токенов.
Заключение
Начните с одного аутентифицированного запроса в CometAPI, подтвердите возвращенный ответ, затем добавьте потоковую передачу и возможности, необходимые вашему приложению. Перед промышленным внедрением проверьте выбранный маршрут, подтвердите тарификацию, обеспечьте разрешения на инструменты и держите модель отката. Расширяйте трафик только тогда, когда измеренные успешность задач, задержка и стоимость соответствуют вашим критериям приемки.
