Karukan是什么?用AI大模型重塑日语输入的神经汉字转换IME完全解读
【免费下载链接】karukanJapanese Input Method System for Linux, macOS, Neural Kana-Kanji Conversion Engine项目地址: https://gitcode.com/GitHub_Trending/ka/karukan
Karukan 是一款面向 Linux 与 macOS 的免费开源日语输入法(IME),它的核心是「神经かな漢字変換引擎」:不依赖传统统计字典,而是用基于 GPT-2 / Qwen3 的 AI 大模型进行 kana→kanji 转换,首字正确率(Accuracy@1)达86%。此外它还支持实时转换、上下文感知、转换学习和表情符号输入,堪称用 AI 重塑日语输入体验的一次完整实践。
为什么 Karukan 不一样:AI 大模型驱动的汉字转换 🤖
传统日语输入法(如 Mozc、fcitx5 默认组件)依赖统计语言模型 + 词库打分。Karukan 走的是另一条路:
- 神经模型推理:内置 llama.cpp 推理后端,加载 Q5 量化的 GGUF 小模型(26M~109M 参数),在本地 CPU 上完成汉字转换,无需联网推理
- 自适应策略:默认
adaptive策略会根据主模型推理耗时(max_latency_ms)自动在主模型与轻量模型之间切换,慢的时候保速度,快的时候保质量 - 优雅降级:首次启动时模型从 Hugging Face 后台下载,下载期间平假名输入和字典转换照常可用,模型就绪后自动启用 AI 转换
- 混合候选来源:模型推理之外还叠加系统字典、用户字典、学习缓存与候选改写器,候选优先级为 📝 学习 → 👤 用户字典 → 🤖 AI → 📚 系统字典 → 平/片假名 → 🔄 改写
模型注册表定义在 karukan-engine/models.toml,神经转换的核心实现位于 karukan-engine/src/kanji/(包括 llama.cpp 推理、模型下载与模型配置)。
核心功能一览 ✨
| 功能 | 说明 |
|---|---|
| 🔄 实时转换(Live Conversion) | 边输入边显示转换结果,不用按空格;Ctrl+Shift+L随时开关 |
| 🧠 上下文感知 | 读取编辑器光标周边文本,"虫歯の治療のために" 后输入はいしゃ会优先给出「歯医者」 |
| 📝 转换学习 | 记住你选过的结果,下次优先显示;还支持前缀预测(输入わせだ即出现「早稲田大学」) |
| 😀 表情符号输入 | 平假名读法(ぴえん→ 🥺)和 Slack 风格:smile→ 😄 双模式 |
| 🔁 候选改写器 | 自动生成半角片假名、全/半角字母、符号变体、多种数字写法(汉字数字、罗马数字、16/8/2 进制) |
| 🧩 Chunk 分段机制 | 长文按 30 字一段转换,转换时间恒定、前半显示不闪烁、数字不被 AI 篡改 |
候选改写器由 Mozc 移植而来,源码见 karukan-engine/src/rewriter/。
架构设计:一个 Rust 引擎,两大平台复用 🏗️
Karukan 采用 Cargo workspace 组织,「引擎 + 前端」分离是它最漂亮的设计:
- karukan-engine/— 核心库:罗马字→平假名转换(200+ 规则 + Trie)、llama.cpp 神经汉字转换、双数组 Trie 系统字典、学习缓存
- karukan-im/core/— 共享 IME 引擎:
Empty → Composing → Conversion状态机,以及供 macOS 使用的karukan-imserver(stdio JSON-RPC 服务) - karukan-im/fcitx5/— Linux 前端:Rust C FFI + C++ fcitx5 插件
- karukan-im/macos/— macOS 前端:Swift + InputMethodKit,Swift 只负责事件桥接与 UI,全部 IME 状态在 Rust 侧
- karukan-cli/— 工具链:字典构建、Sudachi 转换、Web 字典查看器、AJIMEE-Bench 评测、HTTP API 服务
状态机与实时转换的分块逻辑在 karukan-im/core/src/core/engine/ 中实现。
快速上手:Linux 与 macOS 安装步骤 🚀
第一步:获取代码
git clone https://gitcode.com/GitHub_Trending/ka/karukan cd karukanLinux(fcitx5)安装
先安装 fcitx5 开发依赖与 Rust 工具链,然后执行:
cd karukan-im/fcitx5/fcitx5-addon cmake -B build -DCMAKE_INSTALL_PREFIX=/usr cmake --build build -j sudo cmake --install build fcitx5 -r之后打开 fcitx5 配置工具,在可用输入法中搜索「karukan」并添加到左侧:
添加后 fcitx5 的输入法列表中即出现 Karukan 条目:
💡 也支持免 sudo 的用户级安装(
-DCMAKE_INSTALL_PREFIX=$HOME/.local,需配置FCITX_ADDON_DIRS),详见 karukan-im/fcitx5/README.md。
macOS 安装
cd karukan-im/macos make install # 构建 + 打包 Karukan.app + 自动下载字典与模型然后注销并重新登录,到「系统设置 → 键盘 → 输入源」添加Karukan即可。详细步骤见 karukan-im/macos/README.md。
别忘了系统字典
纯模型推理词汇有限,官方强烈建议安装构建好的系统字典(dict.bin,可从项目发布页下载dict.tgz),放入数据目录:
- Linux:
~/.local/share/karukan-im/dict.bin - macOS:
~/Library/Application Support/com.karukan.karukan-im/dict.bin
(macOS 的make install会自动完成这一步。)
配置与进阶技巧:让 AI 输入法更懂你 ⚙️
配置文件位于~/.config/karukan-im/config.toml(macOS 为~/Library/Application Support/com.karukan.karukan-im/config.toml),最常用几项:
| 配置 | 默认 | 作用 |
|---|---|---|
live_conversion | true | 实时转换开关 |
strategy | adaptive | adaptive/light(低配电脑省内存)/main |
use_context | true | 是否使用周边文本作上下文 |
num_candidates | 9 | 候选数量 |
新手向的低配电脑建议直接设为strategy = "light",仅加载一个 36M 轻量模型,内存占用更低、响应更稳。完整配置说明见 docs/configuration.md。
值得一试的高效技巧
Ctrl+J锁定分段:前半已正确转换、不想让它再变时,在光标处按下即可把左侧文字"冻结",机制详解见 docs/chunking.mdCtrl+I直达 AI 候选:跳过混合列表,直接看 🤖 模型给出的候选Ctrl+T/Ctrl+R:按来源过滤候选(📝 学习 → 📚 字典 → 🤖 AI → 🔄 符号改写)Ctrl+Backspace:删除误学的候选(Mozc 同款操作)Ctrl+Shift+V:开启详细显示,可看到每次推理耗时、所用模型与上下文Ctrl+K/ Shift+字母:切换片假名模式 / 进入英数字模式,混合输入如わたしはLinuxが→ 「私はLinuxが」
完整按键列表见 docs/key-bindings.md,符号与半角全角设置见 docs/symbols.md,用户字典(支持 Mozc/Google 输入法 TSV 直接导入)见 docs/user-dictionary.md。
总结:值得关注的 AI 输入法标杆 ✅
Karukan 证明了「大模型 + 本地推理」完全可以落地到日常输入场景:26M~109M 的小模型跑在 CPU 上,86% 的首选正确率,加上实时转换、上下文感知、转换学习与巧妙的 Chunk 分块机制,既智能又稳定。全部代码以 MIT OR Apache-2.0 双许可开源,Rust 编写、跨 Linux/macOS,无论是想体验 AI 日语输入的新手,还是想研究 IME 架构的开发者,都值得深入了解这个项目。
【免费下载链接】karukanJapanese Input Method System for Linux, macOS, Neural Kana-Kanji Conversion Engine项目地址: https://gitcode.com/GitHub_Trending/ka/karukan
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考