# sense-voice **Repository Path**: dbfedbf/sense-voice ## Basic Information - **Project Name**: sense-voice - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-10 - **Last Updated**: 2026-03-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SenseVoice 「简体中文」|「[English](./README.md)」|「[日本語](./README_ja.md)」 SenseVoice 是具有音频理解能力的音频基础模型,提供高性能的语音识别功能。本项目专注于提供API和MCP服务,支持通过Docker部署到服务器上。 ## 核心功能 🎯 - **多语言语音识别:** 支持中文、英文、粤语、日语、韩语等多种语言 - **高效推理:** 采用非自回归端到端框架,推理延迟极低 - **API服务:** 提供RESTful API接口,支持单文件和多文件识别 - **Docker部署:** 支持通过docker-compose快速部署到服务器 ## 环境要求 🐍 - Docker - Docker Compose ## 快速开始 🚀 ### Docker部署 ```bash # 启动服务 docker-compose up -d # 停止服务 docker-compose down ``` 服务启动后,可通过以下地址访问: - API服务:`http://localhost:50000` - API文档:`http://localhost:50000/docs` ### 本地启动 ```bash # 激活虚拟环境 source venv/bin/activate # 启动服务 bash start_service.sh ``` ## API接口 📡 ### 健康检查 - **端点**: `/api/v1/health` - **方法**: GET - **响应**: ```json { "status": "healthy", "service": "SenseVoice API" } ``` ### 语音转文字(多文件) - **端点**: `/api/v1/asr` - **方法**: POST - **参数**: - `files`: 音频文件(支持wav或mp3格式) - `language`: 音频语言(auto, zh, en, yue, ja, ko, nospeech) - `keys`: 可选,音频文件名称(逗号分隔) - **响应**: ```json { "results": [ { "key": "file1.wav", "text": "识别结果文本", "filename": "file1.wav" } ] } ``` ### 语音转文字(单文件) - **端点**: `/api/v1/asr/file` - **方法**: POST - **参数**: - `file`: 音频文件(支持wav或mp3格式) - `language`: 音频语言(auto, zh, en, yue, ja, ko, nospeech) - **响应**: ```json { "key": "audio.wav", "text": "识别结果文本" } ``` ## 对接示例 📝 ### Python对接 ```python import requests # 单文件识别 url = "http://localhost:50000/api/v1/asr/file" with open("audio.wav", "rb") as f: files = {"file": f} data = {"language": "auto"} response = requests.post(url, files=files, data=data) print(response.json()) ``` ### cURL对接 ```bash # 单文件识别 curl -X POST "http://localhost:50000/api/v1/asr/file" \ -F "file=@audio.wav" \ -F "language=auto" ``` ## 项目结构 📁 ``` SenseVoice/ ├── api_service.py # API服务实现 ├── mcp_service.py # MCP服务实现 ├── model.py # 模型实现 ├── utils/ # 工具函数 ├── docs/ # API对接文档 │ ├── README.md # 详细API文档 │ └── example.py # Python对接示例 ├── Dockerfile # Docker构建文件 ├── docker-compose.yaml # Docker Compose配置 ├── start_service.sh # 服务启动脚本 └── requirements.txt # 依赖项 ``` ## 环境变量 ⚙️ | 变量名 | 描述 | 默认值 | |--------|------|--------| | SENSEVOICE_DEVICE | 运行设备(cpu/gpu) | cpu | | API_HOST | API服务主机 | 0.0.0.0 | | API_PORT | API服务端口 | 50000 | | MODELSCOPE_CACHE | 模型缓存目录 | /models | ## 常见问题 ❓ ### 支持的音频格式 - WAV格式 - MP3格式 ### 支持的语言 - `auto`: 自动检测语言 - `zh`: 中文 - `en`: 英文 - `yue`: 粤语 - `ja`: 日语 - `ko`: 韩语 - `nospeech`: 无语音 ### 音频文件大小限制 建议音频文件大小不超过50MB,过长的音频可能会导致识别时间较长。 ## 联系我们 📧 如果您在使用中遇到问题,可以直接在项目页面提Issues。 官方技术交流 QQ 群:515965326