AI 翻译 API 使用完全指南(第1篇)
概述
AI 翻译 API 是近年来大模型最重要的应用场景之一。相比传统统计机器翻译(SMT),基于 Transformer 架构的神经机器翻译(NMT)大幅提升了翻译质量。本文介绍国内外主流翻译 API 的接入方法,并给出 PHP 实战代码。
主流翻译 API 介绍
OpenAI Translation API
OpenAI 通过 ChatGPT API 提供翻译能力,支持 50+ 语言,翻译质量高,成本按 token 计费。
定价:$0.0015~0.12 / 1K tokens(取决于模型)
优点:翻译自然流畅,支持上下文理解
缺点:需要 OpenAI 账户,国内访问不稳定
Google Cloud Translation
Google Translation API v3 是成熟的商业翻译服务,支持 130+ 语言,延迟低。
定价:$20 / 1M 字符(标准版)
优点:语言覆盖广,稳定性好
缺点:需要 GCP 账户,按字符计费
百度翻译开放平台
百度翻译 API 对中文支持极佳,支持 200+ 语言互译,有免费额度。
定价:每月 200 万字符免费,超出后 ¥48/百万字符
优点:中文优化,免费额度良心,国内访问稳定
缺点:英文到其他小语种质量一般
腾讯云机器翻译(TMT)
腾讯云提供的翻译服务,价格有竞争力,和微信/企业微信生态集成方便。
定价:首月免费,¥50/月起
优点:国内稳定,和腾讯云其他产品联动方便
缺点:文档质量参差不齐
快速入门:百度翻译 API
以百度翻译为例,演示如何用 PHP 快速接入。
第一步:获取 API 密钥
1. 访问百度翻译开放平台
2. 注册账号并完成实名认证
3. 创建应用,获取 appid 和 密钥
第二步:发送翻译请求
<?php
/**
* 百度翻译 API 调用示例
*/
function baidu_translate($query, $from = 'auto', $to = 'en') {
$appid = 'YOUR_APP_ID'; // 替换为你的 appid
$secret = 'YOUR_SECRET_KEY'; // 替换为你的密钥
$salt = time();
$sign = md5($appid . $query . $salt . $secret);
$url = 'https://fanyi-api.baidu.com/api/trans/vip/translate';
$data = [
'q' => $query,
'from' => $from,
'to' => $to,
'appid' => $appid,
'salt' => $salt,
'sign' => $sign,
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if (isset($result['trans_result'][0]['dst'])) {
return $result['trans_result'][0]['dst'];
}
return $result['error_msg'] ?? '翻译失败';
}
// 示例
echo baidu_translate('你好世界', 'zh', 'en');
// 输出: Hello World
第三步:错误处理
百度翻译 API 常见错误码:
| 错误码 | 含义 | 解决方案 |
|--------|------|----------|
| 52001 | 请求超时 | 增加 CURLOPT_TIMEOUT |
| 52002 | 系统错误 | 重试,间隔 1 秒 |
| 52003 | 账户认证失败 | 检查 appid 和密钥 |
| 54003 | 访问频率超限 | 降低请求频率 |
| 54005 | 请求过于频繁 | 增加 salt 或加限流 |
function safe_translate($query, $from = 'auto', $to = 'en') {
$max_retries = 3;
for ($i = 0; $i < $max_retries; $i++) {
$result = baidu_translate($query, $from, $to);
if (!is_numeric($result)) {
return $result;
}
usleep(500000); // 失败后等0.5秒重试
}
return '翻译服务暂时不可用';
}
OpenAI GPT 翻译:质量优先方案
当需要翻译质量更高(如论文、专业文档),推荐用 OpenAI GPT-4o:
<?php
/**
* OpenAI GPT 翻译示例
*/
function gpt_translate($text, $target_lang = 'English') {
$api_key = 'YOUR_OPENAI_API_KEY'; // 替换为你的密钥
$prompt = "Translate the following text to {$target_lang}. Only output the translation, no explanations:\n\n" . $text;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.openai.com/v1/chat/completions');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'Authorization: Bearer ' . $api_key,
]);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'model' => 'gpt-4o',
'messages' => [
['role' => 'user', 'content' => $prompt]
],
'temperature' => 0.3, // 低随机性保证翻译一致性
'max_tokens' => 2000,
]));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
return $data['choices'][0]['message']['content'] ?? '翻译失败';
}
// 示例
echo gpt_translate('机器学习是人工智能的一个分支', 'Japanese');
技巧:设置 temperature 为 0.3 以下,可以保证同一段文字多次翻译结果一致,适合批量处理场景。
批量翻译优化
处理长文本或批量翻译时,注意以下优化点:
1. 文本分段
大多数翻译 API 有单次请求字符限制(如百度 6000 字符),超长文本需要分段:
function split_text($text, $max_len = 5000) {
$paragraphs = explode("\n", $text);
$chunks = [];
$current = '';
foreach ($paragraphs as $p) {
if (strlen($current) + strlen($p) > $max_len) {
if ($current) $chunks[] = $current;
$current = $p;
} else {
$current .= "\n" . $p;
}
}
if ($current) $chunks[] = $current;
return $chunks;
}
2. 限流控制
不要超出 API 的 QPS(每秒请求数)限制:
function rate_limited_translate($items, $qps = 10) {
$delay = 1 / $qps; // 每秒10次 = 每次间隔0.1秒
$results = [];
foreach ($items as $item) {
$results[] = baidu_translate($item);
usleep((int)($delay * 1000000));
}
return $results;
}
总结
本文介绍了四种主流 AI 翻译 API 的接入方法:
- <strong>百度翻译</strong>:国内首选,免费额度充足,接入简单
- <strong>Google Translate</strong>:语言覆盖最广,适合国际化应用
- <strong>OpenAI GPT</strong>:翻译质量最高,适合对质量要求高的场景
- <strong>腾讯云 TMT</strong>:国内稳定,和腾讯生态集成方便
下一篇文章我们将深入讲解 OpenAI 翻译 API 的进阶用法,包括批量翻译、语种自动检测、多语言对照翻译等实战技巧。