该插件使用户能够在 OmegaT 中,使用任何提供OpenAI API的LLM软件进行机器翻译。
该插件基于 OpenAI Plug-in for OmegaT,
但允许自定义api url地址,这使得插件不再局限于open ai,可以使用任何兼容openai api的LLM。
- 使用 OpenAI API 翻译 OmegaT 中的文本。
- 你可以自定义为任何模型,无论本地还是在线。
- 自动将术语表合并到提示中,以提高翻译的一致性和准确性。
- 通过设置 UI 轻松将自定义指令添加到翻译提示中,从而实现更大的灵活性和对翻译输出的控制。
插件放置位置:OmegaT安装目录下的 plugins
完整路径参考:OmegaT5\plugins\openai-translate\OmegaT-hxyy-llm-plugin-0.0.1.jar
-
打开 首选项 > 机器翻译 > Custom LLM Translate.
-
配置插件
本地例子: 使用 LM Studio时,api key随意填写。
从LMS复制api url。
模型你可以从LMS中复制名称,也可以随意填写,随意填写即使用当前加载模型。
在线例子:
以open router为例。 与前面类似,需要填写key,url,模型名称。这些从供应商那里获取。
提示词示例:
请将用户提供的文本从 %s 翻译为 %s 。 你是集成在翻译程序中的翻译工具,你在进行程序文档翻译,你只需要输出译文,不要输出原文,你需要保持输出翻译准确而流畅。 注意: 不要将英文括号"()"翻译为中文括号"()"; 不要将英文中的引号 " 翻译为中文引号 “” ; 不要翻译布尔值。 你需要保持原文格式,保留文本中的标记如:"{0}" "\n",不要添加任何额外的markdown格式。 如果下面给出了术语表(Glossary)则优先按术语表输出翻译,不要输出术语表和解释。
-
使用术语表(词条)保持上下文一致性,术语表(glossary)拼接在系统提示后面,在附加提示前面。如果有术语表的话,你最好告诉ai存在术语表,避免误解。
-
附加提示和"系统提示""用户提示"不是必要的,但加上有助于一些模型正确区分信息提高成功率。
-
你可以在提示中添加一些例子,有例子ai会做的更好。
-
AI并不总是能够返回正确翻译,有时会有奇怪输出或者犯傻,适当提高温度以提高随机性,重新翻译可能会解决问题。温度为0没有随机性,则重试无效。
-
提示中第一个 %s 为原始语言代码如"en-US",第二个为目标语言代码如"zh-CN",这随项目设置将自动变化,不是必须的,你也可以在提示词中指定如"翻译为简体中文"。
OmegaT设计理念上不支持自动机翻全部,而且AI对其所知不多,文档也有坑,java插件编写需要编译也麻烦...所以有个粗糙的辅助脚本,运行后将创建插入文本UI,有助于减少按键盘。
跳转并插入是延迟一秒插入,因为我获取不到翻译状态。如果翻译时间太长,需要手动改脚本中的延迟时间。
需要配置java 8环境。
运行 gradlew.bat 将自动下载所需依赖并编译,不需要额外参数。
如果你需要升级更高的基础构建版本,可以参考其它插件中的版本,可能需要更高的java版本和更复杂的构建脚本。
脚本可能是全能的,编写jar插件不如写脚本。





