chore(i18n): refresh uk translations
This commit is contained in:
parent
3234e5e222
commit
81a4b35462
@ -2,35 +2,35 @@
|
||||
read_when:
|
||||
- Ви хочете використовувати генерацію зображень fal в OpenClaw
|
||||
- Вам потрібен потік автентифікації `FAL_KEY`
|
||||
- Вам потрібні типові налаштування fal для `image_generate` або `video_generate`
|
||||
summary: налаштування генерації зображень і відео fal в OpenClaw
|
||||
- Ви хочете типові налаштування fal для `image_generate` або `video_generate`
|
||||
summary: Налаштування генерації зображень і відео fal в OpenClaw
|
||||
title: fal
|
||||
x-i18n:
|
||||
generated_at: "2026-04-11T01:39:18Z"
|
||||
generated_at: "2026-04-11T01:59:37Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 6865c3110cbb9d63f4ecec4467f89a801478759cd7a2f3efa83e8f7ce1dc3e67
|
||||
source_hash: 9bfe4f69124e922a79a516a1bd78f0c00f7a45f3c6f68b6d39e0d196fa01beb3
|
||||
source_path: providers/fal.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# fal
|
||||
|
||||
OpenClaw постачається з вбудованим провайдером `fal` для хостингової генерації зображень і відео.
|
||||
OpenClaw постачається зі вбудованим провайдером `fal` для хостингової генерації зображень і відео.
|
||||
|
||||
- Провайдер: `fal`
|
||||
- Автентифікація: `FAL_KEY` (канонічний варіант; `FAL_API_KEY` також працює як запасний)
|
||||
- Автентифікація: `FAL_KEY` (канонічний варіант; `FAL_API_KEY` також працює як резервний)
|
||||
- API: кінцеві точки моделей fal
|
||||
|
||||
## Швидкий старт
|
||||
## Швидкий початок
|
||||
|
||||
1. Установіть API-ключ:
|
||||
1. Встановіть API-ключ:
|
||||
|
||||
```bash
|
||||
openclaw onboard --auth-choice fal-api-key
|
||||
```
|
||||
|
||||
2. Установіть типову модель зображень:
|
||||
2. Встановіть типову модель зображень:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -49,7 +49,7 @@ openclaw onboard --auth-choice fal-api-key
|
||||
Вбудований провайдер генерації зображень `fal` типово використовує
|
||||
`fal/fal-ai/flux/dev`.
|
||||
|
||||
- Генерація: до 4 зображень за запит
|
||||
- Генерація: до 4 зображень на запит
|
||||
- Режим редагування: увімкнено, 1 еталонне зображення
|
||||
- Підтримує `size`, `aspectRatio` і `resolution`
|
||||
- Поточне обмеження редагування: кінцева точка редагування зображень fal **не** підтримує
|
||||
@ -74,8 +74,10 @@ openclaw onboard --auth-choice fal-api-key
|
||||
Вбудований провайдер генерації відео `fal` типово використовує
|
||||
`fal/fal-ai/minimax/video-01-live`.
|
||||
|
||||
- Режими: перетворення тексту на відео та потоки з одним еталонним зображенням
|
||||
- Режими: text-to-video і потоки з одним еталонним зображенням
|
||||
- Середовище виконання: потік submit/status/result на основі черги для довготривалих завдань
|
||||
- Посилання на модель відеоагента HeyGen:
|
||||
- `fal/fal-ai/heygen/v2/video-agent`
|
||||
- Посилання на моделі Seedance 2.0:
|
||||
- `fal/bytedance/seedance-2.0/fast/text-to-video`
|
||||
- `fal/bytedance/seedance-2.0/fast/image-to-video`
|
||||
@ -96,6 +98,20 @@ openclaw onboard --auth-choice fal-api-key
|
||||
}
|
||||
```
|
||||
|
||||
Щоб використовувати HeyGen video-agent як типову модель відео:
|
||||
|
||||
```json5
|
||||
{
|
||||
agents: {
|
||||
defaults: {
|
||||
videoGenerationModel: {
|
||||
primary: "fal/fal-ai/heygen/v2/video-agent",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
## Пов’язане
|
||||
|
||||
- [Генерація зображень](/uk/tools/image-generation)
|
||||
|
||||
@ -2,24 +2,24 @@
|
||||
read_when:
|
||||
- Створення відео через агента
|
||||
- Налаштування провайдерів і моделей для генерації відео
|
||||
- Розуміння параметрів інструмента video_generate
|
||||
summary: Генеруйте відео з тексту, зображень або наявних відео за допомогою 12 бекендів провайдерів
|
||||
- Розуміння параметрів інструмента `video_generate`
|
||||
summary: Створюйте відео з тексту, зображень або наявних відео за допомогою 12 бекендів провайдерів
|
||||
title: Генерація відео
|
||||
x-i18n:
|
||||
generated_at: "2026-04-11T01:39:19Z"
|
||||
generated_at: "2026-04-11T01:59:36Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: f0949cd819b40b909801d877066bcdea01ca7335f6cdd807cb4155953734ffdc
|
||||
source_hash: 6848d03ef578181902517d068e8d9fe2f845e572a90481bbdf7bd9f1c591f245
|
||||
source_path: tools/video-generation.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Генерація відео
|
||||
|
||||
Агенти OpenClaw можуть генерувати відео з текстових підказок, еталонних зображень або наявних відео. Підтримуються дванадцять бекендів провайдерів, кожен з яких має різні варіанти моделей, режими введення та набори функцій. Агент автоматично вибирає відповідного провайдера на основі вашої конфігурації та доступних API-ключів.
|
||||
Агенти OpenClaw можуть створювати відео з текстових запитів, еталонних зображень або наявних відео. Підтримуються дванадцять бекендів провайдерів, кожен із різними варіантами моделей, режимами введення та наборами можливостей. Агент автоматично вибирає потрібного провайдера на основі вашої конфігурації та доступних API-ключів.
|
||||
|
||||
<Note>
|
||||
Інструмент `video_generate` з’являється лише тоді, коли доступний принаймні один провайдер генерації відео. Якщо ви його не бачите серед інструментів вашого агента, задайте API-ключ провайдера або налаштуйте `agents.defaults.videoGenerationModel`.
|
||||
Інструмент `video_generate` з’являється, лише коли доступний принаймні один провайдер генерації відео. Якщо ви його не бачите в інструментах агента, установіть API-ключ провайдера або налаштуйте `agents.defaults.videoGenerationModel`.
|
||||
</Note>
|
||||
|
||||
OpenClaw розглядає генерацію відео як три режими виконання:
|
||||
@ -32,47 +32,47 @@ OpenClaw розглядає генерацію відео як три режим
|
||||
|
||||
## Швидкий старт
|
||||
|
||||
1. Задайте API-ключ для будь-якого підтримуваного провайдера:
|
||||
1. Установіть API-ключ для будь-якого підтримуваного провайдера:
|
||||
|
||||
```bash
|
||||
export GEMINI_API_KEY="your-key"
|
||||
```
|
||||
|
||||
2. За потреби закріпіть модель за замовчуванням:
|
||||
2. За потреби зафіксуйте модель за замовчуванням:
|
||||
|
||||
```bash
|
||||
openclaw config set agents.defaults.videoGenerationModel.primary "google/veo-3.1-fast-generate-preview"
|
||||
```
|
||||
|
||||
3. Зверніться до агента:
|
||||
3. Попросіть агента:
|
||||
|
||||
> Згенеруй 5-секундне кінематографічне відео дружнього лобстера, який серфить на заході сонця.
|
||||
> Створи 5-секундне кінематографічне відео з доброзичливим лобстером, який серфить на заході сонця.
|
||||
|
||||
Агент автоматично викликає `video_generate`. Дозволений список інструментів не потрібен.
|
||||
Агент автоматично викликає `video_generate`. Додавання інструмента до allowlist не потрібне.
|
||||
|
||||
## Що відбувається, коли ви генеруєте відео
|
||||
## Що відбувається, коли ви створюєте відео
|
||||
|
||||
Генерація відео є асинхронною. Коли агент викликає `video_generate` у сесії:
|
||||
|
||||
1. OpenClaw надсилає запит провайдеру й одразу повертає ідентифікатор завдання.
|
||||
1. OpenClaw надсилає запит провайдеру й одразу повертає ID завдання.
|
||||
2. Провайдер обробляє завдання у фоновому режимі (зазвичай від 30 секунд до 5 хвилин залежно від провайдера та роздільної здатності).
|
||||
3. Коли відео готове, OpenClaw пробуджує ту саму сесію внутрішньою подією завершення.
|
||||
3. Коли відео готове, OpenClaw пробуджує цю саму сесію внутрішньою подією завершення.
|
||||
4. Агент публікує готове відео назад в оригінальну розмову.
|
||||
|
||||
Поки завдання виконується, повторні виклики `video_generate` у тій самій сесії повертають поточний стан завдання замість запуску нової генерації. Щоб перевірити перебіг із CLI, використовуйте `openclaw tasks list` або `openclaw tasks show <taskId>`.
|
||||
Поки завдання виконується, повторні виклики `video_generate` у тій самій сесії повертають поточний стан завдання замість запуску нової генерації. Використовуйте `openclaw tasks list` або `openclaw tasks show <taskId>`, щоб перевірити прогрес через CLI.
|
||||
|
||||
Поза межами запусків агента з підтримкою сесії (наприклад, для прямих викликів інструмента) інструмент переходить до вбудованої генерації та повертає фінальний шлях до медіа в тому самому ході.
|
||||
Поза запусками агента, що прив’язані до сесії (наприклад, під час прямих викликів інструмента), інструмент переходить до inline-генерації та повертає остаточний шлях до медіафайлу в тому самому ході.
|
||||
|
||||
### Життєвий цикл завдання
|
||||
|
||||
Кожен запит `video_generate` проходить через чотири стани:
|
||||
|
||||
1. **queued** -- завдання створено, очікує, поки провайдер його прийме.
|
||||
2. **running** -- провайдер обробляє запит (зазвичай від 30 секунд до 5 хвилин залежно від провайдера та роздільної здатності).
|
||||
3. **succeeded** -- відео готове; агент пробуджується і публікує його в розмову.
|
||||
4. **failed** -- помилка провайдера або тайм-аут; агент пробуджується з відомостями про помилку.
|
||||
2. **running** -- провайдер виконує обробку (зазвичай від 30 секунд до 5 хвилин залежно від провайдера та роздільної здатності).
|
||||
3. **succeeded** -- відео готове; агент пробуджується та публікує його в розмову.
|
||||
4. **failed** -- помилка провайдера або тайм-аут; агент пробуджується з деталями помилки.
|
||||
|
||||
Перевірка стану з CLI:
|
||||
Перевірка стану через CLI:
|
||||
|
||||
```bash
|
||||
openclaw tasks list
|
||||
@ -80,57 +80,57 @@ openclaw tasks show <taskId>
|
||||
openclaw tasks cancel <taskId>
|
||||
```
|
||||
|
||||
Запобігання дублюванню: якщо для поточної сесії завдання відеогенерації вже перебуває у стані `queued` або `running`, `video_generate` повертає стан наявного завдання замість запуску нового. Щоб явно перевірити стан без запуску нової генерації, використовуйте `action: "status"`.
|
||||
Запобігання дублюванню: якщо для поточної сесії вже є відеозавдання у стані `queued` або `running`, `video_generate` повертає стан наявного завдання замість запуску нового. Використовуйте `action: "status"`, щоб явно перевірити стан без запуску нової генерації.
|
||||
|
||||
## Підтримувані провайдери
|
||||
|
||||
| Провайдер | Модель за замовчуванням | Текст | Еталонне зображення | Еталонне відео | API-ключ |
|
||||
| --------- | ------------------------------- | ----- | ------------------- | -------------- | ---------------------------------------- |
|
||||
| Alibaba | `wan2.6-t2v` | Так | Так (віддалений URL) | Так (віддалений URL) | `MODELSTUDIO_API_KEY` |
|
||||
| BytePlus | `seedance-1-0-lite-t2v-250428` | Так | 1 зображення | Ні | `BYTEPLUS_API_KEY` |
|
||||
| ComfyUI | `workflow` | Так | 1 зображення | Ні | `COMFY_API_KEY` або `COMFY_CLOUD_API_KEY` |
|
||||
| fal | `fal-ai/minimax/video-01-live` | Так | 1 зображення | Ні | `FAL_KEY` |
|
||||
| Google | `veo-3.1-fast-generate-preview` | Так | 1 зображення | 1 відео | `GEMINI_API_KEY` |
|
||||
| MiniMax | `MiniMax-Hailuo-2.3` | Так | 1 зображення | Ні | `MINIMAX_API_KEY` |
|
||||
| OpenAI | `sora-2` | Так | 1 зображення | 1 відео | `OPENAI_API_KEY` |
|
||||
| Qwen | `wan2.6-t2v` | Так | Так (віддалений URL) | Так (віддалений URL) | `QWEN_API_KEY` |
|
||||
| Runway | `gen4.5` | Так | 1 зображення | 1 відео | `RUNWAYML_API_SECRET` |
|
||||
| Together | `Wan-AI/Wan2.2-T2V-A14B` | Так | 1 зображення | Ні | `TOGETHER_API_KEY` |
|
||||
| Vydra | `veo3` | Так | 1 зображення (`kling`) | Ні | `VYDRA_API_KEY` |
|
||||
| xAI | `grok-imagine-video` | Так | 1 зображення | 1 відео | `XAI_API_KEY` |
|
||||
| Провайдер | Модель за замовчуванням | Текст | Еталонне зображення | Еталонне відео | API-ключ |
|
||||
| --------- | -------------------------------- | ----- | ------------------- | --------------- | ---------------------------------------- |
|
||||
| Alibaba | `wan2.6-t2v` | Yes | Yes (віддалений URL) | Yes (віддалений URL) | `MODELSTUDIO_API_KEY` |
|
||||
| BytePlus | `seedance-1-0-lite-t2v-250428` | Yes | 1 зображення | No | `BYTEPLUS_API_KEY` |
|
||||
| ComfyUI | `workflow` | Yes | 1 зображення | No | `COMFY_API_KEY` or `COMFY_CLOUD_API_KEY` |
|
||||
| fal | `fal-ai/minimax/video-01-live` | Yes | 1 зображення | No | `FAL_KEY` |
|
||||
| Google | `veo-3.1-fast-generate-preview` | Yes | 1 зображення | 1 відео | `GEMINI_API_KEY` |
|
||||
| MiniMax | `MiniMax-Hailuo-2.3` | Yes | 1 зображення | No | `MINIMAX_API_KEY` |
|
||||
| OpenAI | `sora-2` | Yes | 1 зображення | 1 відео | `OPENAI_API_KEY` |
|
||||
| Qwen | `wan2.6-t2v` | Yes | Yes (віддалений URL) | Yes (віддалений URL) | `QWEN_API_KEY` |
|
||||
| Runway | `gen4.5` | Yes | 1 зображення | 1 відео | `RUNWAYML_API_SECRET` |
|
||||
| Together | `Wan-AI/Wan2.2-T2V-A14B` | Yes | 1 зображення | No | `TOGETHER_API_KEY` |
|
||||
| Vydra | `veo3` | Yes | 1 зображення (`kling`) | No | `VYDRA_API_KEY` |
|
||||
| xAI | `grok-imagine-video` | Yes | 1 зображення | 1 відео | `XAI_API_KEY` |
|
||||
|
||||
Деякі провайдери приймають додаткові або альтернативні змінні середовища для API-ключів. Докладніше див. на окремих [сторінках провайдерів](#related).
|
||||
|
||||
Запустіть `video_generate action=list`, щоб під час виконання переглянути доступних провайдерів, моделі та режими виконання.
|
||||
Запустіть `video_generate action=list`, щоб у середовищі виконання переглянути доступних провайдерів, моделі та режими виконання.
|
||||
|
||||
### Заявлена матриця можливостей
|
||||
### Матриця заявлених можливостей
|
||||
|
||||
Це явний контракт режимів, який використовується `video_generate`, контрактними тестами та спільним live sweep.
|
||||
Це явний контракт режимів, який використовують `video_generate`, контрактні тести та спільний live sweep.
|
||||
|
||||
| Провайдер | `generate` | `imageToVideo` | `videoToVideo` | Спільні live-ланки наразі |
|
||||
| --------- | ---------- | -------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Alibaba | Так | Так | Так | `generate`, `imageToVideo`; `videoToVideo` пропущено, оскільки цей провайдер потребує віддалених відео-URL `http(s)` |
|
||||
| BytePlus | Так | Так | Ні | `generate`, `imageToVideo` |
|
||||
| ComfyUI | Так | Так | Ні | Не входить до спільного sweep; coverage, специфічне для workflow, живе в тестах Comfy |
|
||||
| fal | Так | Так | Ні | `generate`, `imageToVideo` |
|
||||
| Google | Так | Так | Так | `generate`, `imageToVideo`; спільний `videoToVideo` пропущено, оскільки поточний буферний sweep Gemini/Veo не приймає такий ввід |
|
||||
| MiniMax | Так | Так | Ні | `generate`, `imageToVideo` |
|
||||
| OpenAI | Так | Так | Так | `generate`, `imageToVideo`; спільний `videoToVideo` пропущено, оскільки цей org/шлях введення наразі потребує доступу до inpaint/remix на боці провайдера |
|
||||
| Qwen | Так | Так | Так | `generate`, `imageToVideo`; `videoToVideo` пропущено, оскільки цей провайдер потребує віддалених відео-URL `http(s)` |
|
||||
| Runway | Так | Так | Так | `generate`, `imageToVideo`; `videoToVideo` запускається лише тоді, коли вибраною моделлю є `runway/gen4_aleph` |
|
||||
| Together | Так | Так | Ні | `generate`, `imageToVideo` |
|
||||
| Vydra | Так | Так | Ні | `generate`; спільний `imageToVideo` пропущено, оскільки вбудований `veo3` є лише текстовим, а вбудований `kling` потребує віддалений URL зображення |
|
||||
| xAI | Так | Так | Так | `generate`, `imageToVideo`; `videoToVideo` пропущено, оскільки цей провайдер наразі потребує віддалений URL MP4 |
|
||||
| Провайдер | `generate` | `imageToVideo` | `videoToVideo` | Поточні спільні live lane |
|
||||
| --------- | ---------- | -------------- | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Alibaba | Yes | Yes | Yes | `generate`, `imageToVideo`; `videoToVideo` пропускається, оскільки цьому провайдеру потрібні віддалені URL відео `http(s)` |
|
||||
| BytePlus | Yes | Yes | No | `generate`, `imageToVideo` |
|
||||
| ComfyUI | Yes | Yes | No | Не входить до спільного sweep; покриття, специфічне для workflow, міститься в тестах Comfy |
|
||||
| fal | Yes | Yes | No | `generate`, `imageToVideo` |
|
||||
| Google | Yes | Yes | Yes | `generate`, `imageToVideo`; спільний `videoToVideo` пропускається, оскільки поточний sweep Gemini/Veo на основі буфера не приймає таке введення |
|
||||
| MiniMax | Yes | Yes | No | `generate`, `imageToVideo` |
|
||||
| OpenAI | Yes | Yes | Yes | `generate`, `imageToVideo`; спільний `videoToVideo` пропускається, оскільки цей шлях org/input зараз потребує доступу до inpaint/remix на боці провайдера |
|
||||
| Qwen | Yes | Yes | Yes | `generate`, `imageToVideo`; `videoToVideo` пропускається, оскільки цьому провайдеру потрібні віддалені URL відео `http(s)` |
|
||||
| Runway | Yes | Yes | Yes | `generate`, `imageToVideo`; `videoToVideo` запускається лише тоді, коли вибрана модель — `runway/gen4_aleph` |
|
||||
| Together | Yes | Yes | No | `generate`, `imageToVideo` |
|
||||
| Vydra | Yes | Yes | No | `generate`; спільний `imageToVideo` пропускається, оскільки вбудований `veo3` підтримує лише текст, а вбудований `kling` потребує віддалений URL зображення |
|
||||
| xAI | Yes | Yes | Yes | `generate`, `imageToVideo`; `videoToVideo` пропускається, оскільки цьому провайдеру зараз потрібен віддалений URL MP4 |
|
||||
|
||||
## Параметри інструмента
|
||||
|
||||
### Обов’язкові
|
||||
|
||||
| Параметр | Тип | Опис |
|
||||
| -------- | ------ | --------------------------------------------------------------------------- |
|
||||
| `prompt` | string | Текстовий опис відео для генерації (обов’язковий для `action: "generate"`) |
|
||||
| Параметр | Тип | Опис |
|
||||
| -------- | ------ | ----------------------------------------------------------------------------- |
|
||||
| `prompt` | string | Текстовий опис відео, яке потрібно створити (обов’язковий для `action: "generate"`) |
|
||||
|
||||
### Вхідний контент
|
||||
### Вхідні дані вмісту
|
||||
|
||||
| Параметр | Тип | Опис |
|
||||
| -------- | -------- | ------------------------------------ |
|
||||
@ -144,52 +144,51 @@ openclaw tasks cancel <taskId>
|
||||
| Параметр | Тип | Опис |
|
||||
| ----------------- | ------- | ------------------------------------------------------------------------ |
|
||||
| `aspectRatio` | string | `1:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9` |
|
||||
| `resolution` | string | `480P`, `720P`, `768P` або `1080P` |
|
||||
| `resolution` | string | `480P`, `720P`, `768P`, або `1080P` |
|
||||
| `durationSeconds` | number | Цільова тривалість у секундах (округлюється до найближчого значення, яке підтримує провайдер) |
|
||||
| `size` | string | Підказка щодо розміру, якщо провайдер це підтримує |
|
||||
| `audio` | boolean | Увімкнути згенерований звук, якщо підтримується |
|
||||
| `watermark` | boolean | Увімкнути або вимкнути водяний знак провайдера, якщо підтримується |
|
||||
|
||||
### Розширені
|
||||
### Додатково
|
||||
|
||||
| Параметр | Тип | Опис |
|
||||
| --------- | ------ | ----------------------------------------------- |
|
||||
| `action` | string | `"generate"` (типово), `"status"` або `"list"` |
|
||||
| `model` | string | Перевизначення провайдера/моделі (наприклад, `runway/gen4.5`) |
|
||||
| `filename` | string | Підказка для імені вихідного файла |
|
||||
| Параметр | Тип | Опис |
|
||||
| ---------- | ------ | ------------------------------------------------ |
|
||||
| `action` | string | `"generate"` (за замовчуванням), `"status"` або `"list"` |
|
||||
| `model` | string | Перевизначення провайдера/моделі (наприклад, `runway/gen4.5`) |
|
||||
| `filename` | string | Підказка щодо імені вихідного файла |
|
||||
|
||||
Не всі провайдери підтримують усі параметри. OpenClaw уже нормалізує тривалість до найближчого значення, яке підтримує провайдер, а також переназначає трансльовані підказки геометрії, як-от size-to-aspect-ratio, коли резервний провайдер має іншу поверхню керування. Справді непідтримувані перевизначення ігноруються за принципом best-effort і повідомляються як попередження в результаті інструмента. Жорсткі обмеження можливостей (наприклад, надто багато еталонних входів) спричиняють помилку до надсилання.
|
||||
Не всі провайдери підтримують усі параметри. OpenClaw уже нормалізує тривалість до найближчого значення, яке підтримує провайдер, а також переназначає перетворені підказки геометрії, наприклад size-to-aspect-ratio, коли резервний провайдер надає іншу поверхню керування. Справді непідтримувані перевизначення ігноруються за принципом best-effort і повідомляються як попередження в результаті інструмента. Жорсткі обмеження можливостей (наприклад, надто велика кількість еталонних входів) призводять до помилки ще до надсилання.
|
||||
|
||||
Результати інструмента повідомляють про застосовані налаштування. Коли OpenClaw переназначає тривалість або геометрію під час резервного переходу між провайдерами, повернуті значення `durationSeconds`, `size`, `aspectRatio` і `resolution` відображають те, що було надіслано, а `details.normalization` фіксує трансляцію від запитаного до застосованого значення.
|
||||
Результати інструмента повідомляють про застосовані параметри. Коли OpenClaw переназначає тривалість або геометрію під час переходу на резервного провайдера, повернуті значення `durationSeconds`, `size`, `aspectRatio` і `resolution` відображають те, що було надіслано, а `details.normalization` фіксує перетворення від запитаних до застосованих значень.
|
||||
|
||||
Еталонні входи також визначають режим виконання:
|
||||
Еталонні входи також вибирають режим виконання:
|
||||
|
||||
- Без еталонних медіа: `generate`
|
||||
- Немає еталонних медіа: `generate`
|
||||
- Будь-яке еталонне зображення: `imageToVideo`
|
||||
- Будь-яке еталонне відео: `videoToVideo`
|
||||
|
||||
Змішані еталонні зображення та відео не є стабільною спільною поверхнею можливостей.
|
||||
Краще використовувати один тип еталонних даних на запит.
|
||||
Рекомендується використовувати один тип еталонних даних на запит.
|
||||
|
||||
## Дії
|
||||
|
||||
- **generate** (типово) -- створити відео з поданої підказки та необов’язкових еталонних входів.
|
||||
- **status** -- перевірити стан поточного відеозавдання для поточної сесії без запуску нової генерації.
|
||||
- **generate** (за замовчуванням) -- створити відео з указаного запиту та необов’язкових еталонних входів.
|
||||
- **status** -- перевірити стан відеозавдання, що виконується для поточної сесії, не запускаючи нову генерацію.
|
||||
- **list** -- показати доступних провайдерів, моделі та їхні можливості.
|
||||
|
||||
## Вибір моделі
|
||||
|
||||
Під час генерації відео OpenClaw визначає модель у такому порядку:
|
||||
Під час створення відео OpenClaw визначає модель у такому порядку:
|
||||
|
||||
1. **Параметр інструмента `model`** -- якщо агент указує його у виклику.
|
||||
1. **`model` параметр інструмента** -- якщо агент указує його у виклику.
|
||||
2. **`videoGenerationModel.primary`** -- із конфігурації.
|
||||
3. **`videoGenerationModel.fallbacks`** -- пробуються по черзі.
|
||||
4. **Автовизначення** -- використовує провайдерів із дійсною автентифікацією, починаючи з поточного провайдера за замовчуванням, а потім решту провайдерів в алфавітному порядку.
|
||||
|
||||
Якщо провайдер завершується з помилкою, автоматично пробується наступний кандидат. Якщо всі кандидати завершуються з помилкою, помилка містить відомості про кожну спробу.
|
||||
Якщо провайдер завершується з помилкою, автоматично пробується наступний кандидат. Якщо всі кандидати завершуються з помилкою, повідомлення про помилку містить деталі кожної спроби.
|
||||
|
||||
Установіть `agents.defaults.mediaGenerationAutoProviderFallback: false`, якщо хочете,
|
||||
щоб генерація відео використовувала лише явно вказані записи `model`, `primary` і `fallbacks`.
|
||||
Установіть `agents.defaults.mediaGenerationAutoProviderFallback: false`, якщо хочете, щоб генерація відео використовувала лише явно вказані записи `model`, `primary` і `fallbacks`.
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -204,6 +203,20 @@ openclaw tasks cancel <taskId>
|
||||
}
|
||||
```
|
||||
|
||||
Відеоагент HeyGen на fal можна зафіксувати так:
|
||||
|
||||
```json5
|
||||
{
|
||||
agents: {
|
||||
defaults: {
|
||||
videoGenerationModel: {
|
||||
primary: "fal/fal-ai/heygen/v2/video-agent",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
Seedance 2.0 на fal можна зафіксувати так:
|
||||
|
||||
```json5
|
||||
@ -220,26 +233,24 @@ Seedance 2.0 на fal можна зафіксувати так:
|
||||
|
||||
## Примітки щодо провайдерів
|
||||
|
||||
| Провайдер | Примітки |
|
||||
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Alibaba | Використовує асинхронну кінцеву точку DashScope/Model Studio. Еталонні зображення та відео мають бути віддаленими URL `http(s)`. |
|
||||
| BytePlus | Лише одне еталонне зображення. |
|
||||
| ComfyUI | Локальне або хмарне виконання на основі workflow. Підтримує text-to-video та image-to-video через налаштований граф. |
|
||||
| fal | Використовує потік на основі черги для довготривалих завдань. Лише одне еталонне зображення. Містить посилання на моделі Seedance 2.0 для text-to-video та image-to-video. |
|
||||
| Google | Використовує Gemini/Veo. Підтримує одне еталонне зображення або одне еталонне відео. |
|
||||
| MiniMax | Лише одне еталонне зображення. |
|
||||
| OpenAI | Передається лише перевизначення `size`. Інші перевизначення стилю (`aspectRatio`, `resolution`, `audio`, `watermark`) ігноруються з попередженням. |
|
||||
| Qwen | Той самий бекенд DashScope, що й Alibaba. Еталонні входи мають бути віддаленими URL `http(s)`; локальні файли відхиляються відразу. |
|
||||
| Runway | Підтримує локальні файли через data URI. Для video-to-video потрібен `runway/gen4_aleph`. Для текстових запусків доступні співвідношення сторін `16:9` і `9:16`. |
|
||||
| Together | Лише одне еталонне зображення. |
|
||||
| Vydra | Використовує `https://www.vydra.ai/api/v1` безпосередньо, щоб уникнути редиректів, які скидають автентифікацію. `veo3` вбудовано лише як text-to-video; `kling` потребує віддалений URL зображення. |
|
||||
| xAI | Підтримує text-to-video, image-to-video та віддалені потоки редагування/розширення відео. |
|
||||
| Провайдер | Примітки |
|
||||
| --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Alibaba | Використовує асинхронну кінцеву точку DashScope/Model Studio. Еталонні зображення та відео мають бути віддаленими URL `http(s)`. |
|
||||
| BytePlus | Підтримується лише одне еталонне зображення. |
|
||||
| ComfyUI | Локальне або хмарне виконання на основі workflow. Підтримує text-to-video та image-to-video через налаштований граф. |
|
||||
| fal | Використовує потік на основі черги для довготривалих завдань. Підтримується лише одне еталонне зображення. Включає посилання на моделі HeyGen video-agent і Seedance 2.0 text-to-video та image-to-video. |
|
||||
| Google | Використовує Gemini/Veo. Підтримує одне еталонне зображення або одне еталонне відео. |
|
||||
| MiniMax | Підтримується лише одне еталонне зображення. |
|
||||
| OpenAI | Передається лише перевизначення `size`. Інші перевизначення стилю (`aspectRatio`, `resolution`, `audio`, `watermark`) ігноруються з попередженням. |
|
||||
| Qwen | Той самий бекенд DashScope, що й Alibaba. Еталонні входи мають бути віддаленими URL `http(s)`; локальні файли одразу відхиляються. |
|
||||
| Runway | Підтримує локальні файли через data URI. Для video-to-video потрібен `runway/gen4_aleph`. Текстові запуски надають співвідношення сторін `16:9` і `9:16`. |
|
||||
| Together | Підтримується лише одне еталонне зображення. |
|
||||
| Vydra | Використовує `https://www.vydra.ai/api/v1` напряму, щоб уникнути редиректів, які скидають автентифікацію. `veo3` вбудовано лише як text-to-video; `kling` потребує віддалений URL зображення. |
|
||||
| xAI | Підтримує потоки text-to-video, image-to-video, а також віддалене редагування/розширення відео. |
|
||||
|
||||
## Режими можливостей провайдера
|
||||
## Режими можливостей провайдерів
|
||||
|
||||
Спільний контракт генерації відео тепер дає змогу провайдерам оголошувати
|
||||
можливості для конкретних режимів, а не лише плоскі сукупні обмеження. Нові
|
||||
реалізації провайдерів мають надавати перевагу явним блокам режимів:
|
||||
Спільний контракт генерації відео тепер дає змогу провайдерам оголошувати можливості, специфічні для режимів, а не лише плоскі сукупні обмеження. Нові реалізації провайдерів мають надавати перевагу явним блокам режимів:
|
||||
|
||||
```typescript
|
||||
capabilities: {
|
||||
@ -263,15 +274,11 @@ capabilities: {
|
||||
}
|
||||
```
|
||||
|
||||
Плоских сукупних полів на кшталт `maxInputImages` і `maxInputVideos`
|
||||
недостатньо, щоб оголосити підтримку режимів перетворення. Провайдери мають
|
||||
явно оголошувати `generate`, `imageToVideo` і `videoToVideo`, щоб live-тести,
|
||||
контрактні тести та спільний інструмент `video_generate` могли детерміновано
|
||||
перевіряти підтримку режимів.
|
||||
Плоских сукупних полів, таких як `maxInputImages` і `maxInputVideos`, недостатньо, щоб оголосити підтримку режимів трансформації. Провайдери мають явно оголошувати `generate`, `imageToVideo` і `videoToVideo`, щоб live-тести, контрактні тести та спільний інструмент `video_generate` могли детерміновано перевіряти підтримку режимів.
|
||||
|
||||
## Live-тести
|
||||
|
||||
Opt-in live coverage для спільних вбудованих провайдерів:
|
||||
Opt-in live-покриття для спільних вбудованих провайдерів:
|
||||
|
||||
```bash
|
||||
OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/video-generation-providers.live.test.ts
|
||||
@ -283,23 +290,19 @@ OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/video-generation-providers.liv
|
||||
pnpm test:live:media video
|
||||
```
|
||||
|
||||
Цей live-файл завантажує відсутні змінні середовища провайдерів із `~/.profile`, за
|
||||
замовчуванням надає перевагу API-ключам live/env перед збереженими профілями
|
||||
автентифікації та запускає оголошені режими, які можна безпечно перевірити з
|
||||
локальними медіа:
|
||||
Цей live-файл завантажує відсутні змінні середовища провайдерів із `~/.profile`, за замовчуванням надає перевагу API-ключам з live/env над збереженими профілями автентифікації та запускає заявлені режими, які він може безпечно виконати з локальними медіа:
|
||||
|
||||
- `generate` для кожного провайдера в sweep
|
||||
- `imageToVideo`, коли `capabilities.imageToVideo.enabled`
|
||||
- `videoToVideo`, коли `capabilities.videoToVideo.enabled` і провайдер/модель
|
||||
приймає локальний відеовхід на основі буфера в спільному sweep
|
||||
- `videoToVideo`, коли `capabilities.videoToVideo.enabled` і провайдер/модель приймає локальне відеовведення на основі буфера у спільному sweep
|
||||
|
||||
Наразі спільна live-лінія `videoToVideo` охоплює:
|
||||
Наразі спільна live lane `videoToVideo` охоплює:
|
||||
|
||||
- лише `runway`, коли вибрано `runway/gen4_aleph`
|
||||
- лише `runway`, коли ви вибираєте `runway/gen4_aleph`
|
||||
|
||||
## Конфігурація
|
||||
|
||||
Установіть модель генерації відео за замовчуванням у конфігурації OpenClaw:
|
||||
Установіть модель генерації відео за замовчуванням у вашій конфігурації OpenClaw:
|
||||
|
||||
```json5
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user