NVIDIA 最近釋出的 Dynamo,一個高吞吐量低延遲的生成式 AI 推理框架,在開發者社群引發了關於程式語言選擇和 AI 推理工具不斷發展的討論。
Rust 與傳統 Web 開發語言的對比
NVIDIA Dynamo 的釋出意外地引發了關於 Rust 是否適合 Web 開發的熱烈討論。社群成員將 Dynamo 的混合方法——使用 Rust 處理效能關鍵元件,使用 Python 實現擴充套件性——視為一種務實開發理念的證據。這一技術選擇已成為持續語言之爭的焦點。
支持者認為,Rust 為 Web 服務提供了卓越的效能,一些開發者聲稱像 Actix 和 Axum 這樣的框架提供了類似 Flask 的簡潔性,同時提供接近 nginx 的效能。批評者則反駁說,對於典型的 Web 應用程式,Rust 的複雜性和依賴要求使其不如 Go 或 Python 實用,他們指出需要多個外部庫來彌補他們認為的標準庫侷限性。
「Rust 正在成為最好的 Web 程式語言之一。Actix 和 Axum 感覺就像 Python 的 Flask... 它實際上比 Go 和 Python 更好。其他部分(資料庫、API 客戶端等)可能會隨著時間的推移變得更好。」
對 NVIDIA 推理生態系統的擔憂
除了語言爭論外,此次釋出還引發了對 NVIDIA 推理產品記錄的重大擔憂。一些開發者分享了實施 NVIDIA 推理解決方案的困難經歷,一位評論者警告稱,儘管能直接接觸 NVIDIA 的開發團隊,但仍然經歷了長達一年的困境。
這些經歷導致一些人推薦 Ray Serve 等替代解決方案,儘管這一建議本身也引發了關於不同框架對 LLM 工作負載適用性的進一步討論。Ray 的批評者指出,它缺乏對語言模型的最佳化,缺少 Dynamo 和其他專業框架中包含的關鍵功能,如 KV 快取和模型並行性。
社群認可的 NVIDIA 推理解決方案替代品:
- Ray Serve(通用型,但在 LLM 工作負載方面受到批評)
- vLLM(專為 LLM 設計)
- SGLang(專為 LLM 設計)
- text-generation-inference(專為 LLM 設計)
OpenAI API 相容性成為新興標準
討論中一個有趣的旁支集中在 Dynamo 包含 OpenAI 相容前端這一點上。社群成員注意到,這種方法在 LLM 服務領域變得越來越普遍,VLLM、Llama.cpp 和 LiteLLM 等工具都提供 OpenAI 相容的 API。這表明行業可能正在將 OpenAI 的介面設計作為 LLM 推理的事實標準,類似於 Amazon 的 S3 API 成為物件儲存標準的方式。
NVIDIA Dynamo 的關鍵特性:
- 分離式預取和解碼推理
- 動態 GPU 排程
- LLM 感知請求路由
- 使用 NIXL 加速資料傳輸
- KV 快取解除安裝
- 開源,雙重實現(Rust 用於效能最佳化,Python 用於擴充套件性)
多語言開發的擔憂
一些開發者對 Dynamo 的多語言架構表示懷疑,該架構結合了 Rust、Go、Python 和 C++。批評者認為,維護如此多樣化的技術棧可能具有挑戰性,特別是考慮到 AI 社群中 Rust 開發者相對稀缺。這些擔憂突顯了使用專門語言最佳化各個元件與維護一個連貫、可維護的程式碼庫之間的張力。
總之,雖然 NVIDIA Dynamo 為高效能 LLM 推理提供了有前景的功能,但社群反應揭示了開發者生態系統中圍繞語言選擇、框架可靠性和架構方法的更深層次的緊張關係。隨著 AI 部署對業務運營變得越來越關鍵,這些討論反映了在選擇適合生產環境的正確工具和技術時所涉及的高風險。