07 - 会议纪要 Agent¶
项目背景与目标¶
某咨询公司每周产生超过 2000 场内外部会议,会议纪要依赖人工记录整理,平均每场 1 小时会议需 1.5 小时整理纪要,且记录者无法专注参与讨论。纪要质量参差不齐,待办事项常遗漏,跨语言会议(中英混开)更易出错。企业希望构建会议纪要 Agent,自动完成「录音转写 → 语义分段 → 摘要生成 → 待办提取 → 多端分发」,将纪要产出时间从 1.5 小时压缩到 5 分钟,待办准确率 ≥ 95%,并支持多语言与说话人区分。
核心目标: 1. 会议录音转写准确率 ≥ 95%,支持说话人分离 2. 自动生成结构化纪要(议题、决议、待办、风险) 3. 待办项自动提取并指派到人 4. 纪要产出时间 < 5 分钟(1 小时会议)
预期价值:释放记录人力、提升纪要质量与及时性、待办可追踪、会议资产可检索。
需求分析¶
用户角色与场景 - 会议组织者:上传录音/发起实时纪要、审核发布 - 参会人:接收纪要、认领待办、检索历史会议 - 项目经理:跨会议汇总待办与决议
功能需求列表 - 实时流式转写与离线录音转写 - 说话人分离(diarization)与声纹注册 - 语义分段(按议题切分) - 结构化纪要生成(议题/决议/待办/风险/数据) - 待办提取与责任人指派、截止日期识别 - 多语言会议(中英混说)处理 - 纪要审核编辑与版本管理 - 会议资产检索(按项目/人/关键词)
非功能需求 - 性能:实时转写延迟 < 2 秒,离线 1 小时音频处理 < 5 分钟 - 安全:会议内容加密存储、权限隔离、外部会议脱敏 - 可用性:99.5% - 准确性:专有名词、人名、数字准确率
约束条件:需对接现有会议系统(腾讯会议/Zoom);涉密会议需私有化。
技术选型说明¶
| 层次 | 技术选择 | 选型理由 |
|---|---|---|
| STT | Paraformer + Whisper | 中文强 + 多语言,流式与离线双模式 |
| 说话人分离 | pyannote-audio | 开源、效果稳定 |
| Agent 框架 | LangChain | 文档处理链丰富 |
| LLM | Qwen2.5-72B | 长上下文、中文摘要强 |
| 后端 | Python + Celery | 异步任务处理长音频 |
| 存储 | 对象存储 + PostgreSQL | 音频 + 结构化纪要 |
| 部署 | K8s + GPU | 私有化可选 |
架构设计¶
flowchart LR
subgraph 输入
LIVE[实时会议流] --> STT1[流式 STT]
FILE[录音文件] --> STT2[离线 STT]
end
STT1 --> DIA[说话人分离]
STT2 --> DIA
DIA --> SEG[语义分段]
SEG --> AGENT[纪要 Agent]
AGENT --> SUM[摘要生成]
AGENT --> TODO[待办提取]
AGENT --> RISK[风险识别]
SUM --> REV[审核编辑台]
TODO --> REV
REV --> DIST[分发: 邮件/IM/任务系统]
REV --> SEARCH[(会议资产库)]
核心是「转写-分离-分段-结构化」四步。说话人分离将语音按人切分并标注,语义分段按议题聚合相邻语句,再由 LLM 生成结构化纪要。审核台保留人工把关,发布后分发并入库。
关键模块实现思路¶
模块1:转写与说话人分离¶
- 思路:实时模式流式 STT 输出 partial 文本;离线模式整段转写。说话人分离用 pyannote 对音频聚类,结合声纹库(员工注册声纹)将 speaker_x 映射为真实姓名。
- 关键点:中英混说场景用多语言模型,无需手动切语言;数字与人名通过热词表提升准确率。
模块2:语义分段¶
- 思路:转写文本是按时间顺序的语句流,需按议题聚合。用 LLM 或文本聚类将语义相近相邻语句归为一段,并生成段标题(如「Q3 业绩回顾」)。
- 关键点:分段是后续摘要的基础,段太碎摘要难成体系,段太大细节丢失。
模块3:结构化纪要生成¶
- 思路:对每个语义段用 LLM 生成「议题-讨论要点-决议」三段式;全局再生成会议总览摘要;输出统一 JSON 结构便于下游消费。
- 示意:
{ "overview": "...", "topics": [ {"title":"Q3业绩","points":["..."],"decision":"..."} ], "action_items": [{"task":"","owner":"","due":""}], "risks": ["..."] }
模块4:待办提取与指派¶
- 思路:LLM 识别「谁、做什么、何时完成」三元组,结合参会人名单校验 owner 有效性;指派时联动任务系统(Jira/飞书任务)创建并通知。
- 关键点:模糊指派(「这件事小王跟一下」)需确认;截止日期缺失时提示补充。
核心流程详解¶
流程1:实时会议纪要¶
- 会议开始,Agent 接入会议音频流
- 流式转写实时显示在会议侧边栏,说话人自动标注
- 会议进行中每 10 分钟滚动生成阶段性摘要
- 会议结束触发完整纪要生成(< 2 分钟)
- 组织者在审核台编辑后发布,自动分发与创建待办
流程2:跨会议待办汇总¶
- 项目经理查询「本周所有会议中分配给我的待办」
- Agent 检索会议资产库,汇总跨会议 action_items
- 按截止日期排序展示,支持标记完成
部署与优化建议¶
- 部署架构:STT 与说话人分离 GPU 服务独立;LLM 复用企业推理平台;长音频用 Celery 异步队列。
- 性能优化:离线音频按时间段切片并行转写后合并;纪要生成按段并行。
- 成本控制:分段摘要用小模型,总览与待办用大模型。
常见问题与解决方案¶
- 专有名词/人名错误 → 热词表注入 STT;纪要生成时提供参会人名单与术语表。
- 说话人混淆 → 声纹注册 + 会议日历交叉校验参会人。
- 纪要泄密 → 权限隔离,外部会议内容不进资产库,加密存储。
扩展方向¶
- 实时会议助手:会议中实时提示「上次会议的待办还未跟进」。
- 会议质量分析:分析发言时长分布、打断频率,给出会议效率评分。
- 多模态纪要:结合共享屏幕与白板截图,纪要附关键画面。