项目简介
| 字段 |
内容 |
| 项目名称 |
togatoga/karukan |
| 项目地址 |
https://github.com/togatoga/karukan[1] |
| Star 数 |
561 |
| Fork 数 |
32 |
Karukan 是一款面向 Linux 与 macOS 的开源日语输入法系统,核心卖点是用小型神经网络模型做「假名→汉字」转换,而不是传统 IME 里纯规则或统计语言模型那一套。项目采用多 crate 架构:karukan-engine 负责罗马字转平假名与 llama.cpp 驱动的神经转换;karukan-im 提供共享 IME 引擎;Linux 侧通过 karukan-fcitx5 接入 fcitx5,macOS 侧则用 Swift/InputMethodKit 实现原生输入法前端。
与传统 Mozc、Google 日本語入力等方案相比,Karukan 把 GPT-2 系小模型以 GGUF 格式在本地推理,首次启动会从 Hugging Face 自动拉取模型,之后离线可用。项目采用 MIT 或 Apache-2.0 双许可,系统词典基于 SudachiDict 构建,部分候选重写逻辑移植自 Mozc。
核心特性
- 神经假名汉字转换:基于 GPT-2 架构的小模型,通过 llama.cpp 在本地完成 GGUF 推理,支持上下文感知的日语转换。
- 实时/live 转换:输入过程中即可看到转换结果,无需每次按空格确认(可用
Ctrl+Shift+L 开关)。 - 自适应模型切换:主模型与轻量模型配合,latency 超阈值时自动降级,兼顾精度与响应速度。
- 转换学习:记住用户选过的候选,下次优先展示;支持前方一致预测,输入途中也能给出学习过的词。
- 丰富候选与表情:移植 Mozc 的半角片假名、数字多表记等候选重写;支持假名读音与 Slack 风格
:trigger 表情输入。
快速开始
Linux 用户需先安装 Rust 与 fcitx5 开发依赖,再从仓库构建 fcitx5 插件。以 Debian/Ubuntu 为例:
# 安装依赖
sudo apt install fcitx5 fcitx5-modules-dev libfcitx5core-dev \
libfcitx5config-dev libfcitx5utils-dev extra-cmake-modules \
cmake make gcc g++ pkg-config clang libclang-dev \
libssl-dev libxkbcommon-dev
# 克隆并构建(系统级安装)
git clone https://github.com/togatoga/karukan.git
cd karukan/karukan-fcitx5/fcitx5-addon
cmake -B build -DCMAKE_INSTALL_PREFIX=/usr
cmake --build build -j
sudo cmake --install build
fcitx5 -r
安装完成后,打开 fcitx5-configtool,在「Available Input Method」中搜索 karukan 并添加到输入法列表。首次启动会自动下载 GGUF 模型(约百兆级),需等待数分钟;之后使用缓存即可秒开。macOS 安装步骤见仓库内 karukan-macos 文档。
为什么火了
日语输入法长期被 Mozc、ATOK 等成熟方案占据,Linux 桌面用户尤其缺少「既现代又本地可控」的选择。Karukan 把大模型时代常见的 llama.cpp 本地推理思路落到 IME 这一高频场景:小模型、低延迟、可离线,还能做 surrounding text 上下文转换——这对开发者、在日工作者和 NLP 爱好者都有吸引力。
另一方面,项目结构清晰、CI 覆盖 engine/im/fcitx5/macos 多条线,v0.1.0 已发布并进入 openSUSE Tumbleweed 等发行版打包渠道,降低了「能装能用」的门槛。在 AI 工具链与 Rust 生态持续升温的背景下,「把神经网络塞进日常输入法」这一组合既实用又有话题性,是近期 GitHub Trending 上值得关注的 niche 开源项目。
引用链接
[1]https://github.com/togatoga/karukan