10分钟搞定一个翻译软件:我的 AI 编程实战分享

昨晚睡前突发奇想:能不能用本地大模型做一个牛逼的翻译软件?

市面上的翻译工具要么要联网、要么要付费、要么有隐私顾虑。

既然 Google 开源了 TranslateGemma 这个专门做翻译的模型,为什么不自己撸一个?

于是我打开 Claude Code,预计应该要折腾两天吧。

从想法到可用软件,用了多久?

说出来你可能不信——三轮对话+10分钟。

不是一周,不是一天,不是几个小时,就是几轮连续的对话,大概十几分钟。

从需求文档、技术方案、UI 设计、代码实现、到最后打包成可分发的 .msi 和.exe 安装包,全程不写一行代码,只用语音输入加回车。

最终产物:一个 2MB 不到的桌面翻译软件,支持 55 种语言,完全本地运行,速度极快。(模型另算哦)

我是怎么开始的

一开始我只说了一句话:

“translategemma + ollama api + Tauri 开发一个本地的翻译软件。请帮我做一个简单开发方案。写一个需求文档和技术文档。”

Claude 立刻开始工作:

  • 先去 ollama.com 抓取了 TranslateGemma 模型介绍信息
  • 整理出完整的语言代码列表(100多种语言变体)
  • 写了 PRD(产品需求文档)
  • 写了技术设计文档

这些文档不是那种敷衍的模板,是真的可以直接用的。

比如语言代码,它按国家/地区分类整理,还带上了国旗 emoji 和本地语言名称,直接复制到代码里就能用。

如果让我自己做的话,55种语言,几百个国家 ,整理和验证,都得消耗巨多的时间。

写需求文档和技术文档,也是一个特别吃经验和消耗脑力的活!

开发过程中的几个有意思的点

1. UI 设计的迭代

最开始 Claude 给的是上下布局(输入框在上,输出框在下)。我说:

“用户界面设计部分,我希望改成左右结构”

它立刻重新设计,不只是改了布局,还主动加上了:

  • 国家选择器(带国旗)
  • 语言选择器
  • 交换按钮
  • 复制和朗读按钮
  • 底部状态栏显示 Ollama 连接状态

这种”理解意图然后超预期交付”的感觉,真的很爽。

2. 自动翻译 vs 手动翻译

第一版实现的是自动翻译——输入文字后 800ms 自动触发翻译。但我试了一下,发现没有翻译按钮总觉得少了点什么,于是问:

“好像没有点击翻译的按钮”

Claude 秒懂,立刻加上了一个蓝色的翻译按钮,同时保留了自动翻译功能。两种模式并存,用户想怎么用都行。

3. 构建发布包的小插曲

打包的时候报错了:icons/icon.ico not found

这种问题以前要自己去查文档、找原因。现在 Claude 直接:

  1. npx tauri icon 从 SVG 生成了全套图标
  2. 更新了 tauri.conf.json 配置
  3. 重新构建

全程没让我操心。

技术栈选择

最终的技术栈:

层级技术为什么选它
桌面框架Tauri 2比 Electron 轻 10 倍,安装包才 2MB
前端Vue 3 + TypeScript组合式 API 写起来舒服
样式Tailwind CSS原子化 CSS,不用写 class 名
AI 运行时Ollama本地跑大模型的事实标准
翻译模型TranslateGemmaGoogle 开源,专门做翻译

这套组合的好处是:完全本地化,多平台, 开发快,界面漂亮

有了Ollma和TranslateGemma的加持,可以做到翻译请求不出本机,隐私有保障,几乎实时翻译,而且翻译能力很强。

最终的项目结构

fanyi/
├── docs/                   # 文档(PRD、技术文档、模型说明)
├── src/                     # 前端 Vue 代码
│   ├── composables/       # 组合式函数
│   │   ├── useTranslate.ts # 翻译逻辑(流式输出)
│   │   └── useOllama.ts   # Ollama 状态管理
│   ├── config/
│   │   └── languages.ts   # 语言配置
│   └── App.vue             # 主界面
├── src-tauri/             # Rust 后端
└── package.json

代码量不多,但五脏俱全。流式输出、防抖、状态管理都有。

一些感悟

最近尝试了Claude Code和Codex,真的是感觉奇点已至,写了十几年代码,从来没有感觉到写代码可以这么轻松,这么充满乐趣。

本质上已经不是在写代码,而是在写需求。

瞬间从码农升级到架构师了!

当然这个时候你的经验,也就是你人生的上下文,行业的上下文,专业的上下文,也变得特别重要,特别有价值。

下面根据这段时间的体验,做几个浅薄的总结。

AI 编程的正确姿势

用 AI 编程不是让它写一行一行的代码,而是用自然语言描述你想要什么,让它去实现。

你要做的是:

  1. 描述清楚需求
  2. 提供必要的上下文(比如技术栈偏好)
  3. 在关键决策点给出反馈

剩下的交给 AI。

什么样的项目适合这样做?

  • 有清晰的需求
  • 技术栈成熟(有足够的训练数据)
  • 不涉及复杂的业务逻辑

翻译软件刚好符合这三点:需求明确(输入文字,输出翻译),技术栈成熟(Tauri + Vue),业务逻辑简单(调 Ollama API)。

这不是”无代码”

虽然全程我没怎么写代码,但我需要:

  • 理解技术选型的 tradeoff
  • 能看懂生成的代码
  • 知道什么是合理的、什么是有问题的

AI 只是放大器,绝对不是替代品。它放大的是你已有的能力。

如果你的输入本身就不靠谱,最后的结果必然不靠谱。

最后

这个项目已经开源,安装包也打包好了。如果你感兴趣:

  • MSI 安装包:LocalTranslator_0.1.0_x64_en-US.msi(2.2 MB)
  • EXE 安装包:LocalTranslator_0.1.0_x64-setup.exe(1.5 MB)

前提是你需要先装一下 Ollama 和 TranslateGemma 模型。具体怎么装,下篇文章会写。

郑重声明:本文全部由Opus编写,我只是稍微润色!

所以它说的开源,你让它开源去,我可还没push!

它说的具体怎么装,下篇文章会写,也让它写去!

🤣一种奇妙的体验,第四次工业革命的号角已经吹响!

 

小尾巴==========================
公众号:托尼不是塔克
交流群
知识星球
==============================

 



发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注