前言¶
在使用 DeepSeek Harness(DSH)开发智能体时,若遇到模型生成卡顿,界面常仅提示“深度潜水中”,无法区分是模型在处理还是单纯的延迟。dsh-live-token-stats 插件通过实时流式数据与官方分词表,在 composer 下方展示具体的 Token 状态带,帮助开发者判断模型是否“溺水”。
核心功能¶
该插件主要解决流式输出的透明度问题,提供以下能力:
- 实时分词与计算:实时读取流式返回并使用 DeepSeek BPE 分词,实时计算 token/s(TPS)与输出 token 数。
- 溺水检测:实时检测首字延迟(TTFT),用于判断模型是否溺水。
- 偏差对账:对比本地估算与官方 usage 的偏差。
- 自动挂载:自动挂载为 bundle 层插件,无需编辑 DSH 源码。
安装与启用¶
安装该插件会自动挂载为 bundle 层插件,重启 DSH web 后生效。
从 GitHub 安装:
dsh plugin --profile web add github:better-er/dsh-live-token-stats
从 npm 安装:
dsh plugin --profile web add dsh-live-token-stats
典型用法¶
在 profile 的 cordis.yml 或 overlay 中配置以下参数:
enabled:总开关,默认true。tokenizerMode:分词模式,默认'bpe'。'bpe':使用内置 DeepSeek V4 词表做真实 BPE 切分,与官方 usage 最接近。'density':回退到双密度字符估算(需配置asciiTokenPerChar和cjkTokenPerChar)。rateWindowMs:实时 TPS 的滑动窗口毫秒数,默认3000。debug:诊断日志开关,默认false。
配置示例:
- id: dsh-live-token-stats
config:
enabled: true
tokenizerMode: bpe
rateWindowMs: 3000
debug: false
适用场景与注意¶
- 依赖版本:依赖 dsh 0.1.5-rc.2 或更高版本。
- 估算偏差:工具调用因额外计费消息模板,本地估算会低于实际值(实测单工具约 +40~60 token)。
- 安装机制:
peerDependencies仅作兼容门禁,不参与本地安装。 - 源码结构:源码在
src/目录,构建产物在lib/目录。