- 🎤 实时录音 - 支持持续/定时录音,自动保存
- 🗣️ 语音转文字 - 基于Faster-Whisper(比原版快4-8倍)
- 🧠 AI智能分析 - 本地LLM生成摘要和待办事项
- 📋 结构化输出 - Markdown/JSON格式的会议纪要
- 📅 日历同步 - 可选的Outlook集成(自动创建事件)
双击运行 start.bat# 1. 创建虚拟环境
python -m venv venv
# 2. 激活虚拟环境
venv\Scripts\activate # Windows
source venv/bin/activate # Linux/Mac
# 3. 安装依赖
pip install -r requirements.txt
# 4. 运行程序
python main.pypython main.py然后按提示选择操作即可。
# 录音10分钟(600秒)并自动处理
python main.py --record 600 --title "产品评审会"
# 录音5分钟
python main.py -r 300# 处理单个文件
python main.py --file ./recordings/meeting.wav
# 处理并指定标题
python main.py -f meeting.mp3 -t "周例会"# 处理整个文件夹的所有音频文件
python main.py --batch ./meetings/编辑 config.ini 文件来自定义设置:
SAMPLE_RATE = 16000 # 采样率(16kHz适合Whisper)
CHANNELS = 1 # 单声道
OUTPUT_DIR = ./recordings # 录音保存目录MODEL_NAME = small # 模型大小:tiny/base/small/medium/large-v3
LANGUAGE = zh # 语言:zh=中文, en=英文, None=自动
DEVICE_TYPE = auto # 设备:auto/cuda/cpu
COMPUTE_TYPE = float16 # 精度:float16(快)/int8(省显存)
VAD_FILTER = true # 启用静音过滤模型大小对比:
| 模型 | 大小 | 速度 | 准确率 | 显存需求 |
|---|---|---|---|---|
| tiny | 75MB | ⚡⚡⚡⚡ | ★★☆☆☆ | ~1GB |
| base | 142MB | ⚡⚡⚡ | ★★★☆☆ | ~1GB |
| small | 485MB | ⚡⚡ | ★★★★☆ | ~2GB |
| medium | 1.5GB | ⚡ | ★★★★★ | ~5GB |
| large-v3 | 3GB | 🔵 | ★★★★★ | ~10GB |
MODEL_NAME = microsoft/Phi-3-mini-4k-instruct # 或 Qwen/Qwen1.5-1.8B-Chat
LOAD_IN_4BIT = true # 4-bit量化(节省显存)
MAX_NEW_TOKENS = 1024 # 最大生成长度
TEMPERATURE = 0.7 # 创意性(越高越随机)ENABLED = false # 是否启用
CLIENT_ID = your_azure_app_id
CLIENT_SECRET = your_secret
TENANT_ID = common- CPU: Intel i5 / AMD Ryzen 5 以上
- 内存: 8GB RAM(推荐16GB)
- 硬盘: 5GB可用空间(用于模型存储)
- Python: 3.8+
- 麦克风: USB或内置麦克风
- GPU: NVIDIA GTX 1060 6GB+ / RTX 2060+(支持CUDA)
- 显存: 6GB+ VRAM
- 速度提升: 3-5倍(相比纯CPU)
A: 首次运行需要下载模型:
- Whisper模型: 150MB - 3GB(取决于选择的模型大小)
- LLM模型: 约2-4GB(Phi-3-mini或Qwen)
下载完成后后续启动会很快。
A: 在 config.ini 中调整:
[SpeechToText]
MODEL_NAME = small # 使用更小的模型
COMPUTE_TYPE = int8 # 使用int8精度
[LLM]
LOAD_IN_4BIT = true # 启用4-bit量化
MODEL_NAME = Qwen/Qwen1.5-1.8B-Chat # 使用更小的LLMA:
- 确保使用
small或更大的模型 - 设置
LANGUAGE = zh - 录音时保持安静环境
- 使用质量较好的麦克风
A:
- 访问 Azure Portal
- 注册应用 → 获取Client ID和Secret
- 配置重定向URL:
https://login.microsoftonline.com/common/oauth2/nativeclient - 填写到
config.ini的[Calendar]部分
A: 支持 WAV, MP3, M4A, FLAC, OGG 等主流格式。
Ai互动模块/
├── main.py # 主程序入口
├── config.py # 配置管理器
├── config.ini # 配置文件
├── audio_recorder.py # 语音采集模块
├── speech_to_text.py # 语音转文字模块
├── meeting_processor.py # AI分析模块
├── calendar_sync.py # 日历同步模块
├── requirements.txt # 依赖列表
├── start.bat # Windows快速启动脚本
├── recordings/ # 录音文件目录
├── output/ # 输出结果目录
└── tokens/ # OAuth认证缓存
1. 启动程序
↓
2. 选择"开始录音" 或 "处理音频文件"
↓
3. (如果录音)等待录音完成
↓
4. 自动进行语音转文字(显示进度)
↓
5. AI自动分析并生成:
- 会议摘要
- 关键要点
- 待办事项列表
- 决策记录
↓
6. 保存为 Markdown 和 JSON 文件
↓
7. (可选)同步待办到Outlook日历
生成的会议纪要示例:
# 📋 会议纪要
**日期**: 2024-01-15 14:30
**主题**: 产品迭代讨论
## 📝 会议摘要
本次会议主要讨论了App性能优化方案。团队决定优先解决启动速度问题,
由李四负责性能分析,张三负责用户反馈收集...
## 💡 关键要点
- 用户反馈App启动时间超过5秒
- 性能瓶颈可能在网络请求初始化阶段
- 下个版本发布日期定在月底
## ✅ 决策记录
- 采用渐进式加载策略
- 暂不引入新的第三方库
## 📌 待办事项
- [ ] 🔴 **完成性能分析报告** - @李四 (截止: 2024-01-20)
- [ ] 🟡 **收集用户反馈数据** - @张三 (截止: 2024-01-22)
- [ ] 🟢 **制定优化方案** - @王五 (截止: 2024-01-25)# 测试麦克风
python audio_recorder.py
# 测试语音转文字
python speech_to_text.py
# 测试AI分析
python meeting_processor.py
# 测试日历同步
python calendar_sync.py在 meeting_processor.py 的 PROMPT_TEMPLATES 字典中修改提示词模板。
MIT License
欢迎提交Issue和Pull Request!
享受高效的会议记录体验! 🎉