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

For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://docs.nvidia.com/dynamo/llms.txt. For full content including API reference and SDK examples, see https://docs.nvidia.com/dynamo/llms-full.txt.

Справочное руководство

Сборка собственного контейнера​

Образ Dynamo TensorRT-LLM накладывает Dynamo поверх upstream-контейнера nvcr.io/nvidia/tensorrt-llm/release — он не собирает TensorRT-LLM из исходников. Чтобы пересобрать его локально, зафиксировать другой upstream-тег TRT-LLM или подключить образ TRT-LLM, собранный из исходников, см. руководство Building a Custom Container.

Передача KV Cache​

Dynamo с TensorRT-LLM поддерживает два способа передачи KV cache в disaggregated serving: UCX (по умолчанию) и NIXL (экспериментальный). Подробную информацию и инструкции по настройке каждого метода см. в KV Cache Transfer Guide.

Миграция запросов​

Dynamo поддерживает request migration, чтобы корректно обрабатывать сбои worker'ов. Если функция включена, запросы можно автоматически переносить на исправные worker'ы, если worker выходит из строя в середине генерации. Подробности настройки см. в документации Request Migration Architecture.

Отмена запросов​

Когда пользователь отменяет запрос, например отключаясь от frontend, запрос автоматически отменяется на всех worker'ах, освобождая вычислительные ресурсы для других запросов.

Матрица поддержки отмены​

PrefillDecode
Aggregated✅✅
Disaggregated✅✅

Подробнее см. документацию Request Cancellation Architecture.

Несколько вариантов (n)​

Dynamo передаёт совместимые с OpenAI запросы на несколько вариантов в TensorRT-LLM через n. Для запроса с n > 1 на пути детерминированного декодирования TensorRT-LLM по умолчанию задайте TLLM_ALLOW_N_GREEDY_DECODING=1 в окружении worker TensorRT-LLM. Без этого TensorRT-LLM отклонит запрос до начала генерации.

Если тест или развёртывание намеренно проверяет n > 1 для этого пути, задайте:

export TLLM_ALLOW_N_GREEDY_DECODING=1

Ограничьте область действия этой переменной окружения конкретным worker TensorRT-LLM или конфигурацией теста, где требуется n > 1. Для E2E-тестов Dynamo задавайте её в соответствующем EngineConfig.env, а не глобально, и сохраняйте запрос клиента в OpenAI-формате с n вместо добавления best_of.

TensorRT-LLM документирует поведение n/best_of и проверяет этот guard как greedy decoding в tensorrt_llm/sampling_params.py.

Поддержка мультимодальности​

Dynamo с backend TensorRT-LLM поддерживает мультимодальные модели, позволяя обрабатывать текст и изображения (или заранее вычисленные embeddings) в одном запросе. Подробные инструкции по настройке, примеры запросов и рекомендации см. в TensorRT-LLM Multimodal Guide.

Поддержка diffusion (экспериментально)​

Dynamo поддерживает генерацию видео и изображений с помощью diffusion-моделей через TensorRT-LLM. Требования, поддерживаемые модели, использование API и параметры конфигурации см. в Diffusion Guide.

Обработка logits​

Logits processor'ы позволяют изменять logits следующего токена на каждом шаге декодирования. Dynamo предоставляет независимый от backend интерфейс и адаптер для TensorRT-LLM. API, примеры и инструкции по подключению собственного processor'а см. в Logits Processing Guide.

Маршрутизация DP rank (Attention Data Parallelism)​

TensorRT-LLM поддерживает attention data parallelism для таких моделей, как DeepSeek, что позволяет маршрутизировать запросы с учётом KV cache к конкретным DP rank. Подробности настройки и использования см. в DP Rank Routing Guide.

Интеграция KVBM​

Dynamo с TensorRT-LLM сейчас поддерживает интеграцию с Dynamo KV Block Manager. Эта интеграция может заметно снизить задержку time-to-first-token (TTFT), особенно в сценариях вроде многоходовых диалогов и повторяющихся запросов с длинным контекстом.

См. инструкции здесь: Running KVBM in TensorRT-LLM.

Наблюдаемость​

TensorRT-LLM предоставляет метрики Prometheus для мониторинга производительности inference. Подробный справочник по метрикам, настройке сбора и интеграции с Grafana см. в Observability Guide.

Отключение циклического GC Python для бенчмарков с высокой конкуренцией​

Dynamo с TensorRT-LLM предоставляет DYN_TRTLLM_SERVER_DISABLE_GC, чтобы повторить поведение TRTLLM_SERVER_DISABLE_GC в trtllm-serve. Если переменная задана, worker TensorRT-LLM отключает циклический сборщик мусора Python при запуске, чтобы паузы generational GC не попадали в hot path запроса. Освобождение памяти на основе подсчёта ссылок продолжает работать как обычно — отключается только cycle collector.

export DYN_TRTLLM_SERVER_DISABLE_GC=1

Это особенно полезно для бенчмарков с высокой конкуренцией, где такой режим повышает throughput и стабилизирует измерения TTFT/ITL, убирая всплески хвостовой задержки, вызванные GC.

Известные проблемы и способы их смягчения​

Известные проблемы, обходные пути и способы их смягчения см. на странице Known Issues and Mitigations.