在本主题中,我们将带您了解内容本地化功能以及如何启用它们。这些功能分为两部分:Discourse 默认提供的功能;以及用于自动翻译的 Discourse AI。
为了快速访问相关章节,请使用 wiki 标题 ![]()
本地化您的社区内容
Discourse 的更新版本 (3.5.0.beta7-dev) 为您提供了多个本地化功能,您可以在以下位置进行配置:
<your-site-url>/admin/site_settings/category/content_localization
获取用户信息
首先,了解您的社区信息非常重要。以下数据浏览器查询可以帮助您了解有多少用户可能在 /my/preferences/interface 中设置了他们的语言环境。
SELECT locale, count(*) as count
FROM users
WHERE (locale IS NOT null AND locale <> '')
GROUP BY locale
ORDER BY count DESC
设置社区支持的语言环境
根据以上信息,我们现在更清楚您的社区应该支持哪些语言环境。
在 <your-site-url>/admin/site_settings/category/content_localization 中,您可以选择要支持的语言环境。
-
启用内容本地化- 启用此功能,将用户编写的原始内容替换为本地化内容。请继续阅读,了解自动和手动本地化模式。 -
内容本地化支持的语言环境- 您的网站支持的语言列表 -
内容本地化语言切换器- 将在下文介绍
启用后续设置“内容本地化语言切换器”后,您还可以通过在支持的语言环境列表中显示您选择的语言列表,使未登录用户更容易访问您的社区:
查看本地化内容
meta.discourse.org 上的本地化欢迎主题
对于本地化内容的查看者(所有网站访问者),他们可以将鼠标悬停在帖子日期旁边的指示器上,以查看帖子的原始语言。此指示器仅在帖子语言不是他们的语言时才会显示。
如果用户只想查看原始内容,他们可以使用主题时间线上方的切换按钮来禁用整个网站的本地化。
使用 Discourse AI 进行自动翻译 
Discourse AI 是本地化功能不可或缺的动力,它免去了手动翻译的需要。
作为管理员,您需要前往我们全新的 AI 功能版块查看翻译功能。
以下是一些重要的设置和建议:
-
“AI 翻译回填每小时速率” - 此设置默认值为“0”。警告:如果此值为 0,则不会开始自动翻译。 假设速率为 50,则您的网站每小时将翻译 50 篇文章、50 个主题和 50 个分类,翻译语言为您在“内容本地化支持的语言”中设置的语言。建议在开始时将此值设置得较低。
-
“AI 翻译回填最大年龄天数” - 默认值为“5”。这意味着超过 5 天的主题和文章将不会被翻译。您可以将其值增加到较大的值以翻译所有主题和文章。
-
“AI 翻译回填限制为公共内容” - 默认值为“true”。此设置可防止将私信和私有分类中的内容发送到本地化管理 (LLM)。设置为“false”时,群组私信和私有分类将包含在翻译中。个人之间的私信将不会被翻译。
-
AI 翻译最大帖子长度- 默认值为10000。这是一项安全措施,防止翻译长度超过一定限制的帖子。 -
AI 翻译最大词元数倍增器- 默认值为1.0。我们通常会限制每次翻译使用的词元数上限(discourse/plugins/discourse-ai/lib/translation/base_translator.rb at f74a4385a0dc9dcd645e08386c08063d7723b65c · discourse/discourse · GitHub Gemini Pro 3 等思维/推理语言学习模型进行翻译时,您需要将此倍增器增加到大约3.0。 -
AI 翻译帖子原始译者角色(以及其他角色) - 在更正式的社区中,管理员可以选择创建自己的角色。这样,您可以设置更符合您偏好的语言或词汇的提示语。
您可以参考 AI bot - Personas 了解如何配置合适的角色并针对每个功能微调提示语。
翻译进度
您可以在 /admin/plugins/discourse-ai/ai-translations 的“翻译进度”图表中找到更多关于自动翻译进度的信息。
如果满足以下条件,则会显示此图表:
-
所有译员角色都拥有有效的语言学模型 (LLM)
-
discourse ai enabled
-
ai translation enabled
-
content localization supported locales已填写 -
ai translation backfill max age days大于 0 -
ai translation backfill hourly rate大于 0
手动本地化
由于本地化是 Discourse 的核心功能,我们允许您在自动翻译出现问题时手动填写和编辑本地化内容。 Discourse AI 暂不可用。
默认情况下,管理员和版主拥有编辑本地化的权限。
目前,我们支持文章内容、主题标题、分类名称和分类描述本地化。标签本地化暂不支持,但将在不久的将来推出。以下后续章节将向您展示其工作原理。
分类本地化
本地化分类会在以下区域显示,分类名称和描述均已本地化:
作为管理员,您应该可以像往常一样访问类别设置,并在左侧找到新的“本地化”导航项。
主题和文章本地化
从上方“分类本地化”部分的截图中,您可能已经注意到主题标题和摘要都已本地化。
有一些前提设置:
-
确保您的用户属于“允许内容本地化的用户组”
-
在站点设置中为“文章菜单”添加“addTranslation”选项。这样,对于属于“允许内容本地化的用户组”的用户,文章菜单中就会显示“
”图标。 -
“允许作者本地化的内容本地化”选项默认启用,允许文章作者使用与上述相同的文章菜单来本地化自己的内容。
再次强调,可本地化的语言列表位于上面提到的“内容本地化支持的区域设置”中。
编辑本地化文章
如果用户正在查看本地化文章并想要编辑该文章,系统会弹出一个对话框,询问他们想要编辑哪个版本:
选择后,相应的编辑器将会出现。
删除特定语言环境的帖子翻译
如果您已正确按照上述关于“帖子菜单”设置的说明操作,并且您属于“允许内容本地化”组,则应该可以执行以下操作:
常见问题解答
我已经设置好了,但自动翻译仍然无法正常工作
请确认您是否已完成以下设置:
-
“内容本地化支持的区域”至少包含一种语言
-
“内容本地化已启用”已勾选
-
“允许用户区域设置”已勾选
-
“从 Cookie 设置区域设置”已勾选
-
“AI 翻译已启用”已勾选
-
“AI 翻译最大保留天数”不为 0
-
“AI 翻译回填每小时费率”大于 12
-
您必须为每个翻译角色设置一个可用的本地化语言管理器 (LLM)。
如果以上方法均无效,您可以启用 SiteSetting.ai_translation_verbose_logs。
所有帖子都会被翻译吗?
如果 AI 翻译回填限制为公共内容 已勾选,则除机器人(用户 ID < 0)发布的帖子外,所有公共分类下的帖子都将被翻译。
自动翻译是保存的,还是每次有人查看主题时都会发送到 LLM?
翻译会被保存,每个帖子每种语言只发送一次,并且翻译会被重复使用。
如果我的论坛支持英语和日语(通过 内容本地化支持的语言),而有人用西班牙语发帖,他们的帖子会被翻译吗?
是的。所有主题和帖子都会被翻译成英语和日语,无论其写作语言是什么。
如果原始帖子被编辑,是否会被重新翻译?
是的——每天最多两次。当帖子被编辑后,会在 5 分钟后(或 SiteSetting.editing_grace_period 指定的宽限期)自动发送进行重新翻译,以应对用户擅自编辑的情况。已授权加入“允许内容本地化组”的用户可以选择立即发送帖子进行重新翻译。
如果我更改 Persona 或 LLM,翻译会被删除吗?
不会,除非使用帖子菜单项或翻译编辑器明确删除,否则翻译通常会在设置更改后保留。


















