Chatglot - 聊天翻译

Chatglot - 聊天翻译

实时翻译Minecraft聊天消息,支持多个提供商和可选自动翻译。

社交

Chatglot

聊天翻译示例 Chatglot 是一个 Fabric 客户端模组,可实时翻译 Minecraft 聊天消息。
每条聊天消息都会附加一个翻译按钮(默认为 ✍)。点击它,或让自动翻译处理,翻译结果会以新行的形式显示在聊天中,或替换原始消息。

仅客户端使用。无需在服务器上安装。

功能

  • 为每条聊天消息附加翻译按钮(标签可配置)
  • 点击翻译或自动聊天翻译
  • 结果显示为新行或替换原始聊天消息
  • 告示牌和悬挂告示牌翻译
    • 看向告示牌并按 G 翻译其文本
  • 使用 F8 或 /chatglot config 打开设置界面
  • 使用 /chatglot translate <id> 翻译特定的聊天消息

告示牌翻译

翻译提供商

Chatglot 支持多种翻译后端。在设置界面中切换。

提供商 要求
default 无。使用作者运营的免费 GAS 端点。有速率限制,且自动翻译不可用。
gas 你自己的 Google Apps Script 网络应用 URL
deepl DeepL API 密钥
google Google Cloud Translation API 密钥
openai OpenAI API 密钥
gemini Gemini API 密钥
anthropic Anthropic API 密钥
azure Azure Translator API 密钥 + 区域
codex 浏览器 OAuth(一次性,令牌本地存储)
translategemma_local 仅限 Windows。下载 llama.cpp + TranslateGemma GGUF 模型,然后通过 localhost 运行本地后端

推荐提供商

  • GAS:如果你想要使用自己的 Google 账号进行免费设置,这很不错。Google Apps Script 文档说明消费者账号每天最多可进行 5,000 次 Translate 调用,但配额可能会变化。请参阅 Apps Script 配额。
  • Codex:如果你已经订阅了 ChatGPT,推荐使用。OpenAI 表示 Codex 包含在 ChatGPT Plus、Pro、Business、Edu 和 Enterprise 计划中,并受计划限制。请参阅 使用你的 ChatGPT 计划使用 Codex。
  • Azure:如果你想要带有免费层的官方 API,这是一个不错的选择。根据 Microsoft 的定价页面,Azure Translator F0 每月包含 200 万 个字符免费。请参阅 Azure Translator 定价。
  • TranslateGemma:如果你的 PC 有足够的余量进行本地推理,这是一个强有力的选择。设置完成后,它通过 localhost 在本地运行,速度可能很快,且每次请求不需要付费 API。但它需要下载 llama.cpp 运行时和 TranslateGemma GGUF 模型。

要求

配置

配置文件位于 config/chatglot/chatglot.json。

关键设置:

  • enabled — 完全启用或禁用模组
  • autoTranslateEnabled — 切换自动翻译
  • targetLanguage — 例如 JA、EN、EN-US、ZH-HANS(默认为你的 Minecraft 语言)
  • provider — 选择你的翻译后端
  • overwriteOriginalWithTranslation — 替换原始消息,而不是添加新行
  • appendTranslateButton — 显示或隐藏 ✍ 按钮
  • translateButtonLabel — 自定义按钮标签
  • showTranslationPrefix — 显示或隐藏翻译消息前缀
  • requestTimeoutSeconds — 网络超时(5-240 秒)
  • maxConcurrentTranslations — 最大并行翻译请求数(1-16)
  • useSharedAppDataSettings — 通过 %LOCALAPPDATA% 共享 API 密钥、模型设置和本地后端设置

TranslateGemma 本地后端

translategemma_local 是仅限 Windows 的本地翻译选项。它不会在 Minecraft JVM 内运行推理。相反,它通过 127.0.0.1 / localhost 使用单独的本地后端进程。

当你在配置界面中使用 TranslateGemma 设置按钮时,Chatglot 会:

  • 下载预构建的 llama.cpp Windows 运行时
  • 下载 TranslateGemma GGUF 模型文件
  • 在本地启动 llama-server.exe,并将翻译请求发送到该本地服务器

默认模型是 mradermacher/translategemma-4b-it-GGUF,使用 translategemma-4b-it.Q4_K_M.gguf。

默认情况下,Chatglot 将本地后端运行时、模型、日志和状态存储在:

  • 当共享 AppData 设置禁用时:config/chatglot/local-backend/
  • 当共享 AppData 设置启用时:%LOCALAPPDATA%/ChatglotLocal/

你还可以从配置界面覆盖运行时路径、模型路径、下载 URL 或共享目录。

共享设置存储

如果启用了 useSharedAppDataSettings,Chatglot 会将共享设置存储在 %LOCALAPPDATA% 中,以便多个启动配置文件可以复用它们。

这可能包括:

  • 支持的翻译提供商的 API 密钥
  • Codex 令牌文件位置及相关模型设置
  • TranslateGemma 本地后端设置,例如运行时路径、模型路径、端口和共享目录

共享设置本地存储在你的 PC 上。仅因为启用此选项,它们不会被上传到任何地方。

隐私声明 — 外部数据传输

此模组会将聊天文本发送到外部翻译服务。 目标取决于你选择的提供商。

  • default 提供商:聊天文本会发送到作者运营的 Google Apps Script 端点。但请求会经过 Google 的基础设施。请参阅 Google Apps Script 附加条款 和 Google API 服务用户数据政策。
  • gas 提供商:聊天文本会发送到你配置的 Google Apps Script 网络应用 URL。请求会通过 Google 的基础设施处理。请参阅 Google Apps Script 附加条款 和 Google API 服务用户数据政策。
  • openai 提供商:聊天文本会使用你的 API 密钥发送到 OpenAI API。请参阅 OpenAI 数据控制。
  • codex 提供商:使用基于浏览器的 OAuth,将令牌存储在本地,然后使用该令牌将聊天文本发送到 OpenAI 服务。该模组还会从 https://modelapi.yoima.com/api/codex-models/list 获取可用模型列表。不会向该模型列表端点发送任何聊天内容。
  • gemini 提供商:聊天文本会发送到 Gemini API。有关 Google AI Studio / Gemini API 使用情况,请在此处查看提供商条款:Gemini API 条款。
  • deepl 提供商:聊天文本会发送到 DeepL API。请参阅 DeepL 隐私政策。
  • anthropic 提供商:聊天文本会使用你的 API 密钥发送到 Anthropic 服务。请参阅 Anthropic 隐私政策。
  • azure 提供商:聊天文本会使用你的 API 密钥发送到 Azure Translator。请参阅 Azure Translator 的数据、隐私和安全。
  • google 提供商:聊天文本会使用你的 API 密钥发送到 Google Cloud Translation。请参阅 Google Cloud 隐私声明。
  • translategemma_local 提供商:聊天文本仅发送到运行在 127.0.0.1 / localhost 上的本地后端。在设置过程中,此模组会从模组配置的第三方托管源下载 llama.cpp 运行时和 TranslateGemma GGUF 模型。

源代码与许可证

源代码:GitHub — yoima-jp/Chatglot
许可证:MIT