V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
RamenCurator

开虚拟机用 openclaw 整理 Anki 卡,已完成

  •  
  •   RamenCurator · 3 days ago · 1481 views

    这事已亲自做完。整理了约 5000 张卡,生成了约 3000 张卡。简单验收,暂没发什么大问题。但小问题是依然是有一点,凑合用。自用算够了吧。
    搜了下本站,还没人说这事。就开帖说下:这事可做。

    虚拟机,有存/回档功能,做砸了回档。里面不放多余的个人信息。

    安装 openclaw 。
    Anki 卡组放进虚拟机。下 AnkiConnect 插件。

    说需求。

    我的需求是:我现在要对我手上的牌组按 [最小信息原则] 作整理。你可以参考我最近三天修改过的牌看规律。大意是,现在一张卡里我已经有比如 10 个词,那创建 9 个副本,每个副本只保留一个词,并在卡正面加粗对应的词,取消加粗别的词。然后生成 10 张让我看看效果。
    迭代几次。
    没问题就全部走一遍。
    再迭代几次。

    用的模型 deepseek-v4-flash 。耗费 2 元人民币以内。
    第一次用,所以包含迭代(跟他说返工)大概共用了 2.5 小时左右。

    目前想到还没但还没去做的需求:参考词频库,将卡片库中每张高频词词汇的牌打上高频词标签,低频词打上低频词标签,方便我作分类。

    4 replies    2026-05-05 22:00:50 +08:00
    RamenCurator
        1
    RamenCurator  
    OP
       2 days ago
    实际用起来,问题还是很多。
    迭代了几次尝试完美解决,放弃了。
    算部分完成了。拆词已经帮我省了许多时间了。
    结合最先备份的卡片,一边背诵一遍修改产生的错误了。
    RamenCurator
        2
    RamenCurator  
    OP
       1 day ago
    我认为我失败了。恢复备份。我宁可花更多的时间自己做了。
    johnhuangemc2
        3
    johnhuangemc2  
       1 day ago
    用 agent 干活, 除非用得起顶级模型, 调校它要花的精力比自己干要多得多.
    而且可复用的能力还很有限.
    RamenCurator
        4
    RamenCurator  
    OP
       22h 23m ago
    @johnhuangemc2

    用 agent ,像开一辆轮子会自己偏掉的车。

    目前我的处理思路是拆分成小任务,走一会儿,挪一下方向盘。不行就倒回去重开。

    我将 5140 张牌均匀地分成 110 个牌组。
    每次只处理 1 牌组,并且开启 [AI 手工模式] ,禁止 AI 用脚本批处理。封装了 [好了喊我声] 的 skill 。

    大概就是让它跑 1 批次的牌组,我验收,不行再提需求迭代。迭代无望,就回滚重来。迭代得可以,就将本次牌组做好“xx 号处理好”备份。并对下一批次的牌组做“xx 号未处理”的备份(也封装成 skill 了)。

    每次迭代可能更新 prompt ,也可能不更新。处理一批牌组后,杀死会话,开启新会话。继续处理下一批牌组。

    目前进行到 21 号牌组(早上到现在晚上 10 点了)。
    这是目前的 prompt 。

    ```
    你的前任 AI ,把感知 Anki 的办法写在 skill 里了。

    这些卡片来源于不同的阅读背景和上下文,卡片文本存在极高的格式变异性,这使得依赖正则表达式或统一逻辑的传统自动化脚本完全失效。
    此外,任何在重构过程中导致格式偏移或换行符坍塌为空格的错误,都将造成卡片可读性的断崖式下降,使其失去复习价值。
    最小化原则规定每张闪卡只能测试一个不可分割的原子化知识点 。
    [最小化原则拆分规则]
    - 每张新生成的卡片只能测试“一个核心原子事实”( Atomic Fact )。如果源卡片的正面包含了多个不相关的词汇、多个复杂的背景事实,你必须将其拆分为两张或多张独立的新卡片。

    目前我作的正面的记号。
    加粗,表示要回忆对应的起意思。
    下划线,表示要回忆起对应的语法知识。
    高亮,表示要回忆起对应的发音信息。
    音频数量不固定。一张包含了 10 个词汇 的卡,由于当时觉得的必要性缘故,可能收录了其中 3 个词汇音频。
    制卡时想的是,回忆起整句的意思,所以有些地方觉得不是回忆重点没有加标记(比如加粗),但还是留一下防止后来不记得的那种词汇释义。这些地方我现在也要拆分成新的独立的卡。
    图片也不一定只有 1 张,有时候为了描述有些名词,我会到网上找对应名词的图片,所以也存在了一张卡包含了多张图的可能,拆分的时候也要把图放到对应卡里。
    这些是我记得的了。也许还有不记得的。
    总之,都不是固定的,你必须以真实用户的角度领悟我原先制卡的意图。我现在也不一定能准确地说出来。
    所以每次拆分卡片,都是一次独立的任务。
    而且背面的信息也不一定是格式化的。
    自动化脚本完全失效。
    是非常非常困难的任务。

    拆分成原子卡后,把该知识点的词汇,放到 VocabKanji 字段中来。因为我在卡牌浏览器中设定这个字段为牌组字段,这样可以方便我浏览。

    拆分后,音频记得要匹配,我想你也许你可以播放听一下。有的是句子,有的是单词级别的 TTS 片段,总之,情况很复杂,总是不一样。
    你的前任 AI 出现过一个原子卡却多包含了多个(指的是多个不同的 mp3 文件,而不是单一文件里的多个词)原多词卡的其他词的音频的情况,也出现过把原来的音频误删的情况。还出现过 SentAudio 和 VocabAudio 塞了同一个一模一样音频的情况(一个就够,最好在 SentAudio )。
    你的前任 AI 出现过,把单词级别的 TTS 片段的音频当成用不到给删了,但其实,对应的音频是原多词卡中的某个词。我不知道你是否能认出来音频与原子卡(正面有时可能是句子,背面有时是对应的原子知识的词)上的词的关系。
    你的前任 AI 出现过,在一张包含了可能 10 个词汇的卡,由于我本人当时觉得的必要性缘故,可能收录了其中 3 个词汇音频的情况下,死板地第一个音频放在第一个词,第二个音频放在第二个词地顺序排列了。以真实用户角度,应该知道是听一下的吧。
    如果有单个词的音频和整个句子的音频放一起,那单个词的音频要放在前面,句子放在后面。否则句子听完已经认出来了,单个词已经不用听了。这是真实用户角度能理解的事情吧。

    你的前任 AI 出现过在一张原子卡对其他词汇取消加粗却没有取消高亮的情况。

    记得不要被规律骗了,看起来好像都一样,但由于极高的变异性,实际可能并不一样,逐个地检查会比较好。比如前任 AI 出现过将某卡当成原子卡但实际上是非原子卡的情况。

    有时候我会句子卡里放以一整句话,和一些词。整句话也单独列成卡吧。记号就定为用 [] 把整句包起来。但句子卡应只在背面中出现整句的意思的时候才做。有时候并不是整个句子,而是半个句子,甚至只是一部分,这也同理。

    你的前任 AI 出现过日语沉浸卡的颗粒度不够原子的问题。
    你的前任 AI 出现过,只有发音的多词卡没有拆分的问题。
    你的前任 AI 留了个英文短片段音频识别的 skill ,也许你用得上。
    你的前任 AI 出现过没有填充 VocabKanji 字段的情况,要填充。

    新增的笔记要放在原来的子牌组中,而不是工作区 xxx 这个层级的牌组中。

    我要你以真实用户的角度,一张一张地、 手工地,对我 [~工作区 021] 的牌组,进行 [最小信息化] 处理。我觉得正面你可以改变的,只有加粗、下划线、高亮(否则我觉得你将破坏我的排版,使得正面失去可读性。)你必须以真实用户的角度领悟我原先制卡的意图。制作出一张你以真实用户角度自测来说,可以满意的卡。这是一项长期任务。
    如果遇到了问题,按你认为的最优解来。

    拆成多卡后,记得将原来的多词卡删除。

    做完后记得以真实用户角度自测一遍,我不在乎 token 数量,在乎质量。

    ```
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3269 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 12:24 · PVG 20:24 · LAX 05:24 · JFK 08:24
    ♥ Do have faith in what you're doing.