docs/docs/cn/ai-employees/built-in/lina.md
Lina 是本地化插件注册的内置 AI 员工,专门用于系统本地化翻译。她会将本地化词条翻译为目标语言,并尽量保留变量、占位符、标签、格式和界面文案的简洁性。
:::info{title=提示} Lina 是本地化场景的专用 AI 员工,不支持使用通用的 Skills 和 Tools. :::
使用 Lina 前,需要先完成以下配置:
:::info{title=提示} Lina 会根据当前语言环境创建翻译任务。例如当前界面语言为泰语时,任务会为泰语生成译文。 :::
可以在 系统设置 -> AI 员工 -> AI employees 中打开 Lina 的编辑弹窗,并在 Role setting 中调整提示词。提示词通常用于定义业务领域信息、术语规则和输出约束,不宜过长,否则可能不适合专项翻译模型。
默认提示词示例:
# Role
You are Lina, a professional localization translator for NocoBase.
# Task
Translate NocoBase localization text into the requested target language.
# Translation requirements
1. Keep the translation faithful, concise, and natural for product UI.
2. Use consistent NocoBase and software terminology.
3. Preserve placeholders, variables, HTML tags, ICU syntax, line breaks, and code-like tokens.
4. Return only the translated text. Do not explain, quote, or use Markdown.
5. If the text should not be translated, return it unchanged.
参考翻译和待翻译文本不需要写入 Lina 的提示词。创建任务时,系统会根据词条内容、目标语言和确认弹窗中的参考语言配置自动拼接。
在本地化管理页面中,点击 Lina 的头像按钮后,可以选择不同范围的 AI 翻译任务:
仅翻译当前语言中尚未有译文的词条。适用于日常维护场景,例如新增插件、新增字段或新增菜单后,只希望补齐缺失译文。
对于内置词条,如果目标语言的系统或插件语言包中已经存在译文,即使本地化翻译表中还没有写入对应记录,也会被视为已有译文,不会计入增量翻译。
先在词条表格中勾选需要处理的记录,再选择“翻译所选项”。适用于只想重译少量词条,或人工检查后发现部分译文需要重新生成的场景。
如果未选择任何词条,系统会提示先选择记录。
翻译当前语言中符合条件的全部词条。适用于新增语言时生成第一版译文。
:::warning{title=注意} 全量翻译可能覆盖已有译文。执行前请确认目标语言、词条数量和模型服务是否正确。 :::
创建任务前,系统会弹出确认框,显示本次即将翻译的内容:
全量翻译和增量翻译还可以在确认框中选择翻译范围:
翻译所选项只处理表格中已经勾选的记录,因此不再显示翻译范围。它也只显示一组通用的参考翻译语言配置,不再区分内置词条和自建词条。
如果即将翻译的词条数量为 0,系统会提示用户,不会创建后台任务。确认后,系统会创建后台任务。任务执行过程中可以在异步任务中查看进度,任务完成后译文会写入对应语言的翻译内容中。
有些词条本身较短,例如字段名、按钮名、状态名,单独翻译时缺少上下文。Lina 会尽量使用已有参考译文提升一致性。
例如已有参考翻译时,Lina 会以类似以下语义提示模型:
Refer to the following translation:
{source_term} is translated as {target_term}
Translate the following text into {target_language}. Output only the translated result without any additional explanation:
{source_text}
由于本地化翻译通常会一次处理大量词条,如果有条件,建议优先选择本地部署的翻译专用小模型,因为在线模型通常会有 API 调用频率、并发数或每分钟 token 数限制。翻译任务词条较多时,限流会导致任务执行时间变长,甚至出现部分请求等待或失败。
如果无法部署本地模型,也建议选择翻译专项模型,而不是普通聊天模型。翻译专项模型通常更适合短词条、界面文案和批量翻译场景。Lina 会将员工提示词、参考翻译和待翻译文本组织为提示词发送给模型,用户可以通过调整 Lina 的提示词来控制翻译风格和规则。
可以根据模型能力灵活调整请求并发数,更容易控制任务吞吐、响应时间和成本。
如需参考本地部署翻译专用小模型的完整实践,可查看 使用 Lina 和本地 HY-MT1.5-1.8B 翻译本地化词条。
:::info{title=提示}
本地化翻译任务的并发数可通过环境变量 AI_LOCALIZATION_CONCURRENCY 控制,默认值为 10,允许范围为 1 到 20。超出范围时会使用默认值。
:::
Lina 的翻译任务以后台异步任务执行。任务会按词条逐条写入翻译结果,并更新任务进度。
如果某条词条翻译失败,任务会记录失败信息并停止,避免在模型调用异常、模型返回异常内容或配置错误时继续写入不可控的结果。常见原因包括:
遇到失败时,可以先检查异步任务详情和服务端日志,确认服务商、模型、目标语言、失败词条 ID 和模型调用耗时。
AI 翻译完成后,建议在发布前进行人工复核:
重置系统内置词条翻译内容 恢复默认译文。贡献系统和官方插件默认译文时,可参考 翻译贡献。