首页 › new-tools › 出海别手翻JSON:AI本地化三件套

出海别手翻JSON:AI本地化三件套

你做出海产品,UI文案要支持英语、日语、西语……传统流程是:把 zh-CN.json 丢给翻译公司或自己开着 ChatGPT 一段段翻,再手动贴回去。改一行文案,整套流程重来一遍。而海外出海圈现在的主流玩法是:把本地化接进 Git 流水线——代码一合并,AI 自动翻译,机器人直接给你发 PR。国内公开讨论里,这套“Dev 级 AI 本地化”的完整打法还很少见有人系统讲过。今天给你拆三个开源工具:Lingo.dev、General Translation、Intlayer,外加一个编译期方案 Paraglide JS。

一、为什么“手翻 JSON”是出海团队的隐形税

先算一笔账。一个中等规模的 SaaS 产品,界面文案通常在 2000~10000 条之间。按传统方式出海:

海外的解法是把 i18n 文件当成代码来管:只维护源语言,其余语言由 AI 在 CI 里按 diff 增量翻译,人工只做抽查。这个模式不是某个工具的独家功能,而是已经形成了开源工具生态。

二、三件套逐一拆解

1. Lingo.dev:把翻译机器人塞进你的 GitHub

是什么:一个开源的 AI 本地化引擎(官网 lingo.dev,源码在 github.com/lingo-dev/lingo.dev),核心卖点是“只翻新增的、不碰锁定的”。

核心玩法:

  1. 项目根目录放一个 i18n.json,声明源语言、目标语言和文案文件的位置(bucket);
  2. 在 GitHub 仓库装上它的 App 或 Action;
  3. 之后你正常开发——只要源语言文件里有新增文案,机器人自动翻译所有目标语言,直接给你开一个翻译 PR,你在 PR 里抽查、合并。

三个杀手级细节:

进阶:据官方介绍,它还推出了 Lingo.dev Compiler——构建期直接扫描 React 应用的文案并生成多语言版本,号称几乎不用改业务代码就能让站点变多语言(细节以官方文档为准)。另外它不限于 Web:JSON/YAML/Markdown/CSV 等常见格式都能作为 bucket 接入,连终端工具的帮助文档都能翻。

价格:CLI 开源免费;托管版有免费额度,超出按量付费(具体档位以官网为准)。

2. General Translation:React 里的 <T> 标签方案

是什么:官网 generaltranslation.com,源码在 github.com/generaltranslation/gt。它的思路和 Lingo.dev 不同——不是“翻译文件”,而是“翻译组件”。

核心玩法:

  1. 安装它的 React/Next.js 库,把文案用 <T> 组件包起来:
import { T } from 'gt-react';

<T><p>欢迎回来,{user.name}!</p></T>
  1. 跑一次 CLI 扫描,AI 会根据组件上下文生成翻译;
  2. 翻译结果上传到它的托管面板,你在网页上审校。

为什么值得关注:

适用人群:Next.js/React 技术栈、文案和组件耦合度高、不想维护一堆 JSON 文件的团队。

3. Intlayer:内容声明写在组件旁边

是什么:开源项目(官网 intlayer.org,源码在 github.com/aymericzip/intlayer),特点是每个组件配套一个 .content.ts 声明文件,文案不集中在大仓库里,而是“谁用谁声明”。

核心玩法:

  1. 组件旁边写 my-component.content.ts,声明该组件的文案字典;
  2. 提供面向 AI 的补翻命令(类似 intlayer fill,以文档为准),可以用自己的 OpenAI/Anthropic Key 跑翻译——翻译成本自己掌控,数据不出你的账户;
  3. 内置可视化编辑器(CMS),非技术同事也能改文案。

为什么值得关注:它把“AI 翻译用什么模型、花谁的钱”的决定权还给开发者,私有化部署场景(公司禁用第三方托管)下这是关键能力;同时字典跟着组件走,重构组件时文案不会变成孤儿。

加映:Paraglide JS(inlang 生态)

如果你不想要任何托管服务,可以看 inlang 生态的 Paraglide JS(inlang.com):编译期把翻译生成类型安全的函数,文案 key 写错直接编译报错,配合其机器翻译 CLI 做初翻,全程本地化、零托管依赖。适合对数据主权敏感的团队。

三、传统流程 vs AI 本地化流水线

flowchart LR
  subgraph T[传统流程:天级周期]
    A1[导出 JSON] --> A2[翻译公司或手翻]
    A2 --> A3[人工回填]
    A3 --> A4[改一处重翻一轮]
  end
  subgraph N[AI 流水线:分钟级周期]
    B1[git push 新文案] --> B2[CI 检测 diff]
    B2 --> B3[AI 按上下文翻译]
    B3 --> B4[机器人发翻译 PR]
    B4 --> B5[人工抽查合并]
  end
  T -.升级.-> N

四、信息差总结

维度 你以为的 实际上海外在玩的
流程 翻译是“上线前一次性项目” 翻译是 CI 里的常驻环节,随代码合并自动发生
成本 按字付翻译费,或烧 token 全量翻 只翻 diff 增量,润色过的文案锁死不再烧钱
质量 手动叮嘱 GPT“别改占位符” 工具层面保证占位符/标签/复数规则不坏
人工介入 翻译公司来回复稿 只在机器人 PR 里抽查,改错字可热发布
技术选型 i18n = 抽 JSON 到 locales/ 目录 <T> 组件、组件旁声明字典、编译期类型安全各有拥趸

五、行动指南

  1. 今天就能做:挑一个你手上的出海项目,把 Lingo.dev 的 CLI 跑起来——npx lingo.dev@latest init(以官方 README 为准),配一个两语言的 bucket,感受机器人发 PR 的流程;
  2. React 重度团队:拿一个独立页面试点 General Translation 的 <T>,对比传统 JSON 方案在“带变量整句翻译”上的质量差异;
  3. 数据不能出内网的团队:用 Intlayer + 自有模型 Key,把补翻脚本挂到 pre-release 钩子上;
  4. 验收标准:让一个不懂中文的朋友试用你的日语版界面,占位符没坏、术语一致,就算流水线跑通。

参考来源

  1. Lingo.dev 官网与文档:https://lingo.dev
  2. Lingo.dev 源码仓库:https://github.com/lingo-dev/lingo.dev
  3. General Translation 官网:https://generaltranslation.com
  4. General Translation 源码仓库:https://github.com/generaltranslation/gt
  5. Intlayer 官网与文档:https://intlayer.org
  6. inlang / Paraglide JS:https://inlang.com

注:文中工具的具体价格、免费额度与命令行参数以各官网最新文档为准;Lingo.dev Compiler 的能力描述来自其官方介绍,未经第三方独立评测验证。


本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护。 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入