Add comprehensive README with setup guide and usage documentation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Misaka_Company
2026-05-27 18:14:48 +08:00
parent d9e5e27d7b
commit 4ad7a8d433

102
README.md
View File

@@ -1,3 +1,103 @@
# AudioScribe
基于大模型 API 的录音转文字工具
基于火山引擎大模型录音文件识别 API 的录音转文字工具,支持说话人聚类分离。
## 功能特性
- 调用火山引擎大模型 ASR API 进行语音转写
- 支持说话人聚类分离(自动识别不同说话人)
- 自动生成 Markdown 格式的转写文档(按时间线排列,标注说话人)
- 同时输出原始 JSON 数据
- 支持 mp3、m4a 等常见音频格式
## 项目结构
```
AudioScribe/
├── transcribe_legacy.py # 主脚本APP ID + Access Token 认证)
├── transcribe_all.py # 备用脚本API Key 认证)
├── requirements.txt # Python 依赖
├── .env # 环境变量配置(需自行创建)
├── tools/ # 工具ffmpeg 等)
├── docs/ # API 文档
└── output/ # 转写结果输出目录
```
## 快速开始
### 1. 安装依赖
```bash
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # Linux/macOS
pip install -r requirements.txt
```
### 2. 配置环境变量
在项目根目录创建 `.env` 文件:
```env
# 火山引擎 API 配置(旧版控制台 - APP ID + Access Token
X_API_APP_KEY=你的APP_ID
X_API_ACCESS_KEY=你的Access_Token
X_API_RESOURCE_ID=volc.seedasr.auc
# S3 兼容对象存储配置(用于上传音频文件)
S3_ENDPOINT=https://your-s3-endpoint
S3_ACCESS_KEY_ID=your_access_key
S3_SECRET_ACCESS_KEY=your_secret_key
S3_BUCKET=audioscribe
```
`X_API_RESOURCE_ID` 可选值:
- `volc.bigasr.auc` — 大模型 ASR 1.0
- `volc.seedasr.auc` — 大模型 ASR 2.0(推荐,需旧版控制台认证)
### 3. 运行转写
```bash
python transcribe_legacy.py "音频文件.mp3"
```
输出文件将保存到 `output/` 目录:
- `{音频名}_转写结果.json` — 原始 API 返回数据
- `{音频名}_转写结果.md` — Markdown 格式转写文档
## 两个脚本的区别
| | `transcribe_legacy.py` | `transcribe_all.py` |
|---|---|---|
| 认证方式 | APP ID + Access Token旧版控制台 | API Key新版控制台 |
| 对象存储 | S3 兼容boto3 | MinIO |
| 支持模型 | bigasr / seedasr | 仅 bigasr |
| 输出目录 | `output/` | 项目根目录 |
## 输出格式示例
Markdown 文档按时间线排列,标注说话人:
```markdown
# 转写结果
**源文件**: 示例.mp3
**音频时长**: 09:04.61
**说话人数量**: 5 人
**分句数量**: 183
---
## 按时间线
- **00:00.54 - 00:01.54** **说话人1** 已经检验了啊。
- **00:02.46 - 00:03.38** **说话人2** 来,你大概说一下嘛。
- **00:04.38 - 00:11.34** **说话人3** 就是计时从比如说我们是5点钟下班儿……
```
## 依赖
- Python 3.8+
- requests
- python-dotenv
- boto3