前言¶
DeepSeek Harness (DSH) 的設計理念是「一切皆插件」。在開發具有數字人能力的智能體時,開發者通常需要分別對接 ASR(語音識別)、TTS(語音合成)、Avatar 媒體渲染以及對話管線,最後還要在 UI 層面完成角色註冊與場景搭建。這一過程涉及多個組件的協作,開發成本較高。
Live Talk 是一個面向 DSH 的插件,它提供了一套完整的數字人切片方案。該插件將對話角色可視化核心、語音/視頻 Provider 接口以及插件殼整合在一起,開發者可以直接使用它來驅動一個隨對話自然說話、轉身、微笑的虛擬角色。
插件概況¶
Live Talk 由開發者 eddiehuang227-source 維護,遵循 MIT 許可證。它允許用戶將任意照片轉化爲一個響應式的虛擬女孩。該插件在低延遲、高細節的場景下表現良好,提供了一套從 ASR 到 TTS 再到 Avatar 渲染的完整能力。
核心功能¶
Live Talk 採用三層結構設計,分別對應不同的職責:
- dsh 插件殼:位於
package.json、cordis.patch.yml、src/index.js和src/client.js。負責 DSH bundle/client manifest 的管理、Host 路由註冊、瀏覽器conversation.view標籤頁的渲染(角色舞臺、開場視頻、情緒 clip 聯動)以及零 Key TTS 試聽功能。 - 對話角色可視化 core:位於
src/core/characters.js、character-registry.js、dialogue-pipeline.js、emotion.js和conversation-bridge.js。負責管理角色 manifest、角色註冊表、與供應商無關的語義管線(句子切分、情緒/動作、TTS 清洗)以及 DSH session 事件的橋接。 - 語音/視頻 provider seam:位於
src/core/seams.js和provider-registry.js。提供asr、tts和avatar-media三個可替換的能力註冊表。
該插件集成了角色 manifest 和對話管線,支持零 Key 的瀏覽器 TTS 和瀏覽器語音能力。角色預覽圖與開場視頻隨包發佈在 assets/ 目錄。情緒片段來自外部 character pack,如果缺失,UI 會自動回退到靜態頭像。
安裝與啓用¶
安裝前請確保已安裝 DeepSeek Harness 並滿足運行環境要求。以下是具體的安裝與啓用步驟:
- 安裝插件
使用插件管理命令將本地或路徑下的live-talk添加到 avatar 配置文件中:
dsh plugin --profile avatar add /path/to/live-talk
- 驗證配置
運行命令查看配置文件中是否成功加載了 live-talk:
dsh --profile avatar --dump-config
- 啓動 Web UI
啓動 DSH 的 Web 界面:
dsh --profile avatar web
- 選擇會話視圖
在 Web UI 的會話頂部視圖標籤中,選擇 Live Talk 標籤頁即可進入角色對話界面。
開發與測試¶
如果你需要對該插件進行二次開發或進行驗證測試,請遵循以下步驟:
- 構建代碼
從src/目錄生成lib/目錄:
npm run build
- 運行單元測試
運行所有單元測試(包含構建步驟):
npm test
- 運行集成測試
運行完整的集成測試。注意:此步驟需要將DSH_REPO環境變量指向 deepseek-harness 的源碼目錄,同時需要設置DSH_HOME:
npm run test:integration
注意事項¶
在部署和使用 Live Talk 時,請注意以下事實:
- 環境要求:需要安裝 Node.js 版本 >= 22.13.0。
- 驗證版本:當前插件在 DSH 版本
0.1.0-rc.5上經過驗證。 - 安裝方式:
- 通過 GitHub 直裝時,需要鎖定特定提交併允許
prepare構建腳本。 - 通過 npm 或 tarball 發佈的版本,
lib/目錄已預構建,無需構建權限。
- 通過 GitHub 直裝時,需要鎖定特定提交併允許
- 密鑰管理:所有第三方 Provider 的密鑰通過 DSH 的
ctx.credentials傳遞,不應出現在 patch 文件或配置文件中。 - 集成測試:
test:integration需要依賴本地的 DSH 源碼環境。