会议分析器

meeting-analyzer
分类Office
作者Alireza Rezvani
许可MIT
评分4.20/5
使用13.7K

会议洞察分析器 (Meeting Insights Analyzer)

> 最初由 maximcoding 贡献 —— 由 claude-skills 团队增强并集成。

将会议转录文本转化为关于沟通模式、领导力行为和人际动态的具体且有据可查的反馈。

核心工作流

1. 摄取与盘点

扫描目标目录中的转录文件 (.txt, .md, .vtt, .srt, .docx, .json)。

针对每个文件:

  • 从文件名或内容中提取会议日期(预期为 YYYY-MM-DD 前缀或嵌入的时间戳)

  • 识别发言人标签 —— 寻找如 Speaker 1:, [John]:, John Smith 00:14:32 或 VTT/SRT 提示词格式的模式

  • 检测用户身份:若不明确则询问,否则根据最频繁的发言人或文件名线索进行推断

  • 记录:文件名、日期、时长(根据时间戳)、参与人数、字数

打印一份简短的盘点表,以便用户在开始深度分析前确认范围。

2. 转录文本标准化

不同工具生成的格式差异巨大。在分析前,将所有内容标准化为统一的内部结构:

code
{ speaker: string, timestamp_sec: number | null, text: string }[]

各格式处理方式:

  • VTT/SRT: 解析提示词时间戳 + 文本。发言人标签可能在行内 (<v Speaker>) 或作为前缀。

  • 纯文本: 寻找每行开头的 Name:[Name] 前缀。如果没有发言人标签,提醒用户单人分析将受限。

  • Markdown: 去除格式,然后视作纯文本处理。

  • DOCX: 提取文本内容,然后视作纯文本处理。

  • JSON: 预期为包含 speaker/text 字段的对象数组(常见的 Otter/Fireflies 导出格式)。

如果缺失时间戳,则优雅降级 —— 跳过依赖时间的指标(如语速、停顿分析),但仍执行基于文本的分析。

3. 分析

运行以下所有适用的分析模块。每个模块相互独立 —— 跳过不适用的模块(例如,如果没有发言人标签,则跳过发言比例分析)。

---

#### 模块:发言动态 (Speaking Dynamics)

计算每位发言人的:

  • 字数及占会议总字数的百分比

  • 发言次数 —— 每人发言的次数

  • 平均发言长度 —— 每次连续发言的字数

  • 最长独白 —— 标记超过 60 秒或 200 字的发言

  • 打断检测 —— 在前一位发言人最后时间戳 2 秒内开始的发言,或句子中间的中断

生成单场会议摘要;若存在多份转录文本,则生成跨会议平均值。

需要揭示的警示信号 (Red flags):

  • 在 1:多 会议中,用户发言占比 > 60%(主导过度)

  • 在由用户主持的会议中,用户发言占比 < 15%(参与度低或过度授权)

  • 某位参与者从未发言(被忽视的声音)

  • 打断比例 > 2:1(用户频繁打断他人)

(被中断的频率是其两倍)

---

#### 模块:冲突与直接度

扫描用户发言中的委婉语(hedging)和回避标志:

委婉语言(单次评分,按会议汇总):

  • 限定词:"maybe"(可能)、"kind of"(有点)、"sort of"(某种程度上)、"I guess"(我想)、"potentially"(潜在地)、"arguably"(可以说)

  • 寻求许可:"if that's okay"(如果可以的话)、"would it be alright if"(如果……可以吗)、"I don't know if this is right but"(我不确定这是否正确,但是)

  • 推卸/回避:"whatever you think"(随你怎么想)、"up to you"(由你决定)、"I'm flexible"(我都可以)

  • 不同意前的缓冲词:"I don't want to push back but"(我不想反驳,但是)、"this might be a dumb question"(这可能是一个很傻的问题)

冲突回避模式(需要更多上下文,需标注置信度):

  • 紧张气氛后的话题转移(发言者 A 提出问题 $\rightarrow$ 用户转向讨论后勤/细节)

  • 无承诺的赞同:"yeah totally"(没错,完全正确)之后没有采取行动或跟进

  • 将他人的顾虑淡化:"it's probably not that big a deal"(这可能没那么严重)

  • 在本应讨论绩效的 1:1 会议中缺乏反馈

针对每个标记实例,提取:

  • 完整引用(包含前后各 2 轮对话的上下文)

  • 严重程度标签:low(单个委婉词)、medium(单次交流中出现委婉模式)、high(明显回避了必要的对话)

  • 修改建议:更直接的表达方式应该是怎样的

---

#### 模块:填充词与语言习惯

统计以下词汇的出现次数:"um"、"uh"、"like"(非比较含义)、"you know"、"actually"、"basically"、"literally"、"right?"(附加疑问句)、"so yeah"、"I mean"

报告内容:

  • 每场会议的总数

  • 每 100 个单词的出现率(用于消除会议长度的影响)

  • 按填充词类型分类的明细

  • 上下文峰值 —— 填充词是否在特定情况下增加?(例如:在回应高级管理层时、给出负面反馈时、被突然提问时)

仅当出现率超过每 100 个单词约 3 次时,才将其标记为问题。低于此数值则视为正常说话习惯。

---

#### 模块:提问质量与倾听

对用户的提问进行分类:

  • 封闭式(是/否):"Did you finish the report?"(报告写完了吗?)

  • 引导式(答案已嵌入):"Don't you think we should ship sooner?"(你不觉得我们应该早点发布吗?)

  • 开放且真诚:"What's blocking you on this?"(这件事上你遇到了什么阻碍?)

  • 澄清式(引用前文):"When you said X, did you mean Y?"(当你提到 X 时,你的意思是 Y 吗?)

  • 构建式(延伸他人想法):"That's interesting — what if we also Z?"(很有意思 —— 如果我们也做 Z 会怎样?)

良好倾听指标:

  • 澄清式和构建式提问(表明在积极处理信息)

  • 改述:"So what I'm hearing is..."(所以我的理解是……)

  • 引用会议早些时候他人提到的观点

  • 邀请沉默的参与者发表意见

糟糕倾听指标:

  • 提出一个已经被回答过的问题

  • 在不承认对方回应的情况下重复自己的观点

  • 用无关话题回答问题

报告开放式/澄清式/构建式提问与封闭式/引导式提问的比例。

---

#### 模块:引导与决策

仅在用户为会议组织者或引导者时适用。

评估项:

  • 议程执行力:会议是否遵循结构,还是在跑题?

  • 时间管理:每个话题的实际用时与预期相比如何?

  • 包容性:引导者是否积极引导沉默的参与者发言?

  • 决策清晰度:决策是否被明确陈述?(例如:“那么我们决定采用方案 B —— Sarah 负责在周五前跟进。”)

  • 行动项:是否分配了负责人和截止日期,还是含糊其辞?

  • “停车场”纪律:离题项是否被记录并推迟讨论,还是导致了会议脱轨?

---

#### 模块:情绪与能量

追踪情绪曲线
分析用户在整个会议中的语言状态:

  • 正面指标:热情的赞同、鼓励、幽默、赞赏

  • 负面指标:沮丧、轻视、讽刺、简短生硬的回答

  • 中立/平淡:低能量回应、单字回答

标记能量下降点 —— 即用户参与度明显降低的时刻(话语变短,回应内容减少)。这些时刻通常与不适、无聊或回避相关。

---

4. 输出报告

将最终输出结构化为一份完整的报告。使用以下框架 —— 若数据不足,请省略相应章节:

markdown
# 会议洞察报告

周期: [最早日期] – [最晚日期]
分析会议数: [数量]
转录文本总词数: [数量]
您的发言占比 (平均): [X%]

---

三大核心发现

[按影响力排序。每项发现包含 2-3 句话 + 一个包含直接引用和时间戳的具体示例。]

详细分析

发言动态

[统计表格 + 叙述性解读 + 标记的红旗预警]

直接度与冲突模式

[按模式类型分组的标记实例,包含原话及修改建议]

语言习惯

[填充词统计,上下文激增情况,仅在频率 > 3/100 词时显示]

倾听与提问

[问题类型分解,倾听指标,具体示例]

引导能力

[仅在适用时显示 —— 议程、决策、待办事项]

能量与情绪

[趋势总结,标记的能量下降点]

优势

[用户做得出色的 3 个具体方面,并附带证据]

增长机会

[按影响力排序的 3 项建议,每项包含:需要改变什么,为什么重要,以及一个具体的“下次尝试这样说”的行动方案]

与前一周期对比

[仅在存在先前分析时显示 —— 关键指标的增减情况]

5. 后续选项

交付报告后,提供以下选项:

  • 针对特定会议或模式进行深度分析

  • 一页纸的“沟通速查表”,列出用户最需要改变的 3 个习惯

  • 追踪设置 —— 将当前指标保存为基准,以便未来对比

  • 导出为 markdown 或结构化 JSON,用于绩效评估

---

边缘情况处理

  • 无发言人标签:提前告知用户。进行文本级分析(全文本的填充词、问题类型),但跳过单人指标。建议重新导出并开启发言人识别。
  • 会议时间极短(< 5 分钟或 < 500 词):进行分析,但注明短会议的模式可能不具代表性。
  • 非英语转录文本:填充词和委婉语词典以英语为中心。对于其他语言,注明此限制并侧重于结构分析(发言比例、轮替、问题数量)。
  • 单场会议 vs. 语料库:如果只有一份转录文本,跳过趋势/对比描述。将发现集中在单场会议上。
  • 无法识别用户:扫描后若无法确定哪个发言人是用户,请在开始前询问,不要猜测。

转录文本来源提示

仅在用户不确定如何获取转录文本时,在输出中包含此部分:

  • Zoom: 设置 $\rightarrow$ 录制 $\rightarrow$ 启用“音频转录”。从云端录制中下载 .vtt 文件。
  • Google Meet: 自动转录将保存至日历事件对应的 Drive 文件夹中的 Google Docs。
  • Granola: 导出为 markdown。在消费级工具中发言人标签质量最高。
  • Otter.ai: 从 Web 控制面板导出为 .txt.json
  • Fireflies.ai: 导出为 .docx.json —— 两者均适用。
  • Microsoft Teams: 转录文本出现在会议聊天中。下载...
保存为 .vtt 格式。

建议采用 YYYY-MM-DD - 会议名称.ext 的命名规范,以便于按时间顺序进行分析。

---

反面模式 (Anti-Patterns)

| 反面模式 | 失败原因 | 更好的方法 |
|---|---|---|
| 在没有发言人标签的情况下分析 | 无法获取个人指标 —— 结果仅为泛泛的词云 | 要求用户在开启发言人识别后重新导出 |
| 对 5 分钟的站会运行所有模块 | 过度分析 —— 语气词和冲突分析需要 20 分钟以上的会议 | 自动检测会议时长并跳过无关模块 |
| 在没有上下文的情况下提供原始指标 | “你说了 47 次‘嗯’”在没有基准对比时会令人沮丧 | 始终与常模对比并展示随时间变化的趋势 |
| 孤立地分析单场会议 | 单场会议只是快照而非模式 —— 结论不可靠 | 趋势类辅导至少需要 3 场以上的会议 |
| 将发言时间均等视为目标 | 主持人【应该】少说;演讲者【应该】多说 | 根据会议类型和角色对发言比例进行加权 |
| 将所有委婉词 (Hedge words) 标记为负面 | “我认为”和“也许”在头脑风暴中是恰当的 | 区分决策会议(委婉词不利)和构思会议(委婉词可行) |

---

相关技能

| 技能 | 关系 |
|-------|-------------|
| project-management/senior-pm | 更广泛的 PM 范畴 —— 用于项目规划、风险管理和干系人管理 |
| project-management/scrum-master | 敏捷仪式 —— 与会议分析器配合提升回顾会议质量 |
| project-management/confluence-expert | 将会议分析结果存储为 Confluence 页面 |
| c-level-advisor/executive-mentor | 高管沟通辅导 —— 提供互补的视角 |