惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
IT之家
IT之家
T
The Blog of Author Tim Ferriss
V
V2EX
博客园 - 聂微东
The Cloudflare Blog
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
U
Unit 42
Vercel News
Vercel News
L
LangChain Blog
博客园 - 司徒正美
H
Help Net Security
Recent Announcements
Recent Announcements
Recorded Future
Recorded Future
V
Visual Studio Blog
Jina AI
Jina AI
Microsoft Azure Blog
Microsoft Azure Blog
GbyAI
GbyAI
Y
Y Combinator Blog
C
Check Point Blog
博客园 - 三生石上(FineUI控件)
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks
The Register - Security
The Register - Security
The GitHub Blog
The GitHub Blog
B
Blog RSS Feed
F
Fortinet All Blogs
B
Blog
G
Google Developers Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
云风的 BLOG
云风的 BLOG
爱范儿
爱范儿
MongoDB | Blog
MongoDB | Blog
F
Full Disclosure
有赞技术团队
有赞技术团队
罗磊的独立博客
博客园_首页
MyScale Blog
MyScale Blog
aimingoo的专栏
aimingoo的专栏
Google DeepMind News
Google DeepMind News
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium
Engineering at Meta
Engineering at Meta
量子位
I
InfoQ
小众软件
小众软件
P
Proofpoint News Feed

Python

TG api 我用 google Voice 老申请失败 - V2EX 哪位朋友帮忙用 mac 测试下我的 Python 脚本 - V2EX 用 GPT5.6 填了之前的坑:在线的 Python 编辑器和运行终端 - V2EX 为什么这段 cuda 的并行前缀算法不会数据竞争 - V2EX 怎么搞定纯 Python 代码解码 jpg 图片,要求无外部依赖 - V2EX 使用 kkRepo 搭建 Python PyPI 私服 - V2EX Python WebSocket 长连接到底怎么写才稳? - V2EX 小白求推荐人工智能学习的网课 humanize-text 一个开源的 AI 文本拟人化工具集 9.9 元起!跨境卖家疯抢的纯净住宅 IP 辣椒 HTTP,到底有多香? CodexSaver:在不让 Codex 变笨的前提下,让它更便宜。 [开源] 我正在用 Python 复刻经典游戏红色警戒 2 有准确绘制缠论中枢的 Python 代码借鉴么 做了一个面向张量计算的语言,可从 Python 调用,支持显式索引和自动求导 - V2EX 把电脑伪装成电视,用 DLNA 投屏拿到视频号直播流地址 - V2EX 爬虫开发工作中,你们是如何基于 AI 进行提效的? - V2EX 发现 Python 一个有意思的小特性,发现很合适搞成面试题。问了 AI 都不行:),欢迎来挑战~ - V2EX 大型 Python 开源项目都不会对变量进行类型注解? - V2EX 使用 pycharm 开发 Python ,自定义代码风格,并实时提示 - V2EX 创造了 uv 的 Astral 公司被 OpenAI 收购 - V2EX 慎用 PyCharm Remote Development 功能 - V2EX Python 3.15 JIT 的最新进展,已经有大概 5%的性能提升了 - V2EX [开源] 做了个 feishu-docx,把飞书知识库变成 AI 更容易读写和管理的内容源,方便给 Agent 用 - V2EX 开源项目: clawOS 解决 openclaw 文件系统,一键安装 - V2EX 我用免费 A 股数据做了几个工具,欢迎一起开源! - V2EX 分享一个完全免费的中国 A 股数据获取库 - V2EX AI 应用(如 RAG)背景下,如何选择非关系型数据库 - V2EX Python 3.15 将引入一个很方便的语法: Unpacking in Comprehensions - V2EX clawOS 解决 openclaw 文件系统交互过于抽象问题 - V2EX [开源] pyruns - 给 Python 脚本加个 Web UI,管理批量实验任务 - V2EX 我开源了 Python 版本的 pi-mono(OpenClaw 的底层组件) - V2EX 5090 本地部署 Dify+Blender+ComfyUI,求老哥协助打通链路 - V2EX 求解, PyInstaller 为什么在 GithubAction 上打包后体积比在本地大 5 倍(Mac arm 端) - V2EX 使用 Python 一键发推 - V2EX 在 Python 中复现 Race Condition [踩坑] A 股开盘把 Python 搞挂了,怒切 Go 重写行情网关 (附 pprof 分析 + 源码) - V2EX 有个视频网站学习的时候不点暂停或者视频学完,就一直没有任何包,也没有心跳包,也不会更新视频学习进度学时。 - V2EX 基于 Pydantic-Resolve 和 FastAPI-Voyager 的 Clean Architecture 实践 -- 一套面向复杂业务场景的 Python Web 开发方法论 - V2EX 学习能力不是很强 现在需要学 py 有什么好的推荐吗? - V2EX Python 有没有 subprocess 的替代品,被 subprocess 折腾死了. - V2EX 问个汉字处理的问题 - V2EX 有哪些 Python 3.14 Free-Threading 多线程性能分析方案? - V2EX 招募一位 FastAPI 工程师,作为技术伙伴 为什么 Python 的包管理这么难用,比 node 的 npm 难用一万倍,每次进入项目都要手动执行一下 conda activate xxx,难道就没有默认的 Python 项目级别的依赖吗? - V2EX 网上找了个流出的 Python 程序,想过下是否被污染了 都有什么推荐的办法啊? 有感于 Golang,如何用 3~5 个问题,识别 Python 开发者的技术素养? - V2EX fastapi tortoise orm 前端管理框架有哪个好用的 - V2EX 小白求教个循环导入的问题 - V2EX 用 Python 写了个异步 MCP Filesystem,小而简,欢迎拍砖 Neovim 的代码检查、补全问题 - V2EX 请教一个关于电报机器人的问题 - V2EX 帮你选择最快的 pip 镜像,告别安装慢 - V2EX hishel 升级 1.0.0 导致使用 pdm 项目构建失败 - V2EX 开源一个 Python JA3 请求库。可以自定义 JA3 指纹并且内置 1200 多个 JA3 指纹。 Arm64 安装 PyQt5/6,只能选 conda 吗? - V2EX Python 爬虫微框架 web-craft - V2EX 请教各位佬们一个奇怪的后端相关的技术问题 - V2EX 迭代器的实际应用场景是什么? 小白求问,刚接触编程领域有什么速成的方式学习吗,学基础阶段并不太想去系统学习. - V2EX 𝜋thon ( Python 3.14) Python 3.14 已发布 fastapi-router-viz, 可视化你的 API 内依赖关系 yfinance 获取数据总是 too many request 无法获取价格啊 小白求问,应聘 AI 算法工程师这类岗位应该有什么基础知识
从会议录音到知识库全自动:我把数百段录音做成了可 RAG 问答的 Wiki(附开源代码)
xgordon · 2026-05-12 · via Python

做了个会议录音 → 知识库的全自动管线,开源了,来分享一下。

背景:公司用 Plaud 录音笔积累了大量会议录音,但一直躺在那里没人整理。Plaud 自带的 AI 笔记质量一般,而且说话人都是匿名的( Speaker 1 、Speaker 2…),行动项根本没法落实到人。

做了什么

录音文件 → 说话人分割 → 身份具名 → AI 纪要 → Wiki 知识库
                                                    ↓
                                          可浏览 + 可搜索 + 可 RAG 问答

每天 22:00 cron 自动跑,0 人工干预。


最核心的部分:三阶段说话人具名漏斗

说话人识别我试过纯声纹方案,发现 CAM++ 跨录音根本不可靠——同一个人在不同录音的余弦相似度只有 0.50–0.65 ,反而不如不同人在同一录音的 0.85–0.97 。直接用声纹聚类,阈值 0.65 时同一个人被拆成 17 个簇。

最后用了三层漏斗:

优先级 方法 命中率
1 外部标签时间戳对齐(地面真相) ~95%
2 CAM++ 声纹余弦匹配(阈值 0.55 ) 填补剩余
3 LLM + 组织架构图 + 称呼惯例推断 兜底

最终 94% 片段具名率( 56,862 / 60,664 )。有了具名,行动项才能从"某参与人说要做某事"变成"张经理需在周五前提交报价"。


技术栈

  • 说话人分割:pyannote community-1 ( GPU ,~28x 实时,比 CAM++ 分割准多了)
  • ASR:FunASR Paraformer-large
  • 声纹提取:CAM++ 192-dim embedding
  • LLM:OpenAI 兼容接口( Claude / GPT / 本地 Ollama 均可)
  • Wiki:纯 Python http.server + mistune ,零框架
  • 中文搜索:自制 Bigram 分词,不依赖 jieba

几个踩坑记录

  1. pyannote 直接读 OGG 会有分割边界漂移,先 ffmpeg 转 16kHz WAV
  2. 54 分钟音频不加 VAD 直接跑 FunASR → 需要 43GB 显存 → OOM ,必须开 fsmn-vad
  3. LLM 输出 JSON 要多策略解析( strip code fence → bare JSON → trailing comma ),单一策略会静默丢结果
  4. S3 预签名 URL 不能带 Authorization header ,得用干净 session

开源地址https://github.com/xclgordon/plaud-pipeline

架构文档在 docs/architecture.md,比较详细。

需要 NVIDIA GPU ( pyannote 分割),其他没有特殊依赖。主流程已经和 Plaud 解耦,把录音文件丢进 recordings/ 文件夹就能跑。

欢迎提问和 PR 。