> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Localization Translate API 的对接和使用

> Localization translation 集成指南 - Ace Data Cloud

Localization Translate API 的主要功能是通过输入需要翻译的文本来获取翻译后的文本，同时翻译后的语言可以自定义，并且翻译结果可以采用 `json` ， `markdown` 俩种主流的方法来输出。

本文档将详细介绍 Translate API 的对接说明，帮助您轻松集成并充分利用该 API 的强大功能。通过 Translate API ，您可以轻松实现将输入的文本翻译为特定语言，并且支持特定的方式来输出翻译结果。

## 申请流程

要使用 Localization Translate API，首先到 [Ace Data Cloud 控制台](https://platform.acedata.cloud/console/applications) 获取您的 API Token，留作备用。

![](https://cdn.acedata.cloud/5hmkdg.jpg)

如果你尚未登录或注册，会自动跳转到登录页面邀请你注册和登录，完成后会自动返回当前页面。

**一个 API Token 即可调用平台所有服务，无需为每个服务单独申请。** 首次申请会赠送免费额度，可免费体验；额度不足时可在 [控制台](https://platform.acedata.cloud/console/coin) 充值通用余额。

> 📘 完整文档：[Localization Translate API →](https://platform.acedata.cloud/documents/localization-translate)

## 请求示例

我们以一个英文输入为例，演示如何使用该 API。假设英文描述词为：`# Title 1\n\nThis is a paragraph.\n\n## Title 2\n\nThis is another paragraph.`，接下来演示如何上传英文描述词并获取中文的翻译结果，同时以 markdown 的形式展示出来。

### 设置请求头和请求体

**Request Headers** 包括：

* `accept`：指定接收 JSON 格式的响应结果，这里填写为 `application/json`。
* `authorization`：调用 API 的密钥，申请之后可以直接下拉选择。

**Request Body** 包括：

* `input`：上传的所需翻译的文本。
* `locale`：自定义翻译的语言。
* `extension`：自定义翻译结果的展示形式。
* `model`：翻译采用的大模型，默认是 gpt-3.5。

设置如下图所示：

<p>
  <img src="https://cdn.acedata.cloud/d4uqst.png" width="500" className="m-auto" />
</p>

### 代码示例

可以发现，在页面右侧已经自动生成了各种语言的代码，如图所示：

<p>
  <img src="https://cdn.acedata.cloud/tn5nno.png" width="500" className="m-auto" />
</p>

部分代码示例如下：

#### CURL

```bash theme={null}
curl -X POST 'https://api.acedata.cloud/localization/translate' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "input": "# Title 1\n\nThis is a paragraph.\n\n## Title 2\n\nThis is another paragraph.",
  "locale": "zh-CN",
  "extension": "md"
}'
```

#### Python

```python theme={null}
import requests

url = "https://api.acedata.cloud/localization/translate"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "input": "# Title 1\n\nThis is a paragraph.\n\n## Title 2\n\nThis is another paragraph.",
    "locale": "zh-CN",
    "extension": "md"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

### 响应示例

请求成功后，API 将返回此处翻译任务的结果信息。例如：

```json theme={null}
{
  "data": "# 标题 1\n\n这是一个段落。\n\n## 标题 2\n\n这是另一个段落。",
  "usage": {
    "prompt_tokens": 172,
    "completion_tokens": 25
  },
  "model": "gpt-3.5-turbo-16k",
  "locale": "zh-CN"
}
```

可以看到，结果中有一个 `data` 字段，里面包含了翻译后的中文，同时采用了 markdown 的形式返回，其它信息如下所示：

* `data`，此处翻译任务的结果。
* `model`，此处翻译任务采用的大语言模型。
* `locale`，此处翻译任务的翻译语言类型。

## 错误处理

在调用 API 时，如果遇到错误，API 会返回相应的错误代码和信息。例如：

* `400 token_mismatched`：Bad request, possibly due to missing or invalid parameters.
* `400 api_not_implemented`：Bad request, possibly due to missing or invalid parameters.
* `401 invalid_token`：Unauthorized, invalid or missing authorization token.
* `429 too_many_requests`：Too many requests, you have exceeded the rate limit.
* `500 api_error`：Internal server error, something went wrong on the server.

### 错误响应示例

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## 结论

通过本文档，您已经了解了如何使用 Localization Translate API 轻松实现将输入的文本翻译为特定语言，并且支持特定的方式来输出翻译结果。希望本文档能帮助您更好地对接和使用该 API。如有任何问题，请随时联系我们的技术支持团队。
