chore(i18n): refresh uk translations
This commit is contained in:
parent
56a685222a
commit
a9ec77db47
@ -2,14 +2,14 @@
|
||||
read_when:
|
||||
- Генерація музики або аудіо через агента
|
||||
- Налаштування провайдерів і моделей для генерації музики
|
||||
- Розуміння параметрів інструмента music_generate
|
||||
summary: Генеруйте музику за допомогою спільних провайдерів, зокрема плагінів на основі workflow
|
||||
- Розуміння параметрів інструмента `music_generate`
|
||||
summary: Генеруйте музику за допомогою спільних провайдерів, включно з плагінами на основі workflow
|
||||
title: Генерація музики
|
||||
x-i18n:
|
||||
generated_at: "2026-04-06T01:05:30Z"
|
||||
generated_at: "2026-04-06T01:46:19Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 7e5dc234b14aee2f5ef766985479b0ba262cceb4510596f6b1cc343a3732838c
|
||||
source_hash: a03de8aa75cfb7248eb0c1d969fb2a6da06117967d097e6f6e95771d0f017ae1
|
||||
source_path: tools/music-generation.md
|
||||
workflow: 15
|
||||
---
|
||||
@ -20,22 +20,22 @@ x-i18n:
|
||||
спільну можливість генерації музики з налаштованими провайдерами, такими як Google,
|
||||
MiniMax і налаштований через workflow ComfyUI.
|
||||
|
||||
Для сеансів агента зі спільними провайдерами OpenClaw запускає генерацію музики як
|
||||
фонове завдання, відстежує його в реєстрі завдань, а потім знову пробуджує агента,
|
||||
коли трек готовий, щоб агент міг надіслати готове аудіо назад у
|
||||
Для сеансів агента на основі спільного провайдера OpenClaw запускає генерацію музики як
|
||||
фонове завдання, відстежує її в журналі завдань, а потім знову пробуджує агента, коли
|
||||
трек готовий, щоб агент міг опублікувати готове аудіо назад у
|
||||
початковий канал.
|
||||
|
||||
<Note>
|
||||
Вбудований спільний інструмент з’являється лише тоді, коли доступний принаймні один провайдер генерації музики. Якщо ви не бачите `music_generate` серед інструментів вашого агента, налаштуйте `agents.defaults.musicGenerationModel` або вкажіть API-ключ провайдера.
|
||||
</Note>
|
||||
|
||||
## Швидкий початок
|
||||
## Швидкий старт
|
||||
|
||||
### Генерація через спільних провайдерів
|
||||
### Генерація на основі спільного провайдера
|
||||
|
||||
1. Установіть API-ключ принаймні для одного провайдера, наприклад `GEMINI_API_KEY` або
|
||||
`MINIMAX_API_KEY`.
|
||||
2. За бажанням установіть бажану модель:
|
||||
2. За потреби встановіть бажану модель:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -50,12 +50,12 @@ MiniMax і налаштований через workflow ComfyUI.
|
||||
```
|
||||
|
||||
3. Попросіть агента: _"Згенеруй енергійний synthpop-трек про нічну поїздку
|
||||
неоновим містом."_
|
||||
крізь неонове місто."_
|
||||
|
||||
Агент викликає `music_generate` автоматично. Додавання інструмента до allow-list не потрібне.
|
||||
Агент викликає `music_generate` автоматично. Додавати інструмент до списку дозволених не потрібно.
|
||||
|
||||
Для прямих синхронних контекстів без запуску агента на основі сеансу вбудований
|
||||
інструмент усе одно переходить до вбудованої генерації та повертає фінальний шлях до медіафайлу в результаті інструмента.
|
||||
інструмент усе одно повертається до вбудованої генерації та повертає фінальний шлях до медіафайлу в результаті інструмента.
|
||||
|
||||
Приклади запитів:
|
||||
|
||||
@ -64,15 +64,15 @@ MiniMax і налаштований через workflow ComfyUI.
|
||||
```
|
||||
|
||||
```text
|
||||
Згенеруй енергійний chiptune-луп про запуск ракети на світанку.
|
||||
Згенеруй енергійну chiptune-петлю про запуск ракети на світанку.
|
||||
```
|
||||
|
||||
### Генерація через Comfy на основі workflow
|
||||
### Генерація Comfy на основі workflow
|
||||
|
||||
Вбудований плагін `comfy` підключається до спільного інструмента `music_generate` через
|
||||
реєстр провайдерів генерації музики.
|
||||
|
||||
1. Налаштуйте `models.providers.comfy.music` за допомогою JSON workflow і
|
||||
1. Налаштуйте `models.providers.comfy.music` за допомогою JSON workflow та
|
||||
вузлів prompt/output.
|
||||
2. Якщо ви використовуєте Comfy Cloud, установіть `COMFY_API_KEY` або `COMFY_CLOUD_API_KEY`.
|
||||
3. Попросіть агента створити музику або викличте інструмент безпосередньо.
|
||||
@ -80,16 +80,16 @@ MiniMax і налаштований через workflow ComfyUI.
|
||||
Приклад:
|
||||
|
||||
```text
|
||||
/tool music_generate prompt="Warm ambient synth loop with soft tape texture"
|
||||
/tool music_generate prompt="Тепла ембієнтна synth-петля з м’якою текстурою стрічки"
|
||||
```
|
||||
|
||||
## Підтримка вбудованих спільних провайдерів
|
||||
## Підтримка спільних вбудованих провайдерів
|
||||
|
||||
| Провайдер | Модель за замовчуванням | Вхідні reference-дані | Підтримувані параметри керування | API-ключ |
|
||||
| --------- | ----------------------- | --------------------- | ------------------------------------------------------ | -------------------------------------- |
|
||||
| ComfyUI | `workflow` | До 1 зображення | Музика або аудіо, визначені workflow | `COMFY_API_KEY`, `COMFY_CLOUD_API_KEY` |
|
||||
| Google | `lyria-3-clip-preview` | До 10 зображень | `lyrics`, `instrumental`, `format` | `GEMINI_API_KEY`, `GOOGLE_API_KEY` |
|
||||
| MiniMax | `music-2.5+` | Немає | `lyrics`, `instrumental`, `durationSeconds`, `format=mp3` | `MINIMAX_API_KEY` |
|
||||
| Провайдер | Модель за замовчуванням | Еталонні входи | Підтримувані елементи керування | API-ключ |
|
||||
| --------- | ----------------------- | -------------- | ----------------------------------------------------- | -------------------------------------- |
|
||||
| ComfyUI | `workflow` | До 1 зображення | Визначена workflow музика або аудіо | `COMFY_API_KEY`, `COMFY_CLOUD_API_KEY` |
|
||||
| Google | `lyria-3-clip-preview` | До 10 зображень | `lyrics`, `instrumental`, `format` | `GEMINI_API_KEY`, `GOOGLE_API_KEY` |
|
||||
| MiniMax | `music-2.5+` | Немає | `lyrics`, `instrumental`, `durationSeconds`, `format=mp3` | `MINIMAX_API_KEY` |
|
||||
|
||||
Використовуйте `action: "list"`, щоб переглянути доступні спільні провайдери та моделі
|
||||
під час виконання:
|
||||
@ -98,8 +98,7 @@ MiniMax і налаштований через workflow ComfyUI.
|
||||
/tool music_generate action=list
|
||||
```
|
||||
|
||||
Використовуйте `action: "status"`, щоб переглянути активне музичне завдання,
|
||||
пов’язане із сеансом:
|
||||
Використовуйте `action: "status"`, щоб переглянути активне завдання музики на основі сеансу:
|
||||
|
||||
```text
|
||||
/tool music_generate action=status
|
||||
@ -108,36 +107,37 @@ MiniMax і налаштований через workflow ComfyUI.
|
||||
Приклад прямої генерації:
|
||||
|
||||
```text
|
||||
/tool music_generate prompt="Dreamy lo-fi hip hop with vinyl texture and gentle rain" instrumental=true
|
||||
/tool music_generate prompt="Мрійливий lo-fi hip hop із вініловою текстурою та ніжним дощем" instrumental=true
|
||||
```
|
||||
|
||||
## Параметри вбудованого інструмента
|
||||
|
||||
| Параметр | Тип | Опис |
|
||||
| ---------------- | -------- | ------------------------------------------------------------------------------------------------- |
|
||||
| `prompt` | string | Запит для генерації музики (обов’язковий для `action: "generate"`) |
|
||||
| `action` | string | `"generate"` (типово), `"status"` для поточного завдання сеансу або `"list"` для перегляду провайдерів |
|
||||
| `prompt` | string | Запит на генерацію музики (обов’язковий для `action: "generate"`) |
|
||||
| `action` | string | `"generate"` (за замовчуванням), `"status"` для поточного завдання сеансу або `"list"` для перегляду провайдерів |
|
||||
| `model` | string | Перевизначення провайдера/моделі, наприклад `google/lyria-3-pro-preview` або `comfy/workflow` |
|
||||
| `lyrics` | string | Необов’язковий текст пісні, якщо провайдер підтримує явне введення тексту |
|
||||
| `instrumental` | boolean | Запитати лише інструментальний результат, якщо провайдер це підтримує |
|
||||
| `image` | string | Шлях або URL одного reference-зображення |
|
||||
| `images` | string[] | Кілька reference-зображень (до 10) |
|
||||
| `instrumental` | boolean | Запит лише на інструментальний результат, якщо провайдер це підтримує |
|
||||
| `image` | string | Шлях або URL одного еталонного зображення |
|
||||
| `images` | string[] | Кілька еталонних зображень (до 10) |
|
||||
| `durationSeconds`| number | Цільова тривалість у секундах, якщо провайдер підтримує підказки щодо тривалості |
|
||||
| `format` | string | Підказка формату виводу (`mp3` або `wav`), якщо провайдер це підтримує |
|
||||
| `filename` | string | Підказка імені вихідного файлу |
|
||||
| `format` | string | Підказка щодо формату виводу (`mp3` або `wav`), якщо провайдер це підтримує |
|
||||
| `filename` | string | Підказка щодо імені вихідного файлу |
|
||||
|
||||
Не всі провайдери підтримують усі параметри. Спільний інструмент перевіряє
|
||||
обмеження можливостей провайдера перед надсиланням запиту.
|
||||
Не всі провайдери підтримують усі параметри. OpenClaw усе одно перевіряє жорсткі обмеження,
|
||||
як-от кількість входів, перед надсиланням, але непідтримувані необов’язкові підказки
|
||||
ігноруються з попередженням, якщо вибраний провайдер або модель не можуть їх виконати.
|
||||
|
||||
## Асинхронна поведінка для шляху через спільних провайдерів
|
||||
## Асинхронна поведінка для шляху на основі спільного провайдера
|
||||
|
||||
- Запуски агента на основі сеансу: `music_generate` створює фонове завдання, одразу повертає відповідь про запуск/завдання, а готовий трек надсилає пізніше в подальшому повідомленні агента.
|
||||
- Запобігання дублюванню: поки це фонове завдання має стан `queued` або `running`, наступні виклики `music_generate` у тому самому сеансі повертають статус завдання замість запуску нової генерації.
|
||||
- Перевірка статусу: використовуйте `action: "status"`, щоб переглянути активне музичне завдання, пов’язане із сеансом, без запуску нового.
|
||||
- Запуски агента на основі сеансу: `music_generate` створює фонове завдання, негайно повертає відповідь started/task і публікує готовий трек пізніше в наступному повідомленні агента.
|
||||
- Запобігання дублюванню: поки це фонове завдання все ще має стан `queued` або `running`, наступні виклики `music_generate` у тому самому сеансі повертають стан завдання замість запуску нової генерації.
|
||||
- Перегляд стану: використовуйте `action: "status"`, щоб переглянути активне музичне завдання на основі сеансу без запуску нового.
|
||||
- Відстеження завдань: використовуйте `openclaw tasks list` або `openclaw tasks show <taskId>`, щоб переглядати статуси queued, running і terminal для генерації.
|
||||
- Пробудження після завершення: OpenClaw вставляє внутрішню подію завершення назад у той самий сеанс, щоб модель могла сама написати повідомлення для користувача.
|
||||
- Підказка для prompt: наступні користувацькі/ручні ходи в тому самому сеансі отримують невелику підказку під час виконання, коли музичне завдання вже виконується, щоб модель не викликала `music_generate` знову бездумно.
|
||||
- Резервний варіант без сеансу: прямі/локальні контексти без реального сеансу агента все одно виконуються вбудовано та повертають фінальний результат аудіо в тому самому ході.
|
||||
- Пробудження після завершення: OpenClaw впроваджує внутрішню подію завершення назад у той самий сеанс, щоб модель могла самостійно написати користувацьке подальше повідомлення.
|
||||
- Підказка в prompt: пізніші користувацькі/ручні ходи в тому самому сеансі отримують невелику підказку часу виконання, коли завдання музики вже виконується, щоб модель не викликала `music_generate` знову бездумно.
|
||||
- Режим без сеансу: прямі/локальні контексти без реального сеансу агента все одно виконуються вбудовано й повертають фінальний результат аудіо в тому самому ході.
|
||||
|
||||
## Налаштування
|
||||
|
||||
@ -156,45 +156,45 @@ MiniMax і налаштований через workflow ComfyUI.
|
||||
}
|
||||
```
|
||||
|
||||
### Порядок вибору провайдерів
|
||||
### Порядок вибору провайдера
|
||||
|
||||
Під час генерації музики OpenClaw намагається використовувати провайдерів у такому порядку:
|
||||
Під час генерації музики OpenClaw намагається використати провайдерів у такому порядку:
|
||||
|
||||
1. параметр `model` з виклику інструмента, якщо агент указує його
|
||||
2. `musicGenerationModel.primary` з конфігурації
|
||||
3. `musicGenerationModel.fallbacks` по порядку
|
||||
4. Автовизначення з використанням лише типових значень провайдерів на основі auth:
|
||||
- спочатку поточний типовий провайдер
|
||||
- решта зареєстрованих провайдерів генерації музики в порядку ідентифікаторів провайдерів
|
||||
1. параметр `model` із виклику інструмента, якщо агент його вказує
|
||||
2. `musicGenerationModel.primary` із конфігурації
|
||||
3. `musicGenerationModel.fallbacks` у заданому порядку
|
||||
4. Автовиявлення з використанням лише стандартних значень провайдерів на основі auth:
|
||||
- спочатку поточний провайдер за замовчуванням
|
||||
- решта зареєстрованих провайдерів генерації музики в порядку provider-id
|
||||
|
||||
Якщо провайдер завершується помилкою, автоматично використовується наступний кандидат. Якщо всі завершуються помилкою,
|
||||
помилка містить деталі кожної спроби.
|
||||
Якщо провайдер завершується помилкою, автоматично пробується наступний кандидат. Якщо всі завершуються помилкою,
|
||||
помилка містить подробиці кожної спроби.
|
||||
|
||||
## Примітки про провайдерів
|
||||
## Примітки щодо провайдерів
|
||||
|
||||
- Google використовує пакетну генерацію Lyria 3. Поточний вбудований потік підтримує
|
||||
prompt, необов’язковий текст пісні та необов’язкові reference-зображення.
|
||||
prompt, необов’язковий текст lyrics і необов’язкові еталонні зображення.
|
||||
- MiniMax використовує пакетний endpoint `music_generation`. Поточний вбудований потік
|
||||
підтримує prompt, необов’язковий текст пісні, інструментальний режим, керування тривалістю та
|
||||
підтримує prompt, необов’язкові lyrics, інструментальний режим, керування тривалістю та
|
||||
вивід у mp3.
|
||||
- Підтримка ComfyUI ґрунтується на workflow і залежить від налаштованого графа та
|
||||
- Підтримка ComfyUI керується workflow і залежить від налаштованого графа та
|
||||
зіставлення вузлів для полів prompt/output.
|
||||
|
||||
## Як вибрати правильний шлях
|
||||
## Вибір правильного шляху
|
||||
|
||||
- Використовуйте шлях через спільних провайдерів, якщо вам потрібні вибір моделі, перемикання на резервних провайдерів і вбудований асинхронний потік завдань/статусу.
|
||||
- Використовуйте шлях через плагін, наприклад ComfyUI, якщо вам потрібен власний граф workflow або провайдер, який не входить до спільної вбудованої можливості генерації музики.
|
||||
- Якщо ви налагоджуєте поведінку, специфічну для ComfyUI, див. [ComfyUI](/uk/providers/comfy). Якщо ви налагоджуєте поведінку спільних провайдерів, почніть із [Google (Gemini)](/uk/providers/google) або [MiniMax](/uk/providers/minimax).
|
||||
- Використовуйте шлях на основі спільного провайдера, якщо вам потрібні вибір моделі, відмовостійке перемикання між провайдерами та вбудований асинхронний потік завдань/стану.
|
||||
- Використовуйте шлях плагіна, наприклад ComfyUI, якщо вам потрібен власний граф workflow або провайдер, який не входить до спільної вбудованої можливості музики.
|
||||
- Якщо ви налагоджуєте поведінку, специфічну для ComfyUI, див. [ComfyUI](/uk/providers/comfy). Якщо ви налагоджуєте поведінку спільного провайдера, почніть із [Google (Gemini)](/uk/providers/google) або [MiniMax](/uk/providers/minimax).
|
||||
|
||||
## Live тести
|
||||
## Живі тести
|
||||
|
||||
Опційне live-покриття для спільних вбудованих провайдерів:
|
||||
Добровільне live-покриття для спільних вбудованих провайдерів:
|
||||
|
||||
```bash
|
||||
OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/music-generation-providers.live.test.ts
|
||||
```
|
||||
|
||||
Опційне live-покриття для вбудованого музичного шляху ComfyUI:
|
||||
Добровільне live-покриття для вбудованого музичного шляху ComfyUI:
|
||||
|
||||
```bash
|
||||
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts
|
||||
@ -210,5 +210,5 @@ OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.
|
||||
- [ComfyUI](/uk/providers/comfy)
|
||||
- [Google (Gemini)](/uk/providers/google)
|
||||
- [MiniMax](/uk/providers/minimax)
|
||||
- [Моделі](/uk/concepts/models) - конфігурація моделей і перемикання на резервні
|
||||
- [Моделі](/uk/concepts/models) - конфігурація моделей і перемикання при відмові
|
||||
- [Огляд інструментів](/uk/tools)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user