Skip to main content
Инструмент music_generate создаёт музыку или аудио с помощью общей возможности генерации музыки на базе ComfyUI, fal, Google, MiniMax и OpenRouter.
music_generate отображается, только когда доступен хотя бы один провайдер генерации музыки: явно заданная конфигурация agents.defaults.musicGenerationModel или провайдер с настроенной аутентификацией (например, с заданным ключом API).
При запусках агента с поддержкой сеанса music_generate запускается как фоновая задача, отслеживает ход выполнения в журнале задач, а затем пробуждает агента, когда трек готов, чтобы тот мог сообщить пользователю и прикрепить готовое аудио. Агент завершения следует контракту видимого ответа сеанса: автоматически отправляет итоговый ответ, если это настроено, либо использует message(action="send"), когда сеанс требует применения инструмента сообщений. Если сеанс инициатора неактивен или его не удаётся пробудить, а созданное аудио по-прежнему отсутствует в ответе, OpenClaw идемпотентно отправляет напрямую только недостающее аудио.

Быстрый старт

1

Настройте аутентификацию

Задайте ключ API хотя бы для одного провайдера — например, GEMINI_API_KEY или MINIMAX_API_KEY.
2

Выберите модель по умолчанию (необязательно)

3

Обратитесь к агенту

«Создай энергичный синти-поп-трек о ночной поездке по неоновому городу».Агент автоматически вызывает music_generate. Добавлять инструмент в список разрешённых не требуется.
Без запуска агента с поддержкой сеанса (в прямом или локальном контексте) инструмент выполняется синхронно и возвращает путь к готовому медиафайлу в том же результате инструмента.
Примеры запросов:
Используйте action: "list" для просмотра доступных провайдеров и моделей, а action: "status" — для просмотра активной музыкальной задачи с поддержкой сеанса:
Пример прямой генерации:

Поддерживаемые провайдеры

MiniMax регистрирует два идентификатора провайдера с общими моделями: minimax для аутентификации по ключу API и minimax-portal для OAuth. Ссылки на модели соответствуют способу аутентификации (minimax/music-2.6 и minimax-portal/music-2.6 соответственно); см. MiniMax. Помимо модели по умолчанию на базе MiniMax, fal также предоставляет fal-ai/ace-step/prompt-to-audio (wav, без текста песни и без переключателя инструментального режима) и fal-ai/stable-audio-25/text-to-audio (wav, только запрос). Модель Google по умолчанию lyria-3-clip-preview выводит только mp3; lyria-3-pro-preview также поддерживает wav. MiniMax также предоставляет music-2.6-free, music-cover и music-cover-free. OpenRouter также предоставляет google/lyria-3-clip-preview.

Матрица возможностей

Явный контракт режимов, используемый music_generate, контрактными тестами и общей проверкой в реальной среде:

Параметры инструмента

string
обязательно
Запрос на генерацию музыки. Обязателен для action: "generate".
"generate" | "status" | "list"
по умолчанию:"generate"
"status" возвращает текущую задачу сеанса; "list" просматривает провайдеров.
string
Переопределение провайдера или модели (например, google/lyria-3-pro-preview, comfy/workflow).
string
Необязательный текст песни, если провайдер поддерживает его явную передачу.
boolean
Запросить только инструментальный результат, если провайдер это поддерживает.
string
Путь или URL одного референсного изображения.
string[]
Несколько референсных изображений (до 10 у поддерживающих провайдеров).
number
Целевая длительность в секундах, если провайдер поддерживает указание длительности.
"mp3" | "wav"
Предпочтительный формат вывода, если провайдер его поддерживает.
string
Предпочтительное имя выходного файла.
Не все провайдеры поддерживают все параметры. OpenClaw всё равно проверяет строгие ограничения, например количество входных данных, до отправки запроса. Если провайдер поддерживает длительность, но его максимальное значение меньше запрошенного, OpenClaw ограничивает значение ближайшей поддерживаемой длительностью. Действительно неподдерживаемые необязательные указания игнорируются с предупреждением, если выбранный провайдер или модель не может их выполнить. Результаты инструмента содержат применённые настройки; details.normalization фиксирует все сопоставления запрошенных и применённых значений.
Тайм-ауты запросов к провайдеру настраиваются только оператором. OpenClaw использует agents.defaults.musicGenerationModel.timeoutMs, если он настроен, повышает значения ниже 120000ms до 120000ms, а в остальных случаях устанавливает для запросов к провайдеру тайм-аут по умолчанию 300000ms.

Асинхронное поведение

Генерация музыки с поддержкой сеанса выполняется как фоновая задача:
  • Фоновая задача: music_generate создаёт фоновую задачу, немедленно возвращает ответ о запуске и задаче, а позднее публикует готовый трек в последующем сообщении агента.
  • Предотвращение дубликатов: пока задача находится в состоянии queued или running, последующие вызовы music_generate в том же сеансе возвращают состояние задачи вместо запуска новой генерации. Для явной проверки используйте action: "status". Недавно завершённый совпадающий запрос также дедуплицируется в течение 2 минут.
  • Проверка состояния: openclaw tasks list или openclaw tasks show <taskId> показывает состояние в очереди, выполнения и завершения.
  • Пробуждение после завершения: OpenClaw внедряет внутреннее событие завершения обратно в тот же сеанс, чтобы модель могла самостоятельно написать последующий ответ пользователю.
  • Подсказка в запросе: последующие пользовательские или ручные обращения в том же сеансе получают небольшую подсказку среды выполнения, если музыкальная задача уже выполняется, чтобы модель не вызывала music_generate повторно вслепую.
  • Резервный вариант без сеанса: прямые или локальные контексты без настоящего сеанса агента выполняются синхронно и возвращают итоговое аудио в том же обращении.

Жизненный цикл задачи

Музыкальная задача использует те же состояния, что и общий реестр задач (полную схему состояний, включая timed_out, cancelled и lost, см. в разделе Фоновые задачи). Большинство музыкальных задач проходит следующие состояния: Проверьте состояние через CLI:

Конфигурация

Выбор модели

Порядок выбора провайдера

OpenClaw пробует провайдеров в следующем порядке:
  1. Параметр model из вызова инструмента (если агент его указал).
  2. musicGenerationModel.primary из конфигурации.
  3. musicGenerationModel.fallbacks по порядку.
  4. Автоматическое обнаружение только по значениям провайдеров по умолчанию с настроенной аутентификацией:
    • сначала текущий провайдер текстовой модели по умолчанию, если он также предоставляет генерацию музыки;
    • затем остальные зарегистрированные провайдеры генерации музыки в алфавитном порядке по идентификатору провайдера.
Если провайдер завершается с ошибкой, следующий кандидат пробуется автоматически. Если все попытки завершаются неудачно, ошибка содержит подробности каждой из них. Задайте agents.defaults.mediaGenerationAutoProviderFallback: false, чтобы использовать только явные записи model, primary и fallbacks.

Примечания о провайдерах

Управляется рабочим процессом и зависит от настроенного графа и сопоставления узлов с полями промпта и вывода. Встроенный плагин comfy подключается к общему инструменту music_generate через реестр провайдеров генерации музыки.
Использует конечные точки моделей fal через общий механизм аутентификации провайдеров. Встроенный провайдер по умолчанию использует fal-ai/minimax-music/v2.6, а также предоставляет fal-ai/ace-step/prompt-to-audio и fal-ai/stable-audio-25/text-to-audio для запросов преобразования промпта в аудио. Тексты песен и инструментальный режим поддерживаются только моделью MiniMax; две другие модели работают только с промптами.
Использует пакетную генерацию Lyria 3. Текущий встроенный процесс поддерживает промпт, необязательный текст песни и необязательные эталонные изображения. Модель lyria-3-clip-preview, используемая по умолчанию, выводит только mp3; модель lyria-3-pro-preview также поддерживает wav.
Использует пакетную конечную точку music_generation. Поддерживает промпт, необязательный текст песни, инструментальный режим и вывод mp3 с аутентификацией либо по API-ключу minimax, либо через OAuth minimax-portal. Также предоставляет модели music-2.6-free, music-cover и music-cover-free.
Использует аудиовывод завершений чата OpenRouter с включённой потоковой передачей. Встроенный провайдер по умолчанию использует google/lyria-3-pro-preview, а также предоставляет openrouter/google/lyria-3-clip-preview.

Выбор подходящего пути

  • На основе общего провайдера — если вам нужны выбор модели, переключение на резервного провайдера и встроенный асинхронный процесс задач и статусов.
  • Путь плагина (ComfyUI) — если вам нужен пользовательский граф рабочего процесса или провайдер, который не входит в общую встроенную возможность генерации музыки.
Если вы отлаживаете поведение, специфичное для ComfyUI, см. ComfyUI. Если вы отлаживаете поведение общего провайдера, начните с fal, Google (Gemini), MiniMax или OpenRouter.

Режимы возможностей провайдеров

Общий контракт генерации музыки поддерживает явные объявления режимов:
  • generate для генерации только по промпту.
  • edit, когда запрос содержит одно или несколько эталонных изображений.
В новых реализациях провайдеров следует отдавать предпочтение явным блокам режимов:
Устаревших плоских полей, таких как maxInputImages, supportsLyrics и supportsFormat, недостаточно для объявления поддержки редактирования. Провайдеры должны явно объявлять generate и edit, чтобы тесты в реальной среде, контрактные тесты и общий инструмент music_generate могли детерминированно проверять поддержку режимов.

Тесты в реальной среде

Опциональное тестирование в реальной среде для общих встроенных провайдеров (fal, Google, MiniMax, OpenRouter):
Эквивалентная обёртка репозитория, запускающая тот же тестовый файл:
Этот файл тестов в реальной среде по умолчанию использует уже экспортированные переменные окружения провайдера раньше сохранённых профилей аутентификации и выполняет тестирование как generate, так и объявленного edit, когда провайдер включает режим редактирования. Текущее покрытие:
  • google: generate и edit
  • fal: только generate
  • minimax: только generate
  • openrouter: generate и edit
  • comfy: отдельное тестирование Comfy в реальной среде, не входящее в общую проверку провайдеров
Опциональное тестирование в реальной среде для встроенного пути генерации музыки ComfyUI:
Файл тестов Comfy в реальной среде также охватывает рабочие процессы с изображениями и видео, если соответствующие разделы настроены.

Связанные материалы