下面为你提供一个基于谷歌官方全新、现代化的 **google-genai** SDK 编写的智能翻译 Agent 工作流示例。
这个工作流利用了 **Gemini 3.5 Flash** 极快的响应速度与原生的 Thinking(思维链)能力,采用典型的 **“反射-迭代”(Reflection-Critic)** 模式,将翻译任务拆分为三个顺序执行且互相参考的自治阶段。
### Prerequisite(前置准备)
首先确保你安装了最新的官方 SDK(旧版的 google-generativeai 已于 2025 年底停止维护):
“`bash
pip install google-genai
“`
并在环境变量中配置好你的密钥:
“`bash
export GEMINI_API_KEY=”your-api-key-
“`
### Python 实现代码
“`python
import os
import json
from google import genai
from google.genai import types
# 1. 初始化最新的 Google Gen AI 客户端
# SDK 会自动从环境变量 GEMINI_API_KEY 中读取密钥
client = genai.Client()
# 定义使用最新的 Gemini 3.5 Flash 模型
MODEL_NAME = “gemini-3.5-flash”
def translate_agent_workflow(
“””
基于 Gemini 3.5 Flash 的智能翻译三阶段工作流
“””
glossary_str = json.dumps(glossary, ensure_ascii=False) if glossary else “无特定术语表”
print(“
[Phase 1/3] 正在进行直译与初翻…”)
# ——————————
# 阶段一:初翻 (Drafting)
# ——————————
prompt_draft = f”””
你是一个专业的翻译助理。请将以下文本翻译为英文。
要求:保持原文意思完整,字面意思对齐。
【待翻译文本】:
{source_text}
【初翻结果】:
“””
response_draft = client.models.generate_
model=MODEL_NAME,
contents=prompt_draft,
config=types.
temperature=0.3, # 较低随机性确保准确
)
)
draft_result = response_draft.text.strip()
print(” ↳ 初翻完成。”)
print(“\n
[Phase 2/3] 正在结合术语表进行校对与纠错…”)
# ——————————
# 阶段二:术语校对 (Glossary & Error Correction)
# ——————————
prompt_proof = f”””
你是一个严谨的审校专家。请对照【原文】、【初翻文本】
如果有不符合术语表的,请予以纠正;若初翻已经很完美,
【行业术语表规范】:
{glossary_str}
【原文】:
{source_text}
【初翻文本】:
{draft_result}
【校对与纠错后的文本】:
“””
response_proof = client.models.generate_
model=MODEL_NAME,
contents=prompt_proof,
config=types.
temperature=0.2, # 进一步降低随机性,确保术语严格对齐
)
)
proof_result = response_proof.text.strip()
print(” ↳ 校对完成。”)
print(“\n
[Phase 3/3] 正在进行地道化润色与优雅度提升…”)
# ——————————
# 阶段三:地道化润色 (Polishing & Native Elegance)
# ——————————
# 在这个阶段,我们可以适度调高 temperature,让 Gemini 3.5 Flash 的 Thinking 机制展现文采
prompt_polish = f”””
你是一个精通英语文学与地道商业表达的母语级别润色专家。
请在【严格保留第二阶段校对术语】的前提下,对【校对后的文本】
要求:
1. 消除“翻译腔”,使其符合英语母语者的阅读和表达习惯。
2. 根据原文的语境,提升句子的流畅度、优雅度和节奏感。
3. 严禁篡改原意,严禁丢弃第二阶段已经校对过的行业术语。
【原文】:
{source_text}
【校对后的文本】:
{proof_result}
【最终润色成品】:
“””
response_polish = client.models.generate_
model=MODEL_NAME,
contents=prompt_polish,
config=types.
temperature=0.6, # 适度提高,允许模型在修辞和句式变换上更有创造力
)
)
final_result = response_polish.text.strip()
print(” ↳ 润色完成。”)
return {
“original”: source_text,
“draft”: draft_result,
“proofread”: proof_result,
“final”: final_result
}
# ——————————
# 测试运行
# ——————————
if __name__ == “__main__”:
# 带有特定行业隐喻和技术术语的文本
test_article = (
“人工智能赛道正在经历残酷的内卷,
“我们必须聚焦于垂直领域的‘大模型落地’,
)
# 定义特定的标准术语映射
my_glossary = {
“内卷”: “brutal hyper-competition”,
“画大饼”: “making empty promises / selling pipe dreams”,
“大模型落地”: “LLM production deployment”,
“大模型代理”: “LLM Agents”
}
# 运行 Agent 翻译流
results = translate_agent_workflow(test_
print(“\n” + “=”*50 + “\n工作流最终报告:\n” + “=”*50)
print(f”【原文】:\n{results[‘
print(f”【1. 初翻草稿】:\n{results[‘draft’]}\n”)
print(f”【2. 术语校对】:\n{results[‘proofread’]}
print(f”【3. 终审地道润色】:\n{results[‘final’]}\
“`
### 为什么这个模式非常适合 Gemini 3.5 Flash?
**发挥高速特性**
*降低多步延迟*
Agent 工作流最怕“多轮对话带来的累积延迟”。Gemini 3.5 Flash 拥有极高的 Token 输出速度,即便串联了 3 个生成阶段,整个脚本也能在数秒内迅速跑完,
*确保信息不丢失*
在第三阶段,模型需要同时阅读【原文】、【草稿】、【校对稿】
*在润色阶段注入灵魂*
在第三阶段调高 temperature(如 0.6)后,3.5 Flash 的内核会主动权衡如何将中文的修辞(如“画大饼”)