跳到主要内容

🌍 多语言翻译 API

1 IC每400字符
✅ 活跃🗣️ NLP🌍 翻译

快速准确地在 28 种语言之间进行翻译,针对长文本高性能进行了优化。支持单次翻译批量翻译

试用演示

🚀 特点

  • 28 种语言: ar, bn, cs, de, en, es, fa, fr, he, hi, id, it, ja, km, ko, lo, ms, my, nl, pl, pt, ru, th, tl, tr, ur, vi, zh

  • 单次和批量端点

  • 无限文本支持 – 自动按句子级别分块

  • 高精度 – 使用 BERTScore 在真实数据集上进行评估

📈 性能基准 (泰语 → 英语)

SCB MT En-TH 2020 数据集的 133,330 个句子对上进行测试。

模式每 100 句平均时间
🧠 批量18.06 秒
🐌 单次30.54 秒

💡 提示: 为了获得最佳性能,请使用批量 API。

🧪 质量 (BERTScore)

预测与参考之间的语义相似度得分(1.0 = 完全匹配)

源 → 目标BERTScore 平均值
EN → MY0.9561
EN → TH0.9506
EN → JA0.9169
JA → EN0.9146
TH → EN0.8728
TH → MY0.8571
ZH → EN0.8571

✅ 所有测试对的得分均**> 0.80**

API 端点

🔹 单次翻译

POST /v1/text/translate
Content-Type: application/x-www-form-urlencoded

参数:

  • text: 要翻译的文本
  • source_lang: 源语言代码 (例如 en)
  • target_lang: 目标语言代码 (例如 th)
  • max_length: (可选) 最大输出 token 数

示例:

curl -X POST "https://api.iapp.co.th/v1/text/translate" \
-H "apikey: YOUR_API_KEY" \
-F "text=Hello" \
-F "source_lang=en" \
-F "target_lang=th"

响应:

{
"translation": "สวัสดี",
"processing_time": 0.056
}

🔹 批量翻译

POST /v1/text/batch_translate
Content-Type: application/json

正文:

[
{
"text": "Hello",
"source_lang": "en",
"target_lang": "fr"
},
{
"text": "こんにちは",
"source_lang": "ja",
"target_lang": "en"
}
]

响应:

{
"results": [
{ "translation": "Bonjour", "index": 0 },
{ "translation": "Hello", "index": 1 }
]
}

🐍 Python 代码示例

import requests

def translate_text(text, source_lang, target_lang, api_key, api_url="https://api.iapp.co.th"):
"""
使用翻译 API 翻译文本

Args:
text (str): 要翻译的文本
source_lang (str): 源语言代码 (例如 'en', 'th', 'zh')
target_lang (str): 目标语言代码 (例如 'en', 'th', 'zh')
api_key (str): 您的 API 密钥
api_url (str): API 的基本 URL

Returns:
dict: 翻译响应
"""
data = {
"text": text,
"source_lang": source_lang,
"target_lang": target_lang
}

headers = {
"apikey": api_key
}

response = requests.post(f"{api_url}/v1/text/translate", data=data, headers=headers)
response.raise_for_status() # 对于 HTTP 错误引发异常
return response.json()

# 用法示例:
# result = translate_text("Hello", "en", "th", api_key="YOUR_API_KEY")
# print(result["translation"])

✅ 此代码使用 application/x-www-form-urlencoded 格式,符合 API 规范。

⚠️ 错误

代码描述
400请求无效
401API 密钥丢失或无效
429请求速率已超出限制
500服务器内部错误
503服务未就绪

✅ 摘要

  • 🏁 28 种语言,快速准确
  • 📄 自动处理长文本
  • 🧪 经证明的高质量翻译
  • 📦 使用批量模式以获得最佳速度

代码示例

Curl

curl -X POST https://api.iapp.co.th/v3/store/nlp/translation/multilingual \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text": "Your text here", "source_lang": "th", "target_lang": "en"}'

Python

import requests
import json

url = "https://api.iapp.co.th/v3/store/nlp/translation/multilingual"
headers = {
"apikey": "YOUR_API_KEY",
"Content-Type": "application/json"
}
data = {"text": "Your text here", "source_lang": "th", "target_lang": "en"}

response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json())

JavaScript

const axios = require("axios");

const config = {
method: "post",
url: "https://api.iapp.co.th/v3/store/nlp/translation/multilingual",
headers: {
apikey: "YOUR_API_KEY",
"Content-Type": "application/json",
},
data: {"text": "Your text here", "source_lang": "th", "target_lang": "en"},
};

axios(config)
.then((response) => console.log(response.data))
.catch((error) => console.log(error));

PHP

<?php
$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.iapp.co.th/v3/store/nlp/translation/multilingual',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => '{"text": "Your text here", "source_lang": "th", "target_lang": "en"}',
CURLOPT_HTTPHEADER => array(
'apikey: YOUR_API_KEY',
'Content-Type: application/json'
),
));

$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>

Swift

import Foundation

let url = URL(string: "https://api.iapp.co.th/v3/store/nlp/translation/multilingual")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.addValue("YOUR_API_KEY", forHTTPHeaderField: "apikey")
request.addValue("application/json", forHTTPHeaderField: "Content-Type")

let jsonData = try! JSONSerialization.data(withJSONObject: {"text": "Your text here", "source_lang": "th", "target_lang": "en"})
request.httpBody = jsonData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let data = data {
print(String(data: data, encoding: .utf8)!)
}
}
task.resume()

Kotlin

import okhttp3.*
import okhttp3.MediaType.Companion.toMediaTypeOrNull
import okhttp3.RequestBody.Companion.toRequestBody

val client = OkHttpClient()

val json = """
{"text": "Your text here", "source_lang": "th", "target_lang": "en"}
""".trimIndent()

val requestBody = json.toRequestBody("application/json".toMediaTypeOrNull())

val request = Request.Builder()
.url("https://api.iapp.co.th/v3/store/nlp/translation/multilingual")
.addHeader("apikey", "YOUR_API_KEY")
.post(requestBody)
.build()

client.newCall(request).execute().use { response ->
println(response.body?.string())
}

Java

import okhttp3.*;

OkHttpClient client = new OkHttpClient();

String json = "{"text": "Your text here", "source_lang": "th", "target_lang": "en"}";

RequestBody body = RequestBody.create(
MediaType.parse("application/json"),
json
);

Request request = new Request.Builder()
.url("https://api.iapp.co.th/v3/store/nlp/translation/multilingual")
.addHeader("apikey", "YOUR_API_KEY")
.post(body)
.build();

try (Response response = client.newCall(request).execute()) {
System.out.println(response.body().string());
}

Dart

import 'package:http/http.dart' as http;
import 'dart:convert';

var headers = {
'apikey': 'YOUR_API_KEY',
'Content-Type': 'application/json'
};

var data = {"text": "Your text here", "source_lang": "th", "target_lang": "en"};

var response = await http.post(
Uri.parse('https://api.iapp.co.th/v3/store/nlp/translation/multilingual'),
headers: headers,
body: jsonEncode(data)
);

print(response.body);