Skip to content
amzxyz edited this page Dec 18, 2024 · 4 revisions
  • 我是因为Linux系统开始接触rime输入法,然而在使用中我发现了两个现象:第一,大家热衷于学习如何配置,如何能让rime配置的更加好用。第二,码圈一些大佬喜欢算码,自创输入部局和方案。然而更多的人是在是用着基础功能,那就是传统的双拼全拼,后者的量要更大一些,我也很长一些时间不满足rime的体验,我无法找到一个真正体验好的方案,而且看到更多的是因为一个字提一个PR的项目,这种进化速度要到什么时候?什么时候才能有大厂一般的输入体验?综合看下来,除非是使用辅助码、特定的字词模式、形码单字,其余没有真真好的项目存在。 调研下来我发现体验差主要来自几个方面,1、如功能的缺失,好在一些大佬基于lua进行扩展进行了弥补。2、如词库的杂乱,都是东拼西凑,词频错乱(白霜的出现解决了词频的问题让体验飞升)3、没有现成的带声调词库,不要提明月等,多音字的处理上面找不到一个,pypinyin库做了很大的贡献然而多数还是利用工具,事实是连汉典、百度这样的网站都是错漏百出。ai也无法相信,怎么办?

  • 一个大胆的想法,不知道底子有多深的念头在我脑海里浮现,我来做!我其实码字能力很弱,10根手指我大概率用的也就6根,因此我之前从没想过这件事情会是我来做,我不是一名程序猿,好在自认为总能找到对的思维方式,因此有勇气去尝试做一些事情。

  • 经过调研想要提升现有rime输入体验,需要做很多细碎的工作,首先是收集词组,全网收集了400万行作为词库底子,寻找收集配比一个比例很兼容的语料库,手动修订多音字词汇的拼音元数据,再依靠pypinyin刷新整个词库,基础词库要着重在2-3字词汇,2字词汇容易建立只需要依靠语料进行统计那么末尾大多数低频的可以被筛选掉,3个字的词汇在输入法中起到举足轻重的地位,修不好三个字的词这个词库永远是个垃圾,他能让语句结构化,能让打字节奏化。4个字的词汇更多的用途是用于将2个字的词汇组合起来,如果单单依靠词频一般只有最高频的两个词才能自然成词,后面的怎么办?第一种就是依靠4字词库将他们连续起来你自然可以打出来这个词汇,最好的办法是利用模型将匹配的概率算出来应用到组句当中。5个字以上的词汇更多的是起到联想的作用,打出前四个字后续跟着一个常见的整句长词。

  • 因此抓住这些重点开始动工,他们将同步进行,拼音错不错不怕先做出来我们常用的能胜任就行,每天抽休息时间手动修订1-2个多音字,只限词库范围,因为多音字是个无底洞,租用服务器进行语料的清洗、分词(这里感谢结巴,完美的体验)开始多轮多层级多个目标的统计词频,精简词库,完善词库,词库每进化一次,再去做为基础分词库再进行分词,不断的淬炼让分词精准,分析不同字数之间得包含关系,精简结构,让词库更加优质减小体积,同时不断的探索语言模型,是粗粒度分词好用还是细粒度好用,是2gram 还是3gram更加好用不间断的去跑去测试

  • 这是一次完整的推倒重来,我很怕群里的朋友在我测试阶段获得不好的体验,很幸运他现在已经恢复到可以日用的地步,我正在努力让他更加精进,最终我将实现词库的拼音正确率95%以上,优质的词频排序,实现模型和词库的完美搭配,愿景是将它打造成为最全面的开源拼音标注库,是rime最好用基础底座,我希望早点等到更优质的大模型插件进驻rime,这条路很累,我感受到一个人干了超量的工作,好在基础的工作永远不会过时,我会持续维护下去!