基于 HTTP 协议的语音识别服务。
| 模型 | 定位 | 特色 | 适用场景 |
|---|---|---|---|
sense-asr-lite | 极速版 | 毫秒级响应、30+ 语言、热词增强 | 低成本批量转写 |
sense-asr | 标准版 | 功能全面、性价比高 | 通用转写、视频字幕 |
sense-asr-pro | 专业版 | 高精度、复杂环境优化 | 会议记录、访谈、司法庭审 |
sense-asr-deepthink | 深度版 | 智能纠错、方言/术语增强 | 语音输入法 |
| 能力 | sense-asr-lite | sense-asr | sense-asr-pro | sense-asr-deepthink |
|---|---|---|---|---|
| 基础识别 | ✅ | ✅ | ✅ | ✅ |
| 流式返回 | ❌ | ✅ | ✅ | ✅ |
| 说话人分离 | ❌ | ✅ | ✅ | ❌ |
| 情感分析 | ❌ | ✅ | ✅ | ❌ |
| 字级时间戳 | ❌ | ✅ | ✅ | ❌ |
| 句级时间戳 | ❌ | ✅ | ✅ | ❌ |
| 翻译 | ❌ | ✅ | ✅ | ✅ |
| 热词增强 | ✅ | ❌ | ❌ | ❌ |
| ITN(逆文本规范化) | ✅ | ✅ | ✅ | ❌ |
| 智能编辑收敛 | ❌ | ❌ | ❌ | ✅ |
| 多语言支持 | ✅ | ✅ | ✅ | ✅ |
流式返回 只支持音频内容的输出,不支持结构化信息返回
| 参数 | 类型 | 说明 |
|---|---|---|
file | file | 音频文件(wav/mp3/ogg/flac/aac/m4a/mp4 等),≤10MB |
model | string | sense-asr-lite / sense-asr / sense-asr-pro / sense-asr-deepthink |
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
language | string | - | 语言代码(ISO-639-3),如 zh/en/ja, 不设置会自动检测 |
response_format | string | json | json / text / verbose_json |
stream | boolean | false | 流式返回(lite 不支持) |
enable_itn | boolean | true | 逆文本规范化(deepthink 不支持) |
enable_punctuation | boolean | false | 自动标点(deepthink 不支持,仅 asr/pro) |
enable_speaker_diarization | boolean | false | 说话人分离(仅 asr/pro) |
max_speakers | integer | - | 最大说话人数 1-20(配合说话人分离,仅asr-pro支持) |
enable_sentiment | boolean | false | 情感分析(仅 asr/pro) |
timestamp_granularities[] | array | - | word=字级 / segment=句级(仅 asr/pro) |
target_language | string | - | 翻译目标语言代码(lite 不支持) |
hotwords | string | - | 热词增强,逗号分隔(仅 lite) |
recognize_mode | string | auto | auto/record_only(仅 deepthink 流式模式) |
audio/transcriptions 接口中有两个与语言相关的参数:
| 参数 | 作用 | 说明 |
|---|---|---|
language | 指定音频文件内容的语言,增强识别效果 | 可选,留空则自动检测 |
target_language | 将音频中识别的内容翻译成另外一种语言 | 可选,留空则不翻译,仅返回识别的原文 |
不同模型支持的参数不同:
| 模型 | language | target_language |
|---|---|---|
sense-asr-lite | ✅ | ❌ |
sense-asr | ✅ | ✅ |
sense-asr-pro | ✅ | ✅ |
sense-asr-deepthink | ❌ | ✅ |
重要
sense-asr-deepthink不支持language参数,仅支持target_language用于翻译输出
language 支持语种:
| 代码 | 语言 | 代码 | 语言 | 代码 | 语言 |
|---|---|---|---|---|---|
zh | 中文 | en | 英文 | yue | 粤语 |
ja | 日文 | ko | 韩文 | vi | 越南语 |
id | 印尼语 | th | 泰语 | ms | 马来语 |
tl/fil | 菲律宾语 | ar | 阿拉伯语 | hi | 印地语 |
bg | 保加利亚语 | hr | 克罗地亚语 | cs | 捷克语 |
da | 丹麦语 | nl | 荷兰语 | et | 爱沙尼亚语 |
fi | 芬兰语 | el | 希腊语 | hu | 匈牙利语 |
ga | 爱尔兰语 | lv | 拉脱维亚语 | lt | 立陶宛语 |
mt | 马耳他语 | pl | 波兰语 | pt | 葡萄牙语 |
ro | 罗马尼亚语 | sk | 斯洛伐克语 | sl | 斯洛文尼亚语 |
sv | 瑞典语 |
language 支持语种:
| 代码 | 语言 | 代码 | 语言 | 代码 | 语言 |
|---|---|---|---|---|---|
ar | 阿拉伯语 | yue | 粤语 | zh | 中文 |
nl | 荷兰语 | en | 英文 | fr | 法语 |
de | 德语 | id | 印尼语 | it | 意大利语 |
ja | 日文 | ko | 韩文 | ms | 马来语 |
pt | 葡萄牙语 | ru | 俄语 | es | 西班牙语 |
th | 泰语 | tr | 土耳其语 | ur | 乌尔都语 |
vi | 越南语 |
target_language 支持语种:
与 language 相同(见上表)
target_language 支持语种:
| 代码 | 语言 | 代码 | 语言 | 代码 | 语言 |
|---|---|---|---|---|---|
ar | 阿拉伯语 | yue | 粤语 | zh | 中文 |
nl | 荷兰语 | en | 英文 | fr | 法语 |
de | 德语 | id | 印尼语 | it | 意大利语 |
ja | 日文 | ko | 韩文 | ms | 马来语 |
pt | 葡萄牙语 | ru | 俄语 | es | 西班牙语 |
th | 泰语 | tr | 土耳其语 | ur | 乌尔都语 |
vi | 越南语 |
[!WARNING]
sense-asr-deepthink不支持language参数,仅支持target_language用于翻译输出
{ "text": "识别出的文本内容" }纯文本,Content-Type: text/plain
识别出的文本内容{
"text": "道可道非常道",
"duration": 2.1,
"audio_info": { "duration": 5230, "format": "wav" },
"segments": [
{
"id": 0,
"start": 0.0,
"end": 2.0,
"text": "道可道非常道",
"speaker": "speaker_0",
"sentiment": "positive",
"translation": "Translated"
}
],
"words": [
{ "word": "道", "start": 0.27, "end": 0.51 },
{ "word": "可", "start": 0.57, "end": 0.81 },
{ "word": "道", "start": 0.83, "end": 1.07 },
{ "word": "非", "start": 1.21, "end": 1.45 },
{ "word": "常", "start": 1.63, "end": 1.87 },
{ "word": "道", "start": 1.87, "end": 2.0 }
]
}字段说明:
speaker: 需开启 enable_speaker_diarizationsentiment: 需开启 enable_sentimenttranslation: 需设置 target_languagewords: 需设置 timestamp_granularities[]=wordsegment: 需设置 timestamp_granularities[]=segmentContent-Type: text/event-stream
data: {"delta": {"text": "增量文本"}, "finish_reason": null}
data: {"delta": {"text": "。"}, "finish_reason": "stop", "audio_info": {...}}
data: [DONE]| 字段 | 说明 |
|---|---|
delta.text | 本次返回的增量文本 |
finish_reason | null(进行中) / stop(完成) / error(错误) |
{
"code": "invalid",
"message": "file is required"
}| HTTP | code | 说明 |
|---|---|---|
| 400 | invalid | 参数错误 |
| 429 | rate_limit_error | 请求频率过高 |
| 500 | internal_error | 服务端错误 |
轻量级模型,适合简单快速的语音识别场景。
curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@audio.mp3" \
-F model="sense-asr-lite"返回示例:(JSON)
{
"text": "今天天气不错适合出去走走"
}curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@audio.wav" \
-F model="sense-asr-lite" \
-F language="zh" \
-F response_format="text"返回示例:(Text)
今天天气不错适合出去走走curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@meeting.wav" \
-F model="sense-asr-lite" \
-F language="zh" \
-F response_format="json" \
-F hotwords="张三,李四,项目Alpha,季度复盘"返回示例:
{
"text": "张三和李四负责项目Alpha的季度复盘工作"
}curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@audio.wav" \
-F model="sense-asr-lite" \
-F response_format="verbose_json"返回示例:(Verbose JSON)
{
"duration": 14640,
"segments": null,
"words": null,
"text": "道可道非常道名可名非常名无名天地之始有名万物之母故常无欲以观其妙常有欲以观其皎"
}标准模型,支持大多数高级功能。
curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@audio.mp3" \
-F model="sense-asr"返回示例:
{
"text": "欢迎使用我们的语音识别服务,希望能为您提供帮助。"
}curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@audio.wav" \
-F model="sense-asr" \
-F stream="true" \
--no-buffer返回示例:(SSE)
data: {"type":"transcript.text.delta","delta":"今天"}
data: {"type":"transcript.text.delta","delta":"天气"}
data: {"type":"transcript.text.delta","delta":"不错"}
data: {"type":"transcript.text.delta","delta":","}
data: {"type":"transcript.text.delta","delta":"适合"}
data: {"type":"transcript.text.delta","delta":"出去"}
data: {"type":"transcript.text.delta","delta":"走"}
data: {"type":"transcript.text.delta","delta":"走"}
data: {"type":"transcript.text.delta","delta":"。"}
data: {"type":"transcript.text.done","text":"今天天气不错,适合出去走走。"}
data: [DONE]curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@interview.wav" \
-F model="sense-asr" \
-F response_format="verbose_json" \
-F enable_speaker_diarization="true" \
-F max_speakers="2" \
-F timestamp_granularities="word" \
-F enable_sentiment="true"返回示例:
{
"task": "transcribe",
"duration": 4.153,
"segments": [
{
"id": 0,
"start": 0.93,
"end": 3.37,
"text": "今天天气不错,适合出去走走。",
"speaker": "speaker_0",
"sentiment": "Happy"
}
],
"words": [
{ "word": "今", "start": 0.93, "end": 1.09 },
{ "word": "天", "start": 1.09, "end": 1.25 },
{ "word": "天", "start": 1.25, "end": 1.37 },
{ "word": "气", "start": 1.37, "end": 1.57 },
{ "word": "不", "start": 1.57, "end": 1.65 },
{ "word": "错", "start": 1.65, "end": 1.89 },
{ "word": "适", "start": 1.89, "end": 2.13 },
{ "word": "合", "start": 2.71, "end": 2.87 },
{ "word": "出", "start": 2.87, "end": 2.93 },
{ "word": "去", "start": 2.93, "end": 3.11 },
{ "word": "走", "start": 3.11, "end": 3.21 },
{ "word": "走", "start": 3.21, "end": 3.37 }
],
"text": "今天天气不错,适合出去走走。",
"audio_info": {
"duration": 4153,
"format": "audio"
}
}curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@chinese.wav" \
-F model="sense-asr" \
-F response_format="verbose_json" \
-F target_language="en"返回示例:
{
"task": "transcribe",
"duration": 4.153,
"segments": null,
"words": null,
"text": "The weather is nice today, suitable for going out for a walk.",
"audio_info": {
"duration": 4153,
"format": "audio"
}
}专业版模型,识别精度更高,适合对质量要求较高的场景。
curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@audio.mp3" \
-F model="sense-asr-pro"返回示例:
{
"text": "第三季度的销售额达到了预期目标的115%,超额完成任务。"
}curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@meeting.wav" \
-F model="sense-asr-pro" \
-F response_format="verbose_json" \
-F enable_speaker_diarization="true" \
-F max_speakers="4" \
-F enable_sentiment="true" \
-F "timestamp_granularities[]=word" \
-F "timestamp_granularities[]=segment" \
-F target_language="en"返回示例:
{
"task": "transcribe",
"duration": 4.153,
"segments": [
{
"id": 0,
"start": 0.95,
"end": 3.37,
"text": "今天天气不错,适合出去走走。",
"speaker": "speaker_0",
"sentiment": "Happy",
"translation": "Today's weather is nice, suitable for going out for a walk."
}
],
"words": [
{ "word": "今", "start": 0.93, "end": 1.09 },
{ "word": "天", "start": 1.09, "end": 1.25 },
{ "word": "天", "start": 1.25, "end": 1.37 },
{ "word": "气", "start": 1.37, "end": 1.57 },
{ "word": "不", "start": 1.57, "end": 1.65 },
{ "word": "错", "start": 1.65, "end": 1.89 },
{ "word": "适", "start": 1.89, "end": 2.13 },
{ "word": "合", "start": 2.71, "end": 2.87 },
{ "word": "出", "start": 2.87, "end": 2.93 },
{ "word": "去", "start": 2.93, "end": 3.11 },
{ "word": "走", "start": 3.11, "end": 3.21 },
{ "word": "走", "start": 3.21, "end": 3.37 }
],
"text": "Today's weather is nice, suitable for going out for a walk.",
"audio_info": {
"duration": 4153,
"format": "audio"
}
}语音转写模型,整理口语化的语音输入。
curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@complex_audio.mp3" \
-F model="sense-asr-deepthink"返回示例:
{
"text": "量子计算利用量子力学原理如叠加态和纠缠态来处理信息比传统计算机在某些特定问题上具有指数级的速度优势"
}curl https://api.senseaudio.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $API_KEY" \
-F file="@complex_audio.mp3" \
-F model="sense-asr-deepthink" \
-F target_language="en"返回示例:
{
"text": "The weather is nice today, suitable for going out for a walk."
}