跳转到主要内容

产品简介

本接口提供基于 HTTP + SSE 的识别能力,适合一次性提交音频数据,并通过服务端持续推送识别结果。

核心特性

  • 一次性提交音频
  • 通过 SSE 持续返回转录结果
  • 支持增量结果和最终结果
  • 适合服务端调用、文件转写、准实时处理

接入方式总览

能力HTTP + SSE
音频输入一次性提交
结果返回SSE 流式
连接方式HTTP POST
是否保持会话
典型端服务端

服务地址

协议环境地址说明
HTTP/SSE正式环境https://api.stepfun.com/v1/audio/asr/sse单向流式响应
Step Plan 场景请使用 POST https://api.stepfun.com/step_plan/v1/audio/asr/sse

HTTP 协议接口

时序图

鉴权参数

参数名必填描述示例
Content-Type固定为 application/jsonapplication/json
Accept固定为 text/event-streamtext/event-stream
Authorization认证令牌Bearer sk-xxxx

请求格式

请求示例:
{
  "audio": {
    "data": "audioData",
    "input": {
      "transcription": {
        "language": "zh",
        "hotwords": ["热词1", "热词2"],
        "prompt": "请记录下你所听到的语音内容。",
        "model": "stepaudio-2.5-asr",
        "enable_itn": true
      },
      "format": {
        "type": "pcm",
        "codec": "pcm_s16le",
        "rate": 16000,
        "bits": 16,
        "channel": 1
      }
    }
  }
}

参数说明

参数路径类型描述示例
audio.datastringBase64 编码的音频数据"audioData"
audio.input.transcription.languagestring识别语言"zh"
audio.input.transcription.hotwordsarray热词列表,形如 ["热词1", "热词2"]["热词1", "热词2"]
audio.input.transcription.promptstring提示词,用于补充上下文或专业术语(仅对 stepaudio-2-asr-pro 有效)"请记录..."
audio.input.transcription.modelstring模型名称,支持 stepaudio-2.5-asrstepaudio-2-asr-pro"stepaudio-2.5-asr"
audio.input.transcription.enable_itnbool是否开启 ITN 文本规范化,默认 truetrue
audio.input.format.typestring音频容器格式,支持 oggmp3wavpcm"pcm"
audio.input.format.codecstring编码格式;当 type=pcm 时通常传 pcm_s16le"pcm_s16le"
audio.input.format.rateint采样率;pcm 格式必填,其他格式选填16000
audio.input.format.bitsint位深;pcm 格式必填,其他格式选填16
audio.input.format.channelint通道数;pcm 格式必填,其他格式选填1
兼容性说明
  • 为兼容老用户,SSE 仍接受 step-asr-1.1-stream 作为 model 值传入,等同 stepaudio-2.5-asr
  • SSE 不再支持 full_rerun_on_commit(二遍识别纠错)参数,历史代码中如仍有传入,将被服务端忽略、不影响识别结果。如需二遍识别能力,请使用 WebSocket 接入(见 流式语音识别(双向流式))。
补充说明:
  • 音频数据需要使用 Base64 编码。
  • 支持的音频格式包括 oggmp3wavpcm
  • 当音频格式为 pcm 时,ratebitschannel 为必填参数。
  • 当音频格式为 oggmp3wav 时,ratebitschannel 为选填参数。

响应格式

SSE 流式响应,包含以下事件类型:

Delta 事件 (transcript.text.delta)

表示增量转录文本。
{
  "type": "transcript.text.delta",
  "meta": {
    "session_id": "sse_1642694400123456789",
    "timestamp": 1642694400123
  },
  "delta": "识别的"
}
字段类型描述
typestring事件类型,固定为 transcript.text.delta
meta.session_idstring会话 ID
meta.timestampint64Unix 时间戳,毫秒
deltastring增量转录文本

Done 事件 (transcript.text.done)

表示完整转录文本已经生成。
{
  "type": "transcript.text.done",
  "meta": {
    "session_id": "sse_1642694400123456789",
    "timestamp": 1642694400456
  },
  "text": "识别的完整文字内容",
  "usage": {
    "type": "realtime_asr",
    "input_tokens": 1000,
    "input_token_details": {
      "text_tokens": 0,
      "audio_tokens": 1000
    },
    "output_tokens": 50,
    "total_tokens": 1050
  }
}
字段类型描述
typestring事件类型,固定为 transcript.text.done
meta.session_idstring会话 ID
meta.timestampint64Unix 时间戳,毫秒
textstring完整转录文本
usageobject使用统计信息

错误事件 (error)

表示识别过程出错。
{
  "type": "error",
  "meta": {
    "session_id": "sse_1642694400123456789",
    "timestamp": 1642694400789
  },
  "message": "错误描述信息"
}
字段类型描述
typestring事件类型,固定为 error
meta.session_idstring会话 ID
meta.timestampint64Unix 时间戳,毫秒
messagestring错误描述信息