Wikitionary Copilot:论辞典应用支持 MCP 的必要性与技术可行性

Wikitionary Copilot 是什么?

用 FastGPT 实现了一个简单的对话机器人,回答时会在线调用 https://ja.wiktionary.org/w/api.php 搜索对应的单词,然后根据返回的结果生成回答。

为什么标题的后半段是:「论辞典应用支持 MCP 的必要性与技术可行性」

MCP 全称「Model Context Protocol」,中文互联网一般叫「模型上下文协议」,简单理解就是给 LLM 调用的工具。具体可参考 What is the Model Context Protocol (MCP)? - Model Context Protocol

具体效果可以去试试上面对话机器人,由于通过提示词强制要求参考 Wikitionary,所以(可能)会少说点废话,找不到就会直接回答没有。

虽然我做过一些优化,但很多时候还是会出错,为了抛砖引玉,搞了个最简单的在线原型给大家玩玩。

想讨论的必要性:辞典作为最典型的知识库,可以有效解决 LLM 的幻觉、说废话、回答质量无保障等等问题。(这条应该没什么好讨论的)

想讨论的技术可行性:

  1. 目前缺乏对辞典用户关于这方面真实需求的讨论。上面的对话机器人并不是 LLM + 辞典的唯一使用场景。具体可参考 AI & 辞典的正确结合方式:搜文解字,一个辞典增强生成框架(DAG)
  2. 目前论坛主流的辞典软件想支持 LLM 外部调用的话,都得用 GitHub - liuyug/flask-mdict: Flask Mdict Server. Query word online with MDICT dictionary 这样的框架提供 MCP Sever,但目前没有看到有相关工具。其实就是想撺掇大家帮我踩坑2333
  3. 直接把辞典转成 txt,整个丢到知识库里效果并不好,因为这种做法其实是跳过了构建知识库最最重要的一步「向量化」——由于辞典的数据结构是类似键值对(词条-解释),和常规知识库的数据结构(标题-内容)并不一样,直接硬套通用的解决方案效果很差。还是要结合具体的场景,发明专门的分块和索引算法。

源码

如果你有兴趣自己优化(比如切换数据源到其他辞典网站),可以使用下面的 JSON 文件在 FastGPT 中快速复现上面的对话机器人,然后把其中调用 https://ja.wiktionary.org/w/api.php 的地方改成你想要的网站即可。

https://fastgpt.io/ 注:这是国际版的官网,虽然可以通过微信和支付宝付款,但官方强调和国内版数据不互通。

Wikitionary Copilot.zip (4.2 KB)

2 个赞

如果本身是 JSON 格式的词典,或者 HTML + JSON 格式的词典,实现 MCP 会很容易。HTML 负责完整显示,提取的 JSON 负责精简释义,或者供外部客户端使用,这样最完美。

1 个赞

话说如果坛里有个统一的在线LLM能一键Rag掉论坛发布过的所有mdx就绝了,再不然将已Rag的LLM和所用的mdx端侧下来分散负担。唉,多希望辞典也有类似维基或Git般的协作,一人喂一点mdx,慢慢打磨出一个日渐完善的辞典LLM,继续美梦中。。。

插个题外话,谁见过网上出现过可下载,又完整训练过安娜档案的LLM了,或者Tor中?这里继续多做一个安娜推出官方LLM的美日梦啦。。。

就是不知安娜收不收mdx,坛里有人发过建议吗,统一下载绝对便利不少,还省去网盘混杂的麻烦。mdx也有爬网来的资源,这恰恰是安娜遗漏的知识。

不过倒有些好奇,宇宙最全在线词典网站导航怎么就没人以某种仿维基的方式维护了,明明只要坛里每几人偶尔维护或是加个一条,导航就具有一定的实用性了,何况坛里人才辈出,这也不像训练LLM那样吃技术吃设备的。

1 个赞

很好的建议,分享下我一直在弄的一个小工具,希望能抛砖引玉(笑)

“宇宙最全”刚又添加了“维基百科图书馆”,其中的资料部分恰好类比于维基版的宇宙最全,坛友们有余力、有余暇的大可一起维护维护,毕竟受益的是也许就包括自身在内的人人,望大家合作愉快!

1 个赞

请问前辈有辞典协会那本《优良辞典六法目录》的pdf吗?这本书的风评如何呀?

1 个赞