Перейти к основному содержимому

Чтобы получить чистую Markdown-версию этой страницы, добавьте .md к этому URL. Полный индекс документации см. в https://docs.nvidia.com/dynamo/llms.txt. Полное содержимое, включая справочник API и примеры SDK, см. в https://docs.nvidia.com/dynamo/llms-full.txt.

Диффузия

Dynamo SGLang поддерживает три типа генерации на основе диффузии: LLM-диффузию (генерацию текста через итеративное уточнение), диффузию изображений (text-to-image) и генерацию видео (text-to-video). Для каждого типа используется свой флаг worker и свой handler, но все они интегрируются с DiffGenerator в SGLang.

Обзор

ТипФлаг workerТочка API
LLM-диффузия--dllm-algorithm <algo>/v1/chat/completions, /v1/completions
Диффузия изображений--image-diffusion-worker/v1/images/generations
Генерация видео--video-generation-worker/v1/videos

Если при запуске вы видите ошибку несовпадения версии CuDNN (cuDNN frontend 1.8.1 requires cuDNN lib >= 9.5.0), задайте SGLANG_DISABLE_CUDNN_CHECK=1 перед запуском. Это часто встречается, когда PyTorch поставляет версию CuDNN старее, чем требуется SGLang для операций Conv3d.

LLM-диффузия

Диффузионные языковые модели генерируют текст через итеративное уточнение, а не через авторегрессионную генерацию токен за токеном. Модель начинает с маскированных токенов и постепенно заменяет их предсказаниями, уточняя на каждом шаге токены с низкой уверенностью.

LLM-диффузия определяется автоматически: когда задан --dllm-algorithm, worker автоматически использует DiffusionWorkerHandler без отдельного флага. Подробнее о диффузионных алгоритмах см. в документации SGLang Diffusion Language Models.

Запуск

cd $DYNAMO_HOME/examples/backends/sglang
./launch/diffusion_llada.sh

См. скрипт запуска для параметров конфигурации.

Проверка

curl -X POST http://localhost:8001/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "inclusionAI/LLaDA2.0-mini-preview",
"messages": [{"role": "user", "content": "Explain why Roger Federer is considered one of the greatest tennis players of all time"}],
"temperature": 0.7,
"max_tokens": 512
}'

Диффузия изображений

Воркеры диффузии изображений генерируют изображения по текстовым запросам с помощью DiffGenerator в SGLang. Сгенерированные изображения возвращаются либо в виде URL (когда для хранения используется --media-output-fs-url), либо в виде base64-данных, в формате ответа, совместимом с OpenAI.

Запуск

cd $DYNAMO_HOME/examples/backends/sglang
./launch/image_diffusion.sh

Поддерживается локальное хранилище (--fs-url file:///tmp/images) и S3 (--fs-url s3://bucket). Передайте --http-url, чтобы задать базовый URL для раздачи сохранённых изображений. Все параметры конфигурации см. в скрипте запуска.

Проверка

curl http://localhost:8000/v1/images/generations \
-H "Content-Type: application/json" \
-d '{
"model": "black-forest-labs/FLUX.1-dev",
"prompt": "Explain why Roger Federer is considered one of the greatest tennis players of all time",
"size": "1024x1024",
"response_format": "url",
"nvext": {
"num_inference_steps": 15
}
}'

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

Воркеры генерации видео создают видео по текстовым или image-запросам с помощью DiffGenerator в SGLang и frame-to-video encoding. Поддерживаются сценарии text-to-video (T2V) и image-to-video (I2V).

Запуск

cd $DYNAMO_HOME/examples/backends/sglang
./launch/text-to-video-diffusion.sh

Используйте --wan-size 1b (по умолчанию, 1 GPU) или --wan-size 14b (2 GPU). Все параметры конфигурации см. в скрипте запуска.

Проверка

curl http://localhost:8000/v1/videos \
-H "Content-Type: application/json" \
-d '{
"prompt": "Roger Federer winning his 19th grand slam",
"model": "Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
"seconds": 2,
"size": "832x480",
"response_format": "url",
"nvext": {
"fps": 8,
"num_frames": 17,
"num_inference_steps": 50
}
}'

См. также