LexGuard · ASR + LLM Demo

先录音,再把文字喂给 LLM。

这个页面是一个独立调试用的网页 demo。浏览器只负责采集麦克风、按 200ms 切片、转换成 16kHz WAV, 然后交给本地桥接服务去连豆包流式 ASR。录音结束后,转录文本会自动或手动送入 当前配置的 LLM 生成建议回复。

200ms 切片 16kHz 单声道 WAV 容器 SSE 实时回传 LLM 联动
空闲 检查后端中...
会话
-
已发送分片
0
输入采样率
-
目标切片
200ms
输入电平 / RMS
这里显示浏览器实际采到的麦克风音量。如果你在说话但它长期接近 0, 问题就在采集设备或浏览器权限这一层。
等待采集
RMS 0.0000
Peak 0.0000
dBFS -∞
Prompt / 系统提示词
先在这里输入提示词,再开始说话。庭审辅助为默认模式;录音或 Mock 回放过程中,新的语义块会持续排队送进 LLM。
这条链路不会直接把浏览器 WebSocket 连到豆包,而是通过本地桥接服务加上认证头后再送出。

会话历史

默认会复用当前会话。点“创建新会话”后,下次录音会直接新建 session,旧历史会保留,方便对比多轮 E2E。
点击后,下次录音将新建 session,不再续接当前这条历史。

实时识别

录音开始后,这里会显示云端最新的识别假设。达到断句阈值时,LLM 会提前给出阶段性提醒。
等待开始
点击“开始录音”后说话,文字会在这里持续刷新,并在断句阈值触发时送入 LLM。
当前还没有会话。

回传诊断

这里会同时显示 SSE 事件和 /chunks HTTP 回包里的关键字段。 如果这里已经有文本,但主识别区没变,问题就在前端渲染;如果这里也一直空,问题就在上游回包。
等待文本
等待事件...
功能二:案件地图
后台 30 秒旁路基于同一批 evidence cards 生成,不阻塞主线。
等待后台
等待后台证据卡形成案件地图。
功能三:阶段陈述
同一轮 RAG + rerank 的证据卡复用到 500-800 字综合陈述。
等待后台
等待后台阶段陈述。
💬 庭审记忆 Agent 就绪
问庭审中说过什么、证据在哪、谁在什么时候说了什么
输入问题开始询问庭审记录

LLM 回复

这里会显示当前 LLM 根据 prompt 和 ASR 文本生成的建议。语义块进入主链时显示阶段性提醒,收尾时再给最终版;下方同时固定显示本会话的 LLM 请求数和总 token。
等待语义批次
LLM Note
主线输出直接由固定卷宗 Prompt、截至当前完整 ASR 和当前 ASR cue 生成;“下一步”就是当事人可念话术。
开始真实录音或 Mock 范本回放后,这里会显示主链生成结果。
当前还没有生成结果。
上下文预算
这里显示本批实际带入 prompt 的组成、估算 token 和是否被截断。
等待生成
等待 LLM 生成后显示本次上下文预算。
上下文来源预览
这里显示本次生成实际带入的 prompt、结构化状态、历史召回和提醒摘要预览。
等待生成
Prompt
等待上下文...
Evidence Cards
功能二和功能三共用这一批短证据卡;不回灌功能一普通版主链。
0 cards
Live 状态
先看当前 live 提醒和 summary 状态,再看整场 session 的真实 token 累计。
当前 Live 模型
-
Live 提醒次数
0
Live 状态
idle
Summary 成功次数
0
Summary 跳过次数
0
Session Benchmark
这里固定显示这轮样本是不是 fresh boot、固定庭审样本的质量指标,以及本会话总 token 和 task breakdown。
Fresh Boot
no
当前 Runtime Boot
-
当前 Live 模型
-
Session Settled
no
Document-Import 命中批次
0
Off-Scenario-Minimal
0
暂无明确风险
0
答辩策略
0
Summary Success Ratio
0/0
Session Total Tokens
0
Task Token Breakdown
live 0 / summary 0 / report 0
Session LLM Usage
这里是本会话累计的真实 provider usage,不是单个 batch 的估算上下文预算。
LLM 请求数
0
Prompt Tokens
0
Completion Tokens
0
Total Tokens
0
最后更新时间
-
Task Breakdown: 把本会话 token 按 live cue、summary、report 三类拆开,方便做稳定性和成本对比。
Live Cue
0 tok / 0 req
Summary
0 tok / 0 req
Report
0 tok / 0 req
Report Delivery Truth
这里直接显示正式报告是否已就绪、用了多少次请求、花了多少 token,以及当前交付状态的诊断。
等待报告
报告状态
idle
报告错误
-
尝试次数
0
超时预算
0ms
失败阶段
-
报告请求数
0
报告 Tokens
0
报告更新时间
-
Terminal Warning
-
Warning Count
0
报告状态预览
报告进入 done 后,这里会显示正式交付正文的简短预览;失败或取消时只显示诊断,不混入正文。

ASR + LLM 时间轴

这里按语义批次持续累积。左侧显示 ASR cue,右侧显示对应 LLM note,默认自动跟随到底部,向上滚动后会暂停跟随。
等待条目
还没有时间轴条目。开始录音并触发 LLM 后,ASR 和回复会按批次累积在这里。

事件日志

每次发送分片、收到结果或完成收尾时,都会记录一条日志。

服务状态

启动后会自动检查本地桥接和豆包配置。
推荐的切片参数来自官方样例:100-200ms 一片,200ms 对双向流式通常最稳。

庭前长材料 / 证据抽屉

长合同、多卷证据、聊天记录汇总等放在这里做只读 RAG。它不会进入固定卷宗 Prompt,只会在当前 ASR 命中时最多召回 1-3 片,低优先级拼入主线。
Scope 等待会话
暂无长材料
上传长材料
第一版只支持 `txt / md / markdown`。导入后会切片写入只读向量索引,实时 ASR 不会写入这里。
粘贴长材料
已导入长材料
还没有导入庭前长材料。
长材料正文预览
这里会显示当前选中长材料的正文。它不会进入固定卷宗 Prompt,只会在当前 ASR 命中时以只读 RAG 片段低优先级进入主线。

资料记忆

这里仅放 2-3 千字左右的简易卷宗,作为固定 Prompt 直接进入主线。长合同、多卷证据和聊天记录汇总不要放这里,请放到上方“庭前长材料 / 证据抽屉”。
Scope 等待会话
暂无资料
上传简易卷宗
这里只接收简短固定 Prompt。超过 12,000 字符会被拦截,长材料应导入证据抽屉并向量化。
粘贴简易卷宗
已导入简易卷宗
还没有导入简易卷宗。
简易卷宗预览
这里会显示当前选中简易卷宗的正文。它会进入固定 Prompt;长材料不要放在这里。
Debug / 文件验证
这个区域是给调试用的,方便后面把已有 WAV 文件走同样的流式桥接流程验证,不影响主界面。
说明:这里不会绕过流式链路,而是把选中的 WAV 按相同的 200ms 逻辑分片后送入同一条桥接服务。