常见问题解答

技术常见问题解答

<T> 从哪里获取翻译?它使用哪些翻译?

<T> 从哪里加载翻译取决于你对库的配置,技术上可来自任意位置。 如果你有项目 id,库可以从免费的 CDN(内容分发网络)获取翻译。 它也可以将翻译存储在本地,或两者混合使用。 更多详情参见 load-translations 文档

在开发阶段,为了让你在修改内容时看到翻译的热重载,<T> 组件会调用一个 API,并使用小型 AI 模型生成临时翻译。这些翻译不会被持久化,仅在请求时返回给应用。

在生产环境中,<T> 不会这样做,以避免泄露你的 API Keys。

为什么必须安装 CLI 工具?

CLI 工具会解析所有 <T> 组件内的内容,并预先生成对应的译文, 以便在你的应用部署到生产环境时,所有翻译都已就绪。 在开发环境中则不需要,因为你可以使用开发环境的 API Keys 按需翻译。

生产环境中缺失的翻译是否会自动回退?

是的,在生产环境中,如果某些内容缺少翻译,库会自动回退到原始源文本。

AI 翻译是否也适用于动态内容和变量?

<T> 组件不支持翻译动态内容和变量, 因为这意味着每次重新渲染时翻译结果都可能发生变化。 不过,你仍然可以在 <T> 内包含动态内容和变量,只需用 <Var><DateTime><Currency> 组件将它们包裹起来。 这与其他库进行字符串插值的方式类似。

对于 gt-next,还有一个 <Tx> 服务端组件,可以在生产环境中即时执行翻译, 并支持任意形式的动态内容,但它需要一个 API key。

离线系统如何运作?我能在不依赖你们服务器的情况下使用 GT 部署应用吗?

可以,但需要你自行完成翻译, 然后从你自己的 bundle 或自有 CDN(内容分发网络)加载它们。 请参阅我们的文档:链接

商务常见问题

我是否拥有我的译文?

是的。

您作为客户,对通过本服务生成的任何译文输出保留完整的所有权与权利。我们不对您的输出主张任何权利。

更多信息,请参阅我们的使用条款

常见问题

什么是 tokens?

当文本发送到 GT API 时,它会被拆分为称为“tokens”的片段。 可以将 tokens 理解为输入文本中的微小单位,如单词或词的一部分,AI 模型依赖它们来理解并翻译你的内容。

一个实用的经验法则是,对于常见的英文文本,1 个 token 通常对应约 4 个字符。折算下来约等于 3/4 个单词(因此 100 个 tokens ≈ 75 个单词)。

例如,字符串 Hello, world! 有 13 个字符,但有 4 个 tokens:Hello, world!

如果你的使用超过了当前套餐的 token 上限,我们将按 token 用量计费。 我们始终只根据你的输入长度计费——绝不会根据译文长度计费。 在此处了解更多可用套餐。

例如,假设你有字符串 "Hello, world!",并且你的项目语言是 "fr"(法语)、"es"(西班牙语)和 "de"(德语)。 Token 用量将计算为 4 * 3 = 12,即将 "Hello, world!" 的 4 个 tokens 翻译 3 次。

我们目前使用 OpenAI 的 tiktoken 进行分词,这与 GPT-4 所使用的分词器相同。你可以在这里试用该分词器。

Locale?Language?Region?有什么区别?

在本文档中,我们会在一定程度上交替使用术语 localelanguage。 大多数情况下,它们确实指代相同的概念,但也存在一些细微差异,必要时我们会予以说明。

Language 指人类使用的口语或书面交流形式。

Region 指某种语言被使用的地理区域。当然,语言本身可能相同,但在不同区域会有所差异。例如,加拿大法语与法国所使用的法语。

Locale 是语言与区域的组合,用于指定特定区域中的特定语言。例如,en-US 表示在美国使用的英语。

这份指南怎么样?

常见问题解答