dsh-reaction-studio:大肥魚陪看工作室與離線 Reaction 成片

前言

在 DSH 裏做「陪看」類智能體,常見做法是人工切時間軸、固定次數插話,或把直播鏈路硬塞進離線剪輯。觀衆側要的是連續劇情理解與可控口播,製作側要的是正常語速、24 fps、字幕與 Live2D 口型同軌導出,而不是實時推流。下面介紹維護者 XiaoZheBrother 的工作流插件 dsh-reaction-studio(社區目錄:SkillHub 條目),它讓 Agent 分段觀看影片、積累事件後自主決定繼續看、開口或暫停分析,再把原片、語音、字幕和 Live2D 合成正常速度視頻;面向離線製作,不是實時直播,也不代爲發佈作品。

這是什麼

大肥魚陪看工作室(npm 包名 dsh-reaction-studio,當前版本 0.1.0-alpha.3 開發預覽,MIT 許可證)是一條以 DSH 工具註冊爲入口的陪看製作流水線。插件與 dsh-live-studio 分工:後者提供人設、記憶、前綴讀取與 Live2D 公共組件;本插件專注連續觀察、自主反應、暫停分析與成片導出,並支持可選的音畫理解實驗。核心流程曾在本機完成完整一集製作;新版音畫理解做過三分鐘樣片。提取後的安裝包經過測試,文檔說明不代表任意模型和新電腦都已完成實機驗收。

核心功能

依據 README,已覈實的能力包括:

  • 觀察與開口分離:連續積累事件,記住剛說了什麼、說了多久;不設置固定發言次數或冷卻時間。
  • 只看已發生內容:畫面、字幕和聽覺證據按時間公開,不預讀結局;可回看最近內容。
  • 自主表演:複用直播插件的表情、動作與退出動作控制;無「驚訝就必須做某動作」的硬性規則。
  • 自主暫停分析:長話可暫停原片,講完繼續;短反應在對應位置疊加;可選擇片尾感想。
  • 統一製作時間軸:正常速度原片、正常語速、24 fps 導出、多行字幕和口型;原片音量保持不壓低。
  • 可續作任務:保存觀看記錄、選擇、聲音和製作狀態;重複調用同一任務 ID 不重複啓動。
  • 可選聽覺實驗:時間戳轉寫、匿名聲音候選和人物歸屬依據;不把當前出鏡人物直接當作說話者(需單獨 Python 環境與配置,見下文)。

安裝與啓用

環境與前序插件

需要 DSH 0.2.1-rc.5 或兼容版本、Node.js 22.19+、Python 3.11+、Chromium,以及自行準備的 Live2D 模型和 Cubism Core。先安裝配套 dsh-live-studio 0.2.0-alpha.3;只做陪看時可不啓用直播服務。

在同一個 DSH home / profile 中安裝兩個倉庫的 Release tgz,先直播插件、後本插件(路徑替換爲本地 tgz 絕對路徑):

$env:DSH_HOME = 'D:\my-agent-data'
dsh plugin --profile web add '<dsh-live-studio tgz 的絕對路徑>'
dsh plugin --profile web add '<dsh-reaction-studio tgz 的絕對路徑>'

也可分別克隆源碼執行 npm pack。不要把製作目錄、密鑰、影片或模型放進插件源碼目錄;升級插件不應刪除用戶數據目錄。

媒體 Python 環境

在本插件目錄創建 venv 並安裝 Playwright 的 Chromium:

python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
.\.venv\Scripts\python.exe -m playwright install chromium

複製 examples/config.json 到自己的數據目錄,填寫絕對路徑。要點:chromium 爲 Playwright 瀏覽器可執行文件;materials 僅列允許 Agent 使用的素材及最大秒數;home、persona 指向現有人設和數據;model_dir 與 cubism_core 配齊後可複用直播插件內置資源,無需啓動直播或鯨語服務。模型與 Core 不隨插件分發;當前陪看手勢仍適配神宮涼子鯨魚娘,不承諾其他模型動作名相同。

模型請求沿用直播插件的 DeepSeek 調用和 home/bili-duty/comment-prefill.json 開關;API 密鑰通過環境或現有 DSH 憑據讀取。Edge TTS 和模型請求需要網絡。

在 DSH 插件設置中配置 python 爲媒體環境 Python 絕對路徑,configPath 爲配置文件絕對路徑,再設 enabled: true。僅註冊工具,不自動觀看、開播或運行 B 站任務。

插件在系統中的行爲

Windows 下 launcher: windows-task 使用當前用戶獨立計劃任務;同一數據目錄一次製作一個任務。關閉對話不會取消正在製作的任務;停用插件也不會自動結束獨立任務,需在任務計劃程序停止對應 Feiyu-Reaction-<job_id>。請在任務空閒後升級。不要同時啓用舊的手動 MCP 註冊與本插件。

典型用法

在主對話中可這樣說(README 示例):

先列出可陪看的素材,然後用 episode01 做三分鐘樣片,什麼時候開口、暫停或用表情由你決定,先不發佈。

工具 用途
reaction_catalog 查看授權素材和已有任務
reaction_start 啓動/恢復任務,支持裁切秒數、片尾感想
reaction_status 查詢進度、請求回執和本地成片路徑
reaction_observation 讀取已經看過的劇情理解和近期發言
reaction_pause_analysis 請求在安全邊界暫停展開,講完繼續
reaction_replay 回看最近 1–10 秒,不提前看劇情

工具回執不是成片完成通知;用原任務 ID 查詢 reaction_status。

可選音畫理解

另建 Python 環境安裝 backend/requirements-hearing.txt,配置 hearing_python 和 hearing_models,新任務纔會啓用音畫事件模式;已有任務保持創建時配置。詳見倉庫 docs/reaction-audiovisual.md。本地 ASR 默認日語 small 模型;聲音候選在複雜聲線下容易分裂,置信度未校準。不啓用 hearing 時走舊視覺觀察流程,不等於已完成音畫識別。

適用場景與注意

適合誰:已在 DSH 中部署 dsh-live-studio、需要離線 Reaction 成片(含 Live2D)的開發者;願意自管影片版權、模型與 API 成本。

生態分工(README):dsh-live-studio 負責直播與可複用表演組件;dsh-agent-growth 負責長期學習,本插件只記錄製作任務、不自動改寫正式記憶;dsh-bilibili-dafeiyu 負責發佈與賬號。原片、聲音、輸出與私人數據不隨包分發;縮小畫面不意味着獲得傳播授權。

安全與許可:插件以當前 DSH 進程權限運行,安裝前請閱讀源碼與 MIT 許可證;自行覈對 materials 與密鑰配置,勿將敏感內容寫入插件源碼目錄。

結尾

dsh-reaction-studio 把「分段看片—自主反應—暫停分析—統一時間軸導出」收成一條可恢復的任務流,並與直播工作室的 Live2D 與人設鏈路對齊。目錄與源碼:

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜