PieBox
文档中心

语音转文字 (ASR)

极速语音识别、录音文件转文字与实时流式识别

极速语音转文字

适合实时语音输入场景,速度最快。

请求:

POST /v2/extend/asr/transcriptions

参数:

参数类型必填说明
modelstring默认 volc.bigasr.auc_turbo,可选 whisper-1
audio_urlstring二选一音频文件 URL
audio_datastring二选一base64 编码的音频数据
enable_itnboolean启用数字/单位标准化
enable_puncboolean启用标点
enable_ddcboolean启用顺滑(去除口语化重复)

示例:

curl https://tokenhub.piegateway.me/v2/extend/asr/transcriptions \
  -H "X-API-Key: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "volc.bigasr.auc_turbo",
    "audio_url": "https://example.com/audio.mp3"
  }'

返回:

{
  "model": "volc.bigasr.auc_turbo",
  "text": "识别出的文字内容",
  "duration_ms": 5000
}

录音文件转文字(异步)

上传完整录音后异步转文字,适合长音频。

参数:

参数类型必填说明
audio_urlstring音频文件 URL
modelstring模型名,默认 volc.bigasr.auc
formatstring音频格式,默认 mp3
languagestring语言代码
enable_itnboolean启用数字/单位标准化
enable_puncboolean启用标点
enable_speaker_infoboolean启用说话人识别
show_utterancesboolean返回分句详情

提交任务:

POST /v2/extend/asr/tasks

示例:

curl https://tokenhub.piegateway.me/v2/extend/asr/tasks \
  -H "X-API-Key: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "audio_url": "https://example.com/long-audio.mp3"
  }'

查询结果:

GET /v2/extend/asr/tasks/{taskId}

示例:

curl https://tokenhub.piegateway.me/v2/extend/asr/tasks/<taskId> \
  -H "X-API-Key: <your-api-key>"

实时流式语音识别(WebSocket)

适用于实时对话、语音输入等低延迟场景。通过 WebSocket 持续推送音频片段,服务端返回实时识别结果。

连接地址:

GET /ws/v2/extend/asr/stream?model=volc.bigasr.sauc

认证方式: 仅支持 HMAC-SHA256 签名认证,参数通过 query params 传递:

wss://tokenhub.piegateway.me/ws/v2/extend/asr/stream?model=volc.bigasr.sauc&X-App-Id=<app_id>&X-Timestamp=<timestamp>&X-Nonce=<nonce>&Authorization=HMAC-SHA256 <signature>

通信协议:

  1. 连接成功后,客户端持续发送音频二进制数据(PCM 16kHz 16bit 单声道)
  2. 服务端实时返回 JSON 格式的识别结果
  3. 发送完毕后,客户端发送文本消息 {"is_last": true} 表示结束

可选 query 参数:

参数类型必填说明
audio_urlstring音频文件 URL
modelstring模型名,默认 volc.bigasr.auc
formatstring音频格式,默认 mp3
languagestring语言代码
enable_itnboolean启用数字/单位标准化
enable_puncboolean启用标点
enable_speaker_infoboolean启用说话人识别
show_utterancesboolean返回分句详情

返回消息格式:

{
  "text": "当前识别结果",
  "is_final": false,
  "utterances": [{"text": "分句1", "definite": true}]
}