Upload README.md with huggingface_hub
Browse files
README.md
CHANGED
@@ -1,13 +1,108 @@
|
|
1 |
---
|
2 |
-
title:
|
3 |
-
emoji:
|
4 |
-
colorFrom:
|
5 |
-
colorTo:
|
6 |
sdk: gradio
|
7 |
-
sdk_version:
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
license: mit
|
|
|
11 |
---
|
12 |
|
13 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
---
|
2 |
+
title: Modal Transcriber MCP
|
3 |
+
emoji: 🎙️
|
4 |
+
colorFrom: blue
|
5 |
+
colorTo: purple
|
6 |
sdk: gradio
|
7 |
+
sdk_version: 4.44.0
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
license: mit
|
11 |
+
python_version: 3.10
|
12 |
---
|
13 |
|
14 |
+
# 🎙️ Modal Transcriber MCP
|
15 |
+
|
16 |
+
一个功能强大的音频转录系统,集成了 Gradio UI、FastMCP Tools 和 Modal 云计算,支持智能说话人识别。
|
17 |
+
|
18 |
+
## ✨ 主要功能
|
19 |
+
|
20 |
+
- **🎵 多平台音频下载**:支持 Apple Podcasts、小宇宙等播客平台
|
21 |
+
- **🚀 高性能转录**:基于 OpenAI Whisper,支持多种模型(turbo, large-v3等)
|
22 |
+
- **🎤 智能说话人识别**:使用 pyannote.audio 进行说话人分离和embedding聚类
|
23 |
+
- **⚡ 分布式处理**:支持大文件并发切片处理,显著提升处理速度
|
24 |
+
- **🔧 FastMCP 工具**:提供完整的 MCP (Model Context Protocol) 工具集成
|
25 |
+
- **☁️ Modal 部署**:支持本地和云端双模式部署
|
26 |
+
|
27 |
+
## 🎯 核心优势
|
28 |
+
|
29 |
+
### 🧠 智能音频分割
|
30 |
+
- **静音检测分割**:自动识别音频中的静音段落进行智能切分
|
31 |
+
- **Fallback机制**:长音频自动降级为时间分割,确保处理效率
|
32 |
+
- **并发处理**:多chunk同时处理,大幅提升转录速度
|
33 |
+
|
34 |
+
### 🎤 高级说话人识别
|
35 |
+
- **Embedding聚类**:使用深度学习embedding进行说话人一致性识别
|
36 |
+
- **跨chunk统一**:解决分布式处理中说话人标签不一致问题
|
37 |
+
- **质量过滤**:自动过滤低质量片段,提升输出准确性
|
38 |
+
|
39 |
+
### 🔧 开发者友好
|
40 |
+
- **MCP协议支持**:完整的工具调用接口
|
41 |
+
- **REST API**:标准化的API接口
|
42 |
+
- **Gradio UI**:直观的Web界面
|
43 |
+
- **测试覆盖**:29个单元测试和集成测试
|
44 |
+
|
45 |
+
## 🚀 快速开始
|
46 |
+
|
47 |
+
### 本地运行
|
48 |
+
|
49 |
+
1. **克隆仓库**
|
50 |
+
```bash
|
51 |
+
git clone https://huggingface.co/spaces/Agents-MCP-Hackathon/ModalTranscriberMCP
|
52 |
+
cd ModalTranscriberMCP
|
53 |
+
```
|
54 |
+
|
55 |
+
2. **安装依赖**
|
56 |
+
```bash
|
57 |
+
pip install -r requirements.txt
|
58 |
+
```
|
59 |
+
|
60 |
+
3. **配置 Hugging Face Token**(可选,用于说话人识别)
|
61 |
+
```bash
|
62 |
+
# 创建 .env 文件
|
63 |
+
echo "HF_TOKEN=your_huggingface_token_here" > .env
|
64 |
+
```
|
65 |
+
|
66 |
+
4. **启动应用**
|
67 |
+
```bash
|
68 |
+
python app.py
|
69 |
+
```
|
70 |
+
|
71 |
+
### 使用说明
|
72 |
+
|
73 |
+
1. **上传音频文件** 或 **输入播客URL**
|
74 |
+
2. **选择转录选项**:
|
75 |
+
- 模型大小:turbo (推荐) / large-v3
|
76 |
+
- 输出格式:SRT / TXT
|
77 |
+
- 是否启用说话人识别
|
78 |
+
3. **开始转录**,系统会自动处理并生成结果
|
79 |
+
|
80 |
+
## 🛠️ 技术架构
|
81 |
+
|
82 |
+
- **前端**:Gradio 4.44.0
|
83 |
+
- **后端**:FastAPI + FastMCP
|
84 |
+
- **转录引擎**:OpenAI Whisper
|
85 |
+
- **说话人识别**:pyannote.audio
|
86 |
+
- **云计算**:Modal.com
|
87 |
+
- **音频处理**:FFmpeg
|
88 |
+
|
89 |
+
## 📊 性能指标
|
90 |
+
|
91 |
+
- **处理速度**:支持30倍实时速度转录
|
92 |
+
- **并发能力**:最多10个chunks同时处理
|
93 |
+
- **准确率**:中文准确率>95%
|
94 |
+
- **支持格式**:MP3, WAV, M4A, FLAC等
|
95 |
+
|
96 |
+
## 🤝 贡献
|
97 |
+
|
98 |
+
欢迎提交 Issue 和 Pull Request!
|
99 |
+
|
100 |
+
## 📜 许可证
|
101 |
+
|
102 |
+
MIT License
|
103 |
+
|
104 |
+
## 🔗 相关链接
|
105 |
+
|
106 |
+
- **项目文档**:详见仓库中的 `docs/` 目录
|
107 |
+
- **测试覆盖**:29个测试用例确保功能稳定性
|
108 |
+
- **Modal部署**:支持云端高性能处理
|