系統架構:離線運行的多模態互動流程

MonsterHouse 的核心是一個由 NVIDIA Nemotron Voice Agent 協調的級聯管道,旨在讓訪客透過麥克風與一個具有人格設定的虛擬房屋進行對話。整個系統設計為完全自包含且離線運行,不依賴雲端服務,以確保隱私和穩定性。

工作流程分為四個主要階段:聆聽、思考、說話和動畫化。NVIDIA Nemotron Speech ASR 負責將訪客的語音轉換為文字;Nemotron 3.5 Bolt E4B 作為語言模型生成回應;NVIDIA Magpie TTS Zeroshot 根據參考樣本合成角色聲音;最後由 NVIDIA Audio2Face-3D 驅動 Unreal Engine 中的面部動畫。

為了維持即時互動所需的幀率,開發者將計算負載分配給兩張不同的 GPU。語言模型和語音處理管道運行在 NVIDIA RTX PRO 6000 Blackwell Max-Q 上,而包含 Audio2Face-3D 的 Unreal Engine 圖形渲染則運行在 NVIDIA RTX PRO 4000 Blackwell 上。這種分離策略確保了即使語言處理負載波動,動畫表現仍能保持穩定。

對話引擎:基於 LoRA 訓練的個性化小型語言模型

為了讓房屋具備「暴躁海盜」的性格,開發者選擇了 NVIDIA Nemotron 3.5 Bolt E4B 作為對話核心。這是一個專為本地對話代理設計的小型開放權重語言模型。開發者在發布前測試了該模型,發現其資源佔用低於 Qwen3 30B-A3B 和 Qwen 3.6 35B-A3B 等其他領先模型,適合在受限的計算預算下運行。

系統預設使用 4-bit 量化版本(即名稱中的 4GB),但也保留了 BF16 檢查點以供比較。為了塑造特定的對話風格,開發者創建了一個包含超過 5,000 組多輪對話的數據集,並利用這些數據訓練 LoRA 適配器。這個過程由一個本地代理自動化執行,包括數據集的生成、評估以及模型的基準測試。

除了模型本身,應用邏輯也扮演關鍵角色。系統通過提示詞和應用程式邏輯來追蹤互動狀態,例如判斷訪客是否使用了「請」或「謝謝」等禮貌用語,從而改變房屋的反應強度。這種設計避免了讓語言模型自行記憶對話歷史,而是將狀態管理交給外部邏輯處理,以確保行為的一致性。

語音合成與延遲優化:零樣本技術與緩存策略

NVIDIA Magpie TTS Zeroshot 負責將文字轉換為聲音,它使用零樣本(zero-shot)技術,僅需一段簡短的參考音頻即可複製特定角色的音色。開發者錄製了七種不同情緒的語音樣本,從暴躁到愉悅,並通過提示詞模板讓語言模型選擇適當的情緒標籤來控制語氣。

為了確保互動的即時性,系統採用了流式處理技術,在完整回答生成完畢前就開始輸出可讀文本和語音。此外,針對常見的問候語和糖果笑話,系統預先錄製了語音並建立了文本庫。這種緩存機制顯著降低了計算負載和延遲。

測試數據顯示,使用 Bolt Q4 模型和即時 TTS 合成的平均語音結束到音頻輸出延遲為 1.70 秒;而當使用預先錄製的緩存回應時,該延遲降至 0.72 秒。需要注意的是,目前的語音結束檢測機制會等待 300 毫秒的靜默期來判斷訪客是否說完話。

視覺感知與動畫:服裝識別與即時面部驅動

為了讓房屋能對訪客的裝扮做出反應,系統整合了 NVIDIA Nemotron 3 Nano Omni 作為視覺語言模型(VLM)。Omni 負責分析攝像頭影像並描述可見的服裝細節,為對話提供上下文。同時,系統使用 YOLO 和 ByteTrack 進行人員計數和追蹤,將這些任務分開處理以優化性能。

在動畫方面,NVIDIA Audio2Face-3D 根據乾淨的語音輸入驅動 Unreal Engine 中的 3D 角色模型。開發者特別指出,Audio2Face-3D 的預設權重對中性男聲或女聲效果最佳,但為了營造深沈的海盜聲音效果,系統將乾淨的語音樣本用於驅動動畫,而實際播放的聲音則經過後期處理添加了回聲和混響效果。

開發者進行了一項合成測試,讓 Omni 分析五隻穿著海盜、吸血鬼、女巫、南瓜和幽靈服裝的綿羊影像,系統成功識別了這些服裝標籤。然而,這僅是合成測試結果,並非真實萬聖節夜間場景的驗證。開發者承認,對於流行服裝的精確識別和機智回應,可能還需要進一步的微調訓練。

控制介面與未來改進方向

MonsterHouse 配備了一個完整的控制檯介面,允許開發者調整開場情緒、審聽緩存語音、監控對話流程以及調整面部動畫參數。介面還包含一個音效板,讓操作者可以手動輸入特定台詞,或在「麥克風模式」下直接通過房屋說話,繞過自動識別和生成過程。

目前系統尚未實現完全無人值守的運行目標,開發者仍需手動監控某些環節。未來的改進計劃包括完善動畫效果、進行真實訪客的完整性能測試,以及實現糖果的自動發放。開發者強調,雖然代碼本身未打包發布,但所使用的 NVIDIA 模型均可公開獲取,並提供了基於 Nemotron Voice Agent 構建類似角色的技術路徑建議。