Кейс-стади продукта · 1 сентября 2026
TensorRT Model Connect: создайте комплект Qwen, затем сохраняйте нативный вывод
Создайте поддерживаемый пакет Qwen с TensorRT Model Connect, запустите его проверку работоспособности и сохраняйте явную границу развертывания, когда данные о GPU недоступны.
TensorRT Model Connect предлагает ясный путь от исходного кода Qwen/Qwen3-0.6B к пакету TensorRT и нативному C++ API для задач, но это экспериментальный справочный проект, а не обещание стабильного развёртывания. В этой проверке не было доступа к драйверу NVIDIA/GPU и демону Docker, поэтому результат сборки и теста C++ не измерен; включённый каркас является воспроизводимым контрактом, а не доказательством производительности.
TensorRT Model Connect от NVIDIA — это набор проверяемых справочных реализаций, который превращает поддерживаемую открыту деталей контрольную точку (checkpoint) в движки TensorRT и пакет, затем предоставляет ориентированные на задачи нативные C++ API.[1][2] Публичное быстрое начало использует Qwen/Qwen3-0.6B: собрать пакет с trtmc, затем запустить фиксированный запрос для Франции.[3]
Это полезная граница, а не гарантия производства. Проект называет себя экспериментальным; его API, область применения и направление могут изменяться.[2] Официальная таблица поддержки применяется к точному идентификатору модели, профилю, точности, конфигурации и записи доказательств. В ней явно говорится, что доработки в рамках одной семьи моделей выполняются по мере возможностей, а не как проверенная поддержка.[5]
Что здесь было и не было проверено
Исходный коммит, проверенный для этого руководства, f23a07e54521725d33d31c8d1f51d3a030d46a66 (текущий main HEAD на 2026-09-01). Его LICENSE лицензия — Apache-2.0.[2][6] Выбранный публичный контрольный пункт — Qwen/Qwen3-0.6B, который указан в официальной матрице поддержки NVIDIA с профилем FP16; быстрый старт NVIDIA специфицирует профиль первой сборки BF16 для этого пути.[3][5]
Локальная предварительная проверка не завершила установку: nvidia-smi не была установлена. trtmc отсутствовал, и сокет демона Docker вернул отказ в разрешении. Это блокировка на уровне оборудования/доступа, а не ошибка результата TensorRT Model Connect. Ни одна модель не была загружена, ни один контейнер не был создан, и ни комплекта, ни вывода C++ inference не существует. Полная квитанция команды находится в benchmarks/tensorrt-model-connect/command-log.md; машинно-читаемая запись находится в environment.json.
. Не заменяйте эти отсутствующие доказательства на контрольную точку того же семейства, покупку облачного GPU или предполагаемую версию источника. Перед измеренным запуском разрешите неизменяемый коммит Hugging Face для контрольной точки и зафиксируйте её лицензию и хэши файлов. Текущая матрица NVIDIA не публикует неизменяемую ревизию для этой строки Qwen, поэтому это руководство не утверждает, что плавающее имя модели является фиксированным.[5]
Сохраняйте слои раздельно
- Модель:
Qwen/Qwen3-0.6B— это контрольная точка Hugging Face. У нее есть собственная лицензия, версия, файлы, поведение и риск в цепочке поставок.[7] - Инфраструктура для вывода: TensorRT Model Connect сопоставляет поддерживаемую контрольную точку с движками TensorRT и упаковывает специфичные для модели ресурсы в
.bundle. TensorRT остается средой выполнения.[1] - Наборы инструментов и навыки: оболочка-механизм или навык агента может извлекать, собирать, проверять и регистрировать работу. Это оркестрация, а не реализация модели, среда выполнения TensorRT или граница безопасности. Просмотрите их перед тем, как запускать с учетными данными или широким доступом к файловой системе.
- Приложение: ваш процесс на C++ загружает пакет и вызывает API задачи. NVIDIA утверждает, что развернутое приложение может работать без интерпретатора Python или PyTorch в его производственном времени выполнения; это необходимо проверить в точном контейнере времени выполнения, который вы поставляете.[1]
Собственный репозиторий NVIDIA включает плагин Agent Skills и рекомендует агентам прочитать инструкции репозитория, проверить точные дескрипторы/манифесты модели и отделить статические доказательства от доказательств выполнения на GPU.[8] Это разумные указания по процессу, а не причина для выполнения непроверенного плагина с привилегированным профилем.
Предварительные условия: использовать исходный путь на x86_64
Текущий путь установки через wheel предназначен для Linux aarch64 с Python 3.10 или 3.12, glibc 2.39 или новее и официальным TensorRT 11.1.0.106. Пользователям Linux x86_64 следует использовать метод сборки из исходников.[4] Для пути через исходники NVIDIA требует Linux x86_64 или aarch64, Docker, NVIDIA Container Toolkit, достаточное место на диске для образа и пакета, а также совместимую GPU, видимую для системы. nvidia-smi.[4]
На утвержденном хосте с GPU начните с:
uname -m
nvidia-smi
docker --version
Запишите модель GPU, драйвер, версию CUDA, вычислительную способность, версию TensorRT внутри контейнера, дайджест образа контейнера и свободное место на диске. Не смешивайте библиотеки TensorRT, DSO или пакеты из разных наборов.[4]
Закрепленная версия исходников должна быть подготовлена до любой сборки:
git клонировать https://github.com/NVIDIA/TensorRT-Model-Connect.git
cd TensorRT-Model-Connect
git checkout f23a07e54521725d33d31c8d1f51d3a030d46a66
Затем решите Qwen/Qwen3-0.6B на конкретную версию Hugging Face, проверьте карточку модели и файлы, и запишите эту версию вместе с хэшами файлов в манифест окружения. Остановитесь, если лицензия или условия доступа неприемлемы.
Соберите документированный пакет Qwen
Руководство NVIDIA по сборке из исходников выбирает GPU один раз, определяет его SM, собирает соответствующий образ для разработки и монтирует исходные файлы в него.[4] Из закрепленной версии:
GPU=0
SM="$(nvidia-smi -i "$GPU" --query-gpu=compute_cap --format=csv,noheader,nounits | tr -d '.[:space:]')"
ИЗОБРАЖЕНИЕ=trtmc-быстрый старт
случай "$(uname -m)" в
x86_64) ДОКЕРФАЙЛ=Dockerfile.dev.x86 ;;
aarch64) ДОКЕРФАЙЛ=Dockerfile.dev.aarch64 ;;
*) эхо "Неподдерживаемая архитектура хоста: $(uname -m)" >&2; выход 1 ;;
esac
docker сборка -f "$DOCKERFILE" -t "$IMAGE" требования
SOURCE_DIR="$(git rev-parse --show-toplevel)"
docker запуск --rm -it --gpus "device=${GPU}" --ipc=host \
--mount "type=bind,source=${SOURCE_DIR},target=/src" --workdir /src \
--env TRTMC_SM="$SM"" "$IMAGE" bash
Внутри этого одноразового контейнера соберите только CLI, TensorRT backend и DSO модели Qwen, необходимые для быстрого старта:
python -m pip install --no-deps -e . -C py-only=true
TRTMC_BUILD_DIR="build-sm${TRTMC_SM}"
cmake -S . -B "$TRTMC_BUILD_DIR" -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CUDA_ARCHITECTURES="${TRTMC_SM}-real" \
-DTRTMC_BUILD_BACKEND_TRT=ON -DTRTMC_BUILD_BACKEND_RTX=OFF \
-DTRTMC_BUILD_TESTS=OFF -DTRTMC_BUILD_BENCHMARKS=OFF \
-DTRTMC_ENABLE_LIBTORCH_MULTINOMIAL=OFF
cmake --build "$TRTMC_BUILD_DIR" --parallel "$(nproc)" --target trtmc trtmc_backend_trt trtmc_model_qwen
экспорт TRTMC_MODEL_PLUGIN_DIR="$TRTMC_BUILD_DIR/models"
экспорт PATH="$PWD/$TRTMC_BUILD_DIR:$PATH"
trtmc версия
Теперь соберите пакет, используя профиль ограниченного кэша NVIDIA:
trtmc сборка Qwen/Qwen3-0.6B \
--precision bf16 \
--max-cache-length 16384 \
--output qwen3-0.6b.bundle
trtmc inspect ./qwen3-0.6b.bundle
trtmc inspect ./qwen3-0.6b.bundle --список-движков
Сохраните первую неудачную команду и полную ошибку, вместо того чтобы менять несколько флагов. Документированные сигналы инспекции для этого пути включают семейство Qwen, qwen_decoder_kv_cache, BF16, настроенную длину кэша и два плана движка.[3]
Запустите дважды, затем подтвердите границу нативного исполнения
Исправленный CLI-промпт для проверки использует значения декодирования быстрого старта NVIDIA. Он детерминирован в среде запуска, так как промпт и seed зафиксированы; это не бенчмарк:
trtmc запуск ./qwen3-0.6b.bundle \
--подсказка «Какая столица Франции? Ответьте одним словом.» \
--шаблон-чата --без-размышлений --макс-новых-токенов 64 \
--температура 0.7 --топ-k 20 --топ-p 0.8 --сид 42
Ожидаемый сигнал — Paris и чистый выход, но запишите полный непустой вывод дважды, а не фильтруйте до одного слова.[3] benchmarks/tensorrt-model-connect/run-smoke.sh выполняет сборку, обе проверки и два вызова проверки с защитой для trtmc, nvidia-smi, и TRTMC_MODEL_PLUGIN_DIR.
Вторая команда в «истории с двумя командами» — это загрузка/запуск приложения, а не еще один шаг сборки Python. Минимальная структура уровня задачи, документированная NVIDIA, следующая:
#include <trtmc/pipeline.h>
авто конвейер = trtmc::загрузить("qwen3-0.6b.bundle");
авто результат = pipeline->сгенерировать(
«Какая столица Франции? Ответьте одним словом.»,
{.max_new_tokens = 64});
стд::cout << результат.текст << стд::endl;
benchmarks/tensorrt-model-connect/native-smoke.cpp превращает это в полную программу, которая отвергает пустой вывод. Разрешите команду компиляции/линковки из интеграции CMake/пакета закреплённой версии, а не угадывайте флаги по руководству. Сохраните эту команду, её вывод компилятора и инвентаризацию контейнера во время выполнения, которая демонстрирует, что ни Python, ни PyTorch не требуются для развернутого процесса.
Измеренный проход требует выполнения всех пяти условий: пакет, созданный из зарегистрированной пары исходного кода/контрольной точки, успешная проверка пакета, успешная загрузка/генерация на родном C++, два непустых вывода с фиксированным запросом и доказательства очистки. Ожидаемый контракт хранится в output-fixture.json; это не захваченный вывод.
Устранение неполадок и очистка
Рассматривайте первую границу как проблему. Руководство NVIDIA для первого запуска указывает на отсутствие nvidia-smi для доступа к драйверу/GPU, отсутствия CLI в активной сборке источника, ошибок CMake в контейнере разработки, отсутствующих DSO моделей в каталоге плагинов и ошибок ABI в смешанных группах TensorRT/DSO.[9]
Для запроса поддержки сохраняйте коммит источника, путь установки, ID модели и разрешённую ревизию, команду сборки, команду запуска, контрольную сумму пакета, сведения о GPU/драйвере/CUDA/TensorRT, первую неудачную команду и полный текст ошибки.[9] Не публикуйте токены доступа, URL-адреса ограниченных моделей, приватные пути к кэшу или полные транскрипты агента.
Очистка является частью проверки. Удаляйте только записанный путь пакета, остановите/удалите временный контейнер разработки, если он не был запущен с --rm, и удалите созданные вами временные пути для_checkout и кэша. Не удаляйте общий кэш Hugging Face, общий образ Docker или модель, которую вы не создавали. Повторно выполните docker ps -a, проверьте записанный путь для бандла и зафиксируйте результат очистки.
Это узкий рецепт развертывания, основанный на исходных данных. Успешный запуск означает, что этот исходный код, контрольная точка, стек и запрос работали на одном зафиксированном хосте. Это не доказывает преимущества в производительности, стабильность API, надежность в производстве или совместимость для другой GPU или дообученной модели.
Источники
[1] https://developer.nvidia.com/blog/deploy-an-open-model-from-checkpoint-to-inference-in-two-commands-with-nvidia-tensorrt-model-connect/ — Технический блог NVIDIA, «Развертывание открытой модели из контрольной точки в инференс с помощью двух команд с NVIDIA TensorRT Model Connect», 28 августа 2026 года.
[2] https://github.com/NVIDIA/TensorRT-Model-Connect — README проекта, статус проекта, ревизия исходного кода и рекомендации по репозиторию, проверено 01.09.2026.
[3] https://nvidia.github.io/TensorRT-Model-Connect/getting-started/quick-start — первый пакет Qwen, проверка, исправленный запрос на дым, и ожидаемый сигнал.
[4] https://nvidia.github.io/TensorRT-Model-Connect/getting-started/environment-and-repro и https://nvidia.github.io/TensorRT-Model-Connect/getting-started/source-build — требования к хосту, команды исходного контейнера и цели сборки исходного кода.
[5] https://nvidia.github.io/TensorRT-Model-Connect/models-recipes/overview — область матрицы поддержки и записи Qwen/Qwen3-0.6B.
[6] https://github.com/NVIDIA/TensorRT-Model-Connect/blob/main/LICENSE — текст лицензии Apache 2.0.
[7] https://huggingface.co/Qwen/Qwen3-0.6B — карточка модели Qwen, идентификация модели и информация о развертывании на уровне модели, проверено 2026-09-01.
[8] https://nvidia.github.io/TensorRT-Model-Connect/agent-guide — рабочий процесс агента и границы доказательств.
[9] https://nvidia.github.io/TensorRT-Model-Connect/getting-started/troubleshooting — границы сбоев при первом запуске и получение поддержки.
Запустите это в работу
Разделите контрольную точку исходного кода, инфраструктуру развертывания TensorRT, средства автоматизации и нативное приложение, которое загружает пакет.
Попробовать
Используйте одноразовый поддерживаемый GPU-хост, закрепите версии исходного кода и Hugging Face и следуйте документированному пути исходного контейнера без локальных патчей.
Докажите, что это сработало
Сохраняйте квитанцию хоста, исходный коммит, разрешённую версию контрольной точки, команды сборки и нативные команды C++, два фиксированных выхода, контрольную сумму пакета и запись об очистке.
Где это может оплатить
Пройтие дымовое тестирование устанавливает узкую квитанцию совместимости, а не утверждение о пропускной способности, сертификацию для производства или покрытие для доработок одного семейства.
Держите в поле зрения
- Официальный первый путь NLP собирает Qwen/Qwen3-0.6B с trtmc, затем загружает полученный пакет через API задач C++.
- На Linux x86_64 опубликованный путь представляет собой сборку из исходников в контейнере для разработки NVIDIA; релизные колёса в настоящее время только для aarch64.
- Эта проверка явно не измерялась: nvidia-smi отсутствует, и доступ к демону Docker запрещён, поэтому ни один пакет или результат вывода не были сгенерированы.
- Репозиторий лицензирован по Apache-2.0, но явно экспериментальный; совпадите с точной контрольной точкой, исходной ревизией, GPU, CUDA и группой TensorRT перед тем, как считать это поддержкой.