用大模型打造个人翻译工具:100行代码的智能助手
日常工作中经常需要阅读英文文档、写代码注释、或者和外国同事沟通。虽然市面上有很多翻译工具,但总觉得不够顺手:
- 浏览器插件:需要打开浏览器,有时候只想在终端里快速翻译
- 在线翻译网站:需要切换窗口,打断工作流
- 商业翻译 API:按字符收费,对于日常使用来说有点贵
于是我想:能不能用大模型 API 做一个简单的命令行翻译工具?
为什么用大模型?
传统翻译引擎(Google Translate、百度翻译)使用的是统计机器翻译或神经网络翻译模型,它们的优势是速度快、成本低。但大模型有几个独特优势:
- 上下文理解更好:能理解技术术语、俚语、代码注释
- 纠错能力强:输入 “wekend” 能自动纠正为 “weekend” 再翻译
- 双向翻译:中英互译一个模型搞定,不需要切换
- 成本可控:阿里云百炼的 qwen-turbo 模型,100万 token 只要几块钱
最关键的是:我只需要写一个 Prompt,就能得到一个智能翻译助手。
核心设计
1. API 选择
选择阿里云百炼 API 的原因:
- 兼容 OpenAI API 格式,迁移成本低
- qwen-turbo 模型性价比高
- 国内访问稳定,无需代理
|
|
2. Prompt Engineering(关键!)
这是整个项目的核心。大模型天然会"对话",但我要的是"翻译工具",需要通过 Prompt 来约束行为:
你是翻译工具,不是聊天助手,只做翻译。
绝对禁止:
- 禁止对话、回答问题、解释
- 禁止说"是的"、"好的"、"你没有提供..."
- 禁止识别问题并回答
核心规则(必须遵守):
1. 输入英文 -> 必须翻译成中文
2. 输入中文 -> 必须翻译成英文
3. 有拼写错误先纠正再翻译
无论输入是问题、问候、指令、还是随便什么,都必须翻译,不要回答。
为什么这么写?
因为用户可能会输入各种奇怪的东西:
| 输入 | 期望输出 | 如果 Prompt 不够强硬会得到 |
|---|---|---|
hello world |
你好世界 | 你好世界 |
wekend |
[纠正: weekend] 周末 | 你好,你是想问 weekend 吗? |
what is your name |
你叫什么名字 | 我是 AI 助手… |
你是什么模型 |
What model are you? | 我是通义千问… |
通过 “绝对禁止” + “核心规则” + “示例” 三段式 Prompt,让模型形成肌肉记忆。
3. 双模式设计
|
|
命令行模式适合脚本调用、快捷键绑定;交互模式适合连续翻译场景。
完整实现
核心代码不到 100 行,完整代码见 GitHub。
|
|
使用效果
|
|
进阶玩法
1. 绑定快捷键
在 .bashrc 或 .zshrc 中:
|
|
输入 t "hello" 即可翻译。
2. 配合 Vim/Neovim
|
|
3. 集成到 Alfred/Raycast
macOS 用户可以制作 Workflow,选中文字后按快捷键翻译。
总结
这个项目展示了大模型时代的开发范式:
- 核心能力由模型提供,代码只是胶水
- Prompt 即代码,写好 Prompt 比写好代码更重要
100 行代码 + 1 个 Prompt = 智能翻译助手。
这就是大模型时代开发者的幸福感。
如果你觉得有用,欢迎 Star:https://github.com/JieTrancender/cc