FUTO Swipe 开源:手机滑行输入终于不再是"玄学"
2026年6月24日
昨晚折腾到两点。
不是在工作。是在测试 FUTO 刚发布的 Swipe 模型——一个开源的滑行输入系统。你手指在手机键盘上滑动,它猜你打的是什么词。这事儿看起来简单吧?哎,背后全是坑。
先说说背景。FUTO 这家公司你可能没听过,但他们做的 FUTO Keyboard 在隐私圈挺有名——完全离线、不联网、不收集输入数据。昨天他们在 HN 上发了 Swipe 模型(211 points),说是"open models and algorithms",直接在 GitHub 和 HuggingFace 上发布。
发布会演示我一般只信一半。另一半得等开发者社区开始吐槽以后才知道。
不过 FUTO 这次的做法跟其他人不太一样——他们把训练数据也开源了。2024年8月开始收集,到2025年3月,攒了超过 100 万条真实的滑行轨迹,MIT 协议发布。用户自愿在 swipe.futo.org 上滑维基百科的句子,每条轨迹都记录了指滑动路径、目标词汇、速度曲线。不是合成数据,不是仿真,是真人手指在真手机上滑出来的。
卡——死——了?说实话,数据收集这件事比模型本身更让我意外。市面上大部分商业滑行输入的数据都是闭源的,FUTO 反着来。

他们的模型架构分三层。
Encoder(编码器):通用层,布局无关、语言无关。不管你是 QWERTY 还是 DVORAK,不管你在打英文还是德文,第一层都走同一个模型。它的作用是把你滑出来的轨迹转换成一个初步的候选列表。好处是通用,坏处嘛——你猜到了——精度不够。
ContextLM(上下文语言模型):很小的语言模型,针对单语言训练。意思就是说,如果前文是 "I am going to the",那后文滑出来 "store" 的概率应该比 "stove" 高。这一层不需要滑行数据,纯文本就能训。
Decoder(解码器):语言和布局相关的最后一层。它学习了特定键盘布局下特定语言的滑行模式。比如英文 QWERTY 的 "the" 的滑行轨迹和德文 QWERTZ 的 "der" 就完全不一样——虽然两者只差一个字母位置。
嗯,有那味儿了。
我原本以为这东西就是一个端到端的神经网络全部搞定。三层分离的设计意味着什么?意味着如果你要加一个新语言,你只需要训 ContextLM 和 Decoder,Encoder 可以复用。如果你要加一个新键盘布局,你只需要训 Decoder。
不用从零开始。这点很关键。

我拿自己的测试机(Pixel 7,Android 14)装了一下 FUTO Keyboard v0.1.29。下载模型大概 80MB——对,它需要在本地加载模型,不是云端。离线运行,延迟大概 15-30ms。网站的 demo 是服务端跑的,作者特意写了个小字说明"真实场景中延迟更低"。
测了几组。先试简单的:"hello"——对了。"world"——对了。"onomatopoeia"——第一次错了,给了 "onomatopoeia" 的拼写但实际上我滑出了 "onomatopoiea" 的轨迹,模型给了三个候选项,第二个才是对的。怎么说呢,长词确实有挑战。
然后试了一个比较变态的:滑了 "I went to the restaurant and ordered" 整句。前几个词全对,到 "restaurant" 的时候——第一次出了 "restore"。但是 ContextLM 根据前文 "went to the" 快速把 "restaurant" 提到了第一位。
行吧,上下文确实有用。
最让我感慨的是 FUTO 这个授权策略。模型是开源的,但要求你在使用的时候给 FUTO 署名。他们写的是"长久投资",所以希望你让用户知道模型来源。这比那些"免费使用但不能商用"的协议要友好得多。反正对我来说,署名不是负担。

讲真,这可能是今年最被低估的 AI 开源项目之一。不是因为它有多炸裂的跑分,而是因为它解决了一个日常生活里高频、但长期被闭源垄断的问题。滑行输入这个功能,99% 的人每天用,但能用的开源方案几乎没有。Google 的 Gboard 做得很好——但不是开源的,也联网收集数据。FUTO 这条路,至少目前看是对的。
谁在乎?反正我用了一晚上,挺舒服。
不过——如果让我直接把它换掉微信输入法作为默认键盘?我是不敢的。至少现在还不敢。微信生态里的语音转文字、表情联想、剪贴板管理——这些功能 FUTO 一个都没有。滑行输入做得再好,也只是键盘的一个子功能。作为极客玩具满分,作为日常主力还有距离。
但方向对了。反正我在盯着它的 GitHub 仓库。
关于维基框架
维基框架(Wiki Framework)是一套面向复杂业务场景的轻量级开发框架,支持多语言、多协议、多部署形态。适用于企业级应用开发、微服务架构、云原生部署等场景。
- 官网:https://framewiki.com
- Gitee:https://gitee.com/wiki-framework
- GitHub:https://github.com/wiki-framework
- 示例项目:https://gitee.com/cdkjframework/framewiki-example
- 📄 许可证:MulanPSL-2.0(木兰宽松许可证,第2版)