rimind 是专为 Linux 平台 fcitx5-rime/ibus-rime 打造的大模型实时联想 Lua 插件,解决原生 Rime 仅靠静态词库、长句 / 创意文本联想能力薄弱的痛点。
不同于内置.gram离线语法模型, rimind 接入云端 / 本地大语言模型,分为忠实预测、自由指令联想两类候选,输入拼音后一键触发 AI 生成短句、诗词、翻译、创意文案。
核心架构做了进程隔离:将网络 LLM 请求剥离为独立后台守护进程,彻底规避 librime 单线程阻塞卡顿问题,全程不干扰原生打字流畅度,适配朙月、雾凇等绝大多数 Rime 拼音方案。
双联想候选机制
插件会在候选栏固定占用倒数第 8 、 9 两位,两种模式分工明确:
- 🎯 忠实预测(第 9 位) 严格贴合已输入拼音读音,优先匹配常规词组、完整短句,适合日常办公、聊天正文,不产生偏离原意的无关内容。
- ✨ 自由联想(第 8 位,特色功能) 支持两大使用场景:
- 创意补全:根据拼音续写诗句、文案、成语、短句;
- 指令模式:整串拼音直接当作自然语言指令下发给 LLM ,无需切换翻译软件。
无阻塞异步架构
librime 是单线程、非线程安全引擎,直接同步调用 LLM 网络接口会造成打字卡死, rimind 采用共享内存文件 IPC 分离架构:
- Rime Lua 前端(同步纳秒级) 仅读写
/dev/shm共享临时文件,读取当前输入拼音,不会发起网络请求,绝不阻塞输入; - 独立 Python Daemon 后台进程(异步网络) 常驻系统服务,监听文件变化、防抖节流,并行发起两路 LLM 请求;
- 触发刷新逻辑: 后台提前预加载 AI 结果,按下默认快捷键
F2, Rime 重新渲染候选, AI 联想词条瞬间展示;无输入时按 F2 不会拦截系统按键。
进程通信流程:
用户打字 → Rime Lua 写入拼音临时文件
↓ 内存文件 IPC 隔离
rimind 后台服务防抖并发调用 LLM
↓ 结果写入共享缓存
按 F2 → Rime 读取 AI 候选并展示在栏末
完整兼容 LLM
支持所有遵循 OpenAI SDK 标准的 API 接口,云端、本地模型全覆盖:
- 云端: OpenAI 、 DeepSeek 、 Gemini 、 Claude 系列轻量高速模型(推荐 flash/haiku 低延迟版本);
- 本地离线: Ollama 、 vLLM 本地推理服务,输入完全不出本机,隐私敏感用户首选。 底层强制开启
function calling结构化输出, AI 返回文本严格拆分短句,候选干净无多余注释;不支持工具调用的模型会自动降级纯文本解析,无需修改配置。
部署与使用
1. 前置依赖
- Linux 系统 + fcitx5-rime /ibus-rime ;
- 系统预装 Python ≥3.11 ;
- librime-lua 插件(发行版包自带);
- 可用 LLM API 密钥 / 本地推理服务。
2. 一键自动部署
git clone https://github.com/69gg/rimind
cd rimind
# 复制并填写 API 、模型配置
cp config.toml.example config.toml
$EDITOR config.toml
# 自动完成环境、插件、系统服务安装
./deploy.sh
部署脚本自动完成:
- 创建 Python 虚拟环境,安装依赖不污染系统;
- 注入 Lua 过滤器到指定 Rime 方案;
- 注册 systemd 用户后台服务并自动启动;
- 自动执行 Rime 重新部署。
自定义部署参数示例
# 挂载朙月+雾凇两套方案,修改刷新键为反引号
./deploy.sh --schemas luna_pinyin,rime_ice --refresh-key grave
3. 日常基础操作
- 触发联想:输入拼音后按
F2; - 临时全局停用:
make disable,恢复make enable; - 查看实时 LLM 请求日志:
make logs; - 重启后台服务:
make redeploy; - 完整卸载(保留密钥配置):
./uninstall.sh。
六、配置文件核心参数( config.toml )
[llm]:接口地址、 API 密钥、模型名称、超时时间,可单独调整两路联想温度;[trigger]:输入最短字符、防抖等待毫秒,控制调用频率,避免频繁扣费;force_tool_call:强制结构化输出,模型不支持则自动降级。 刷新快捷键由部署参数指定,修改后需重新执行deploy.sh生效。
