# 语音识别

把音频文件转写为文字，例如用于 Chatbot 的语音输入。

`POST https://api.deepseek.com/v1/tools/asr`

一次请求发送完整音频，返回完整转写文本，不支持流式识别。

***

## 语种

中文（`zh`）、粤语（`yue`）、英语（`en`）、日语（`ja`）、韩语（`ko`）、德语（`de`）、法语（`fr`）、西班牙语（`es`）、葡萄牙语（`pt`）、意大利语（`it`）、俄语（`ru`）、阿拉伯语（`ar`）、印地语（`hi`）、印尼语（`id`）、越南语（`vi`）、泰语（`th`）、土耳其语（`tr`）、马来语（`ms`）、菲律宾语（`fil`）、波兰语（`pl`）、匈牙利语（`hu`）。

没有语种参数，语种根据音频自动识别。

***

## 请求

在 `multipart/form-data` 请求的 `file` 字段中发送音频：

- 格式：16 位 PCM WAV 或 Ogg Opus，由文件内容判断。WAV 支持的采样率为 8000、16000、22050、24000、32000、44100、48000 Hz。
- 声道：单声道或双声道。双声道音频只识别左声道。
- 大小：最大 8 MiB，上传需在 10 分钟内完成。
- 时长：最长 120 秒。

```bash
curl https://api.deepseek.com/v1/tools/asr \
  -H "Authorization: Bearer <DeepSeek API Key>" \
  -F file="@speech.wav"
```

***

## 响应

```json
{
  "request_id": "...",
  "text": "上海今天天气怎么样？",
  "duration_ms": 3200
}
```

| 字段            | 说明         |
| ------------- | ---------- |
| `request_id`  | 请求 ID      |
| `text`        | 转写文本       |
| `duration_ms` | 音频时长，单位为毫秒 |

***

## 错误

| 状态码   | 原因                                         |
| ----- | ------------------------------------------ |
| `400` | 音频不是 16 位 PCM WAV 或 Ogg Opus，或缺少 `file` 字段 |
| `408` | 上传未在 10 分钟内完成                              |
| `413` | 文件大于 8 MiB                                 |
| `429` | 账号同时进行的请求数超过上限                             |
| `503` | 服务繁忙，请稍后重试                                 |
| `504` | 识别超时                                       |

***

<a id="billing"></a>

## 计费

| 计费单位  | 刊例价    | 限时折扣价（5 折） |
| ----- | ------ | ---------- |
| 每小时音频 | 0.78 元 | 0.39 元     |

按音频时长计费，精确到秒，不足 1 秒按 1 秒计。

***

<a id="rate-limits"></a>

## 限速

每个账号最多同时进行 50 个请求，超过返回 `429`。
