> For the complete documentation index, see [llms.txt](https://docs.clore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.clore.ai/guides/guides_v2-ru/generaciya-video/cogvideox.md).

# Генерация видео CogVideoX

CogVideoX — это семейство открытовесовых видеодиффузионных трансформеров от Zhipu AI (Tsinghua). Модели генерируют согласованные 6-секундные клипы с разрешением 720×480 и 8 кадр/с как по текстовому запросу (T2V), так и по опорному изображению плюс запрос (I2V). Доступны две параметрические шкалы — 2B для быстрой итерации и 5B для более высокой точности — обе с нативной `diffusers` интеграцией через `CogVideoXPipeline`.

Запуск CogVideoX на арендованном GPU от [Clore.ai](https://clore.ai/) позволяет обойти ограничения локального оборудования и генерировать видео в масштабе всего за считанные центы за клип.

## Ключевые особенности

* **Текст-в-видео (T2V)** — опишите сцену и получите 6-секундный клип 720×480 при 8 кадр/с (49 кадров).
* **Изображение-в-видео (I2V)** — предоставьте опорное изображение и запрос; модель анимирует его с временной согласованностью.
* **Два масштаба** — CogVideoX-2B (быстрый, \~12 ГБ VRAM) и CogVideoX-5B (более высокое качество, \~20 ГБ VRAM).
* **Нативная поддержка diffusers** — первоклассная `CogVideoXPipeline` и `CogVideoXImageToVideoPipeline` классы.
* **3D каузальный VAE** — сжимает 49 кадров в компактное латентное пространство для эффективного удаления шума.
* **Открытые веса** — лицензия Apache-2.0 для варианта 2B; исследовательская лицензия для 5B.

## Требования

| Компонент     | Минимум          | Рекомендуется    |
| ------------- | ---------------- | ---------------- |
| VRAM GPU      | 16 ГБ (2B, fp16) | 24 ГБ (5B, bf16) |
| Системная RAM | 32 ГБ            | 64 ГБ            |
| Диск          | 30 ГБ            | 50 ГБ            |
| Python        | 3.10+            | 3.11             |
| CUDA          | 12.8+            | 12.8+            |

**Рекомендация по GPU от Clore.ai:** Один **RTX 4090** (24 ГБ, $0.14–0.42/ч) легко справляется с вариантами 2B и 5B. Один **RTX 3090** (24 ГБ, $0.07–0.21/ч) одинаково хорошо подходит для 5B в bf16 и является бюджетным вариантом.

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

```bash
# Создайте окружение
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128
pip install diffusers transformers accelerate sentencepiece imageio[ffmpeg]

# Проверить GPU
python -c "import torch; print(torch.cuda.get_device_name(0))"
```

## Примеры использования

### Текст-в-видео (5B)

```python
import torch
from diffusers import CogVideoXPipeline
from diffusers.utils import export_to_video

pipe = CogVideoXPipeline.from_pretrained(
    "THUDM/CogVideoX-5b",
    torch_dtype=torch.bfloat16,
)
pipe.to("cuda")
pipe.enable_model_cpu_offload()      # экономит ~4 ГБ пиковой VRAM
pipe.vae.enable_tiling()             # требуется для 720x480 на картах с 24 ГБ

prompt = (
    "Золотистый ретривер, бегущий по полю подсолнухов на закате, "
    "кинематографическое освещение, замедленная съемка, качество 4K"
)

video_frames = pipe(
    prompt=prompt,
    num_frames=49,
    guidance_scale=6.0,
    num_inference_steps=50,
    generator=torch.Generator("cuda").manual_seed(42),
).frames[0]

export_to_video(video_frames, "retriever_sunset.mp4", fps=8)
print("Сохранено retriever_sunset.mp4")
```

### Изображение-в-видео (5B)

```python
import torch
from PIL import Image
from diffusers import CogVideoXImageToVideoPipeline
from diffusers.utils import export_to_video

pipe = CogVideoXImageToVideoPipeline.from_pretrained(
    "THUDM/CogVideoX-5b-I2V",
    torch_dtype=torch.bfloat16,
)
pipe.to("cuda")
pipe.enable_model_cpu_offload()
pipe.vae.enable_tiling()

image = Image.open("reference.png").resize((720, 480))

video_frames = pipe(
    prompt="Камера медленно облетает объект по кругу, легкий ветер",
    image=image,
    num_frames=49,
    guidance_scale=6.0,
    num_inference_steps=50,
).frames[0]

export_to_video(video_frames, "animated.mp4", fps=8)
```

### Быстрая генерация с вариантом 2B

```python
from diffusers import CogVideoXPipeline
import torch

pipe = CogVideoXPipeline.from_pretrained(
    "THUDM/CogVideoX-2b",
    torch_dtype=torch.float16,
)
pipe.to("cuda")
pipe.vae.enable_tiling()

frames = pipe(
    prompt="Таймлапс цветущей вишни",
    num_frames=49,
    guidance_scale=6.0,
    num_inference_steps=30,       # меньше шагов → быстрее
).frames[0]
```

## Советы для пользователей Clore.ai

1. **Включить тайлинг VAE** — без `pipe.vae.enable_tiling()` 3D VAE вызовет OOM на картах 24 ГБ во время декодирования.
2. **Используйте `enable_model_cpu_offload()`** — автоматически переносит неиспользуемые модули в ОЗУ; добавляет \~10 % ко времени выполнения, но экономит более 4 ГБ пиковой VRAM.
3. **bf16 для 5B, fp16 для 2B** — контрольная точка 5B обучалась в bf16; использование fp16 может привести к NaN-выходам.
4. **Сохранять модели** — подключите постоянный том Clore.ai к `/models` и установите `HF_HOME=/models/hf` чтобы веса сохранялись между перезапусками контейнера.
5. **Пакетная обработка ночью** — ставьте длинные списки запросов в очередь с помощью простого цикла Python; тарификация Clore.ai почасовая, так что максимально загружайте GPU.
6. **SSH + tmux** — запускайте генерацию внутри `tmux` чтобы потеря соединения не завершила процесс.
7. **Выберите подходящий GPU** — отфильтруйте маркетплейс Clore.ai по картам с ≥24 ГБ VRAM; отсортируйте по цене, чтобы найти самый дешевый доступный RTX 3090 / 4090.

## Устранение неполадок

| Проблема                                      | Исправьте                                                                                                          |
| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `OutOfMemoryError` во время декодирования VAE | Вызовите `pipe.vae.enable_tiling()` перед инференсом                                                               |
| NaN / черные кадры с 5B                       | Переключитесь на `torch.bfloat16`; fp16 не поддерживается для варианта 5B                                          |
| `ImportError: imageio`                        | `pip install imageio[ffmpeg]` — для экспорта MP4 нужен плагин ffmpeg                                               |
| Очень медленный первый запуск                 | Загрузка модели занимает \~20 ГБ; последующие запуски используют кешированные веса                                 |
| Несоответствие версии CUDA                    | Убедитесь, что версия CUDA в PyTorch соответствует драйверу: `python -c "import torch; print(torch.version.cuda)"` |
| Сбитое движение / мерцание                    | Увеличьте `num_inference_steps` до 50; уменьшите `guidance_scale` до 5.0                                           |
| Контейнер завершен посреди загрузки           | Установите `HF_HOME` на постоянный том и перезапустите — частичные загрузки возобновятся автоматически             |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.clore.ai/guides/guides_v2-ru/generaciya-video/cogvideox.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
