返回首頁

AI 推論系統/開發工具

TensorRT Model Connect 將模型 checkpoint 編成原生 C++ bundle,但介面尚未定版

NVIDIA 公開 TensorRT Model Connect,透過 Python 建置工具把支援的 Hugging Face checkpoint 封裝成可由 C++ 載入的 TensorRT bundle。專案已宣告 84 個模型家族與 221 組端到端 manifest,但仍採 nightly 開發模式,支援表不等於每款硬體均已通過驗證。

Strubbl · CC BY-SA 4.0 · Image source
zh-Hant

NVIDIA 在 8 月 28 日正式介紹 [TensorRT Model Connect](https://developer.nvidia.com/blog/deploy-an-open-model-from-checkpoint-to-inference-in-two-commands-with-nvidia-tensorrt-model-connect/),試圖補上開放模型 checkpoint 與原生 TensorRT 應用之間的整合層。開發者先用 Python CLI 執行 `trtmc build`,把 Hugging Face 模型或本機 checkpoint 編譯成 `.bundle`;生產程式再以 C++ 的 `trtmc::load()` 載入。執行端不需要 PyTorch 或 Python,也不必先輸出 ONNX,bundle 內包含 TensorRT engine、tokenizer或 processor 資產,以及模型專用執行設定。

它不是另一套通用推論引擎,而是 TensorRT 上方的參考實作集合。語意層 API 直接接受提示詞、影像或音訊並處理前後處理;較低階的 module API 則暴露命名 tensor 和個別元件。若某個算子尚未有合適實作,開發者可透過 TVM FFI 插入自訂 GPU kernel,其他圖仍由 TensorRT 執行。程式碼以 Apache 2.0 發布於 [GitHub](https://github.com/NVIDIA/TensorRT-Model-Connect),模型家族各自擁有 Python builder、C++ 動態函式庫和端到端 manifest。

目前文件列出 84 個 Python family plugin、85 個 C++ runtime strategy,以及 221 組 E2E manifest,涵蓋文字、視覺、語音、擴散和時間序列任務。7 月 29 日保留的 GB300 測試快照則只比較了 76 個家族、105 個單行程 profile;結果以相對基線快或慢超過 5%的燈號呈現,而且不同列的基線並不全是 `torch.compile`。因此官方所稱「可比 torch.compile 更快」不能解讀為所有模型都有統一幅度的加速,編譯、載入及 warm-up 時間也沒有計入推論 p50。

更重要的是,[已知限制](https://nvidia.github.io/TensorRT-Model-Connect/release-support/known-issues/)說明目前網站追蹤 `Latest` 分支,尚無不可變的正式文件版本;不少 manifest 未鎖定 Hugging Face revision,宣告存在也不代表在目標 GPU 上有最新通過紀錄。bundle 仍依賴相容的 model/backend DSO、CUDA、TensorRT、驅動與 GPU SM,通用 TP/CP 旗標也不能保證多卡支援。準備採用的團隊應先固定 checkpoint、程式碼與軟體 cohort,再量測自己的編譯時間、冷啟動、精度漂移及吞吐;下一個關鍵里程碑會是首個有版本化文件、遷移規則和可重現效能資料的正式標籤。

來源

  1. Deploy an Open Model from Checkpoint to Inference in Two Commands with NVIDIA TensorRT Model Connect
  2. NVIDIA/TensorRT-Model-Connect
  3. TensorRT Model Connect: Limitations and Known Issues