发现一部分扩展词头 inte 存在问题,json文件在处理时可能不小心哪里弄错了。待修正。
商务版和外研社版的拉鲁斯词典不是同一部书,底本不同,主编不同,选录词条和释义、例句都存在差异。
更新了下语法文件,现在解析错误还有1100多个,但语法已经设计的比较复杂了。
外研的正封加上了。像素略低,但词典显示足够了。
谢谢了,我这里实际有整套高清图像,但目前还不适合放出来,需要取得原制作者的同意。
只放个封面图做词典软件logo用而已,没必要搞那么复杂。 ![]()
就这么搞好了,解析错误的1100多个挑出来用 ai 处理,我测试过,效果还行。还有错误,就用正则和手工等。
词头错误问题修正了,是之前应该判断suffix的错误的判断了词头,另外修复a,de开头的词的问题。
拉鲁斯法汉双解词典_expanded.zip (6.0 MB)
这是语法树文件,是在以前的json上加了parse_tree字段,error_parse.txt里面有解析错误的词条。
拉鲁斯法汉双解词典_parsed.zip (17.0 MB)
这个语法树文件好像有点复杂,估计 ai 没法生成相匹配的,精确位置计数就先把 LLM 难住了。
这是lark生成的,我除了row和column信息全部输出了。可以直接根据这个位置信息从后往前给原文加标签,也可以进一步结构化处理成数据库。
我不给 Gemini 2.5 pro 模型任何提示,只让它给词典文件加xml标签,输出结果如下,如今的前沿模型还是很聪明的。
âme [am] n. f. (lat. anima “souffle, vie”). ❶ Sur le plan religieux, principe de vie et de pensée de l’homme 灵魂: Croire en l’immortalité de l’âme. 相信灵魂不死 ❷ SOUT. Individu, considéré du point de vue moral, intellectuel, etc. 〈雅〉心灵,人物: En perdant cet homme nous avons perdu une âme noble et généreuse. 这个人的去世使我们失去了一位高尚的人,一位慷慨大方的人。❸ Personne qui anime, qui dirige 首领,中心人物,核心人物: Cet homme était l’âme du complot (syn. agent, animateur, moteur). 此人是主谋。❹ LITT. Habitant 〈书〉生灵,居民: Une ville de 900 000 âmes. 有90万居民的城市 ❺ MUS. Petite baguette de bois placée dans un instrument à cordes et qui communique les vibrations à toutes ses parties.〔乐〕(弦乐器上的)音柱 ❻ BX-A. Noyau porteur du revêtement externe d’une sculpture (dans l’art médiéval, notamm.).〔美〕塑像的骨架 ❼ ARM. Évidement intérieur d’une bouche à feu.〔武器〕枪膛, 炮膛 ❽ Fil, toron ou cordage axial d’un câble. (电缆)心线; 芯子 ❾ Âme sœur, personne que ses sentiments, ses inclinations rapprochent d’une autre 知己: Trouver l’âme sœur. 找到知己 ‖ bonne âme, personne compatissante et vertueuse (souvent iron.) 〈讽〉好人, 善心人: Les bonnes âmes n’ont pas manqué de lui révéler son infortune (= les personnes malveillantes, faussement sincères). 那些面善心不善的人没有忘记揭他的厄运。‖ En son âme et conscience, en toute honnêteté, pureté de sentiments; en se laissant guider par la seule justice 凭良心: Les jurés se prononcent en leur âme et conscience. 陪审员们凭良心作出判断。‖ État d’âme, impression ressentie, sentiment éprouvé; au plur., disposition d’esprit jugée déplacée (péjor.) 感受, 情绪, 精神状态; [复数]〈俗,贬〉心事, 苦衷, 顾虑, 顾忌, 不安: Nous ne sommes pas là pour écouter vos états d’âme. 我们在这儿不是为了听您叹苦经的。‖ Rendre l’âme, mourir. 〈书〉死, 死亡
<?xml version="1.0" encoding="UTF-8"?>
<entry>
<headword>
<orth>âme</orth>
<pron>[am]</pron>
<gramGrp>
<pos>n.</pos>
<gen>f.</gen>
</gramGrp>
<etym>(lat. anima “souffle, vie”).</etym>
</headword>
<sense n="1">
<domain>Religieux</domain>
<def>
<fr>Sur le plan religieux, principe de vie et de pensée de l'homme</fr>
<zh>灵魂</zh>
</def>
<example>
<fr>Croire en l'immortalité de l'âme.</fr>
<zh>相信灵魂不死</zh>
</example>
</sense>
<sense n="2">
<label type="register">SOUT.</label>
<def>
<fr>Individu, considéré du point de vue moral, intellectuel, etc.</fr>
<zh><label type="register">〈雅〉</label>心灵,人物</zh>
</def>
<example>
<fr>En perdant cet homme nous avons perdu une âme noble et généreuse.</fr>
<zh>这个人的去世使我们失去了一位高尚的人,一位慷慨大方的人。</zh>
</example>
</sense>
<sense n="3">
<def>
<fr>Personne qui anime, qui dirige</fr>
<zh>首领,中心人物,核心人物</zh>
</def>
<example>
<fr>Cet homme était l'âme du complot <note>(syn. agent, animateur, moteur)</note>.</fr>
<zh>此人是主谋。</zh>
</example>
</sense>
<sense n="4">
<label type="register">LITT.</label>
<def>
<fr>Habitant</fr>
<zh><label type="register">〈书〉</label>生灵,居民</zh>
</def>
<example>
<fr>Une ville de 900 000 âmes.</fr>
<zh>有90万居民的城市</zh>
</example>
</sense>
<sense n="5">
<label type="domain">MUS.</label>
<def>
<fr>Petite baguette de bois placée dans un instrument à cordes et qui communique les vibrations à toutes ses parties.</fr>
<zh><label type="domain">〔乐〕</label>(弦乐器上的)音柱</zh>
</def>
</sense>
<sense n="6">
<label type="domain">BX-A.</label>
<def>
<fr>Noyau porteur du revêtement externe d'une sculpture (dans l'art médiéval, notamm.).</fr>
<zh><label type="domain">〔美〕</label>塑像的骨架</zh>
</def>
</sense>
<sense n="7">
<label type="domain">ARM.</label>
<def>
<fr>Évidement intérieur d'une bouche à feu.</fr>
<zh><label type="domain">〔武器〕</label>枪膛, 炮膛</zh>
</def>
</sense>
<sense n="8">
<def>
<fr>Fil, toron ou cordage axial d'un câble.</fr>
<zh>(电缆)心线; 芯子</zh>
</def>
</sense>
<locutions>
<locution n="9">
<term>Âme sœur</term>
<def>
<fr>personne que ses sentiments, ses inclinations rapprochent d'une autre</fr>
<zh>知己</zh>
</def>
<example>
<fr>Trouver l'âme sœur.</fr>
<zh>找到知己</zh>
</example>
</locution>
<locution>
<term>bonne âme</term>
<def>
<fr>personne compatissante et vertueuse <note>(souvent iron.)</note></fr>
<zh><label type="usage">〈讽〉</label>好人, 善心人</zh>
</def>
<example>
<fr>Les bonnes âmes n'ont pas manqué de lui révéler son infortune <note>(= les personnes malveillantes, faussement sincères)</note>.</fr>
<zh>那些面善心不善的人没有忘记揭他的厄运。</zh>
</example>
</locution>
<locution>
<term>En son âme et conscience</term>
<def>
<fr>en toute honnêteté, pureté de sentiments; en se laissant guider par la seule justice</fr>
<zh>凭良心</zh>
</def>
<example>
<fr>Les jurés se prononcent en leur âme et conscience.</fr>
<zh>陪审员们凭良心作出判断。</zh>
</example>
</locution>
<locution>
<term>État d'âme</term>
<def>
<fr>impression ressentie, sentiment éprouvé; au plur., disposition d'esprit jugée déplacée <label type="usage">(péjor.)</label></fr>
<zh>感受, 情绪, 精神状态; [复数]<label type="usage">〈俗,贬〉</label>心事, 苦衷, 顾虑, 顾忌, 不安</zh>
</def>
<example>
<fr>Nous ne sommes pas là pour écouter vos états d'âme.</fr>
<zh>我们在这儿不是为了听您叹苦经的。</zh>
</example>
</locution>
<locution>
<term>Rendre l'âme</term>
<def>
<fr>mourir.</fr>
<zh><label type="register">〈书〉</label>死, 死亡</zh>
</def>
</locution>
</locutions>
</entry>
整体效果还行,不过还是会加原词典没有的内容。
除了这种幻觉,用 ai 打标签还有一个麻烦,文件很多的话,很难让它从头到尾保持一致。不过如果只有1000多个词条,可以把它容纳在一个context或者对话里,一致性会稍强一些。
先确定标签标准,用了哪些,怎么加,把它们写在prompt里,然后再给若干组典型的示例,可能效果会不错。至于幻觉,有少量关系不是很大,生成文档后把标签全部删除,再跟原文对比一遍即可。
原书里这类错误还是不少的,发现了的我尽量都改了,但不大可能改干净。
想了想,我们这个词典输出为xml格式,然后用css添加格式比较合适。1)用xml,它本身就是格式化数据,不管词典软件界风云、流行怎么变化,都可以自由准确转换;2)词典正文内在的结构比较简单有规律,不需要html那么多花头,如果想用html,也可以从xml转换;3)xml在结构上更清晰,容易修改编辑。
至于标签,用简写、全称都行,可以在我上面列举的标签中再添加 entry、sense(sen)、gram、note等。
我现在改了些文本错误,然后也改了下语法规则,现在不能解析的文本减少到742条了,文本还有500多句没检查,然后规则也有一些没加进去,有一些文本是缺翻译的,这些不好处理。其他的有缩写词条,多个用法的词条和括号中法文混合问题还没处理。如果都处理了应该不能解析的词条会降到100以下。
辛苦了,你写的有些正则,像
ZH_SENT: /(?:[\u4e00-\u9fff0-9;,“〈《〔(…]|(?=\([\u4e00-\u9fff]|\[[\u4e00-\u9fff]))([\u4e00-\u9fff0-9;\.,《》〈〉〔〕():?!;?…、。\[\]\(\)“”!℃%\- ]|\/(?=[\u4e00-\u9fff])|[a-zA-ZÀÂÉÊÈËÌÏÎÔÙÛÇÆŒàâéêèëìïîôùûçæœ\-]{1,10}(?=[\u4e00-\u9fff])|\/ *(?=\(?[\u4e00-\u9fff])|[|\([^\)]+?\)|\[[^\)]+?\]|(?<=“)[a-zA-ZÀÂÉÊÈËÌÏÎÔÙÛÇÆŒàâéêèëìïîôùûçæœ \-]+)*[\u4e00-\u9fff0-9;,〈〉\)\]…〔〕()。”?!!?%\.]|[\u4e00-\u9fff]/
不容易看明白和擅自改动,我就不凑热闹添乱了,全盘委托给你处理格式化的问题,我在这里坐享其成。


