继续搓英汉双解词典v3

💡 原文中文,约2200字,阅读约需6分钟。
📝

内容提要

作者用AI制作英汉双解词典第三版,改用YAML格式和RDBMS存储,设计三张表(词头、义项、检索串)支持模糊搜索。利用CEFR词表按等级采集,AI递归生成词条,发现Deepseek成本低但需清洗噪音数据。未来计划实现按需查询,用户查词时AI即时生成并入库,网址为def.est.im。

🔎

延伸解读

YAML与扁平化设计:AI生成更稳定

作者从JSON转向YAML,并刻意避免嵌套结构,要求schema中不允许出现方括号。这种扁平化设计减少了AI生成时的格式错误,配合validator实现1-pass通过。经验表明,LLM对缩写不敏感,使用全称(如noun而非n)能显著提升输出一致性。

RDBMS三表结构:兼顾查询与扩展

第三版采用传统关系型数据库,设计words、senses、surfaces三张表。surfaces表存储所有可检索字符串(原形、变形、同义词等),支持模糊搜索和中文释义查询。这种设计避免了大量小文件的不可控性,同时保持查询效率。

CEFR词表与递归采集:效率与陷阱

利用CEFR词表按等级采集,并采用递归方式生成词条,但发现生僻词漂移问题。通过继承父词级别和过滤低频词(词频>100万)来优化。Deepseek成本极低,但数据需二次清洗,如混入复数、西语词汇等噪音。

未来方向:按需生成与语言学习者导向

计划实现on-demand查询:用户查词时若未命中缓存,则实时调用AI生成并入库。作者强调服务语言学习者,包括人名、地名等传统词典不覆盖的内容,并考虑纳入西语词汇以反映流行文化。

Q&A

英汉双解词典v3的数据存储格式是什么?

第三版改用YAML格式存储数据,并采用传统RDBMS(关系型数据库)来管理,设计了三张表:words(词头)、senses(义项)、surfaces(检索串)。

英汉双解词典v3如何实现模糊搜索?

通过设计三张表,其中surfaces表存储所有可检索的字符串(如原形、变形、同义词、反义词、搭配),并利用SQL的LIKE 'run%'进行前缀匹配,支持模糊搜索和子串匹配。

作者为什么从JSON转向YAML?

因为JSON在AI生成时容易出错,而YAML支持block scalar(|)多行文本且无需转义,层级更扁平,AI生成的成功率更高,基本一次通过。

作者如何利用CEFR词表来采集词汇?

作者下载了权威的CEFR词表(17万词),按等级(A1到C2)顺序遍历,并利用词频过滤(只采集词频100万以上的词)来清洗数据,避免生僻词和噪音。

英汉双解词典v3的生成过程是怎样的?

作者让AI编写了一个递归采集器,先随便想几个单词,让AI生成词典条目,然后对解释和例句进行分词和翻译,直到所有内容能自我包含,从而自动生成完整词典。

作者为什么决定在词典中包含人名、地名等专有名词?

因为作者认为对语言学习者来说,查询人名、地名时希望了解其内涵、来源和是否得体,而传统词典只提供简单的地理或身份信息,无法满足需求。

英汉双解词典v3的未来计划是什么?

未来计划实现按需查询:用户查词时,如果命中缓存直接返回;未命中则当场调用AI生成、校验并入库。

🏷️

标签

➡️

继续阅读