Anki add-on: ContextFlow

ContextFlow: Anki AI 动态语境插件 重要注意事项 API限制 : 可以使用本地ollama模型，但是外部api必须支持多线程，不建议免费的geimini api 字段设置 : 如果单词不在第一个字段，请在牌组名称后加上序号，如 所有卡片::英语[2] 算法要求 : 请务必打开FSRS算法 缓存残留 : 更改例句配置只能影响新缓存，无法修改已生成的部分，可以删除缓存文件，但要注意token的消耗。 推荐模型 doubao-seed-2-0-lite : 性能优秀，性价比高，服务稳定 deepseek-v4-flash : 有缓存命中功能，性能强劲，综合性价比高 简介 ContextFlow 是一款 Anki 插件，通过AI动态生成例句来改变外语词汇学习方式，将间隔重复系统与无限的、个性化的语境学习相结合。 核心功能 动态 AI 例句 : 为每个单词的每次复习生成全新的、一次性的例句 语境优先学习 : 卡片正面只显示例句，强制进行语境理解 自定义提示词 : 除了修改固定字段，你甚至可以完全自定义提示词，拿来学成语，学古文，用知识点出题，随你开发 例句保存 : 遇到喜欢的例句，可以保存在指定牌组反复阅读 AI追问 : 困难的单词可以选中后提问，AI解答过程中的例句也可以即时保存 TTS 语音朗读 : 为例句和单词提供发音，卡片上有「朗读例句 / 朗读单词」按钮，支持 Edge TTS（高质量）、Anki 原生 TTS（低延时）、Apple TTS（仅 macOS）和自定义接口 手机 / Web 复习 : 插件在 Anki 启动时开启本地后端服务，手机连接同一局域网即可在浏览器中复习目标牌组，完整支持翻面、评分、撤回、刷新例句和语音朗读 安装方法 方法一（推荐）：通过 AnkiWeb 安装 打开 Anki 桌面版 点击菜单栏的 工具 (Tools) -> 插件 (Add-ons) 点击 获取插件 (Get Add-ons...) 输入插件代码： 932930811 点击 确定 (OK) ，重启 Anki 方法二：手动安装 下载最新的 ContextFlow.ankiaddon 文件 打开 Anki，点击 工具 (Tools) -> 插件 (Add-ons) 将文件拖拽到插件列表窗口中 重启 Anki 方法三：git安装 打开 Anki，点击 工具 (Tools) -> 插件 (Add-ons) -> 查看文件 运行 git clone https://github.com/socialismbuilder/ContextFlow 可以获取未发行的最新版，但需要定期执行此命令更新，且版本不稳定。对此有疑惑则勿尝试。 配置说明 安装后点击 工具 (Tools) -> AI句子生成配置... (ContextFlow Settings) 在设置界面中配置： API 接口地址 : 输入兼容 OpenAI 格式的 API 地址 API 密钥 : 输入你的 API 密钥（注意保管好） 模型名称 : 选择 AI 模型 目标牌组名称 : 输入牌组完整名称+字段序号 句子生成偏好 (可选): 调整词汇量等级、学习目标等参数 点击 保存 应用设置 TTS 语音设置 在配置界面选择 TTS 引擎 ，为卡片上的「朗读例句 / 朗读单词」按钮提供发音来源。其中「朗读单词」可用快捷键 W 触发；勾选 替代卡片原有声音（自动朗读例句） 可在翻面后自动朗读例句并屏蔽卡片自带音频。朗读语言跟随配置中的 目标学习语言 。 Edge TTS（默认，推荐） ：微软神经网络语音，质量高、多语言覆盖广，按语言匹配默认人声（也可在 Edge 人声 下拉中手动挑选）。首次会联网拉取人声列表；生成的音频会缓存，二次朗读几乎无延时。需要联网。 Anki 原生 TTS ：调用 Anki 内置的 TTS（系统 TTS、AwesomeTTS 等），延时低、质量取决于系统语音，无需联网。 自定义 URL ：对接你自己的 TTS 服务（如本地 GPT-SoVITS、CosyVoice、fish-speech 等的 API 接口）。填写一个带 占位符 的 URL，插件朗读时会把实际值替换进去并发 GET 请求，服务直接返回音频即可（按 Content-Type 自动识别 mp3 / wav）。可用占位符： {text} —— 要朗读的文本（自动 URL 编码） {voice} —— 人声名（跟随 Edge TTS 的人声映射，如英语为 en-US-EmmaMultilingualNeural ） {language} —— 学习语言（如 英语 ） 示例（GPT-SoVITS 风格）： http://localhost:9880/?text={text}&speaker=trump 若你的接口固定了人声、只接收文本，URL 里 不写任何占位符 即可，插件会自动在末尾追加 ?text=<文本> （如 http://localhost:5000/tts ）。 Apple TTS（仅 macOS） ：直接调用系统原生 say 命令，延时低、跟随系统讲述人配置（由 @Peng Jitong 贡献）。 Apple TTS 配置说明（仅 macOS） 讲述人配置： ->System Setting(系统设置) -> Accessibility（辅助功能）-> System Voice -> ⓘ -> 选择要学习的语言 -> 选择讲述人（学习英语的话 Kate 和 Jamie 体验不错）。 系统默认讲述人的语言是系统首选语言，与你的学习语言不一致时不会有声音输出。 Web / 手机复习设置 插件在 Anki 启动（加载配置档案）后自动开启本地后端服务（基于 aiohttp），同局域网的设备即可访问： Web 服务开关（web_enabled） ：默认开启，关闭后不启动后端。 Web 服务端口（web_port） ：默认 8765 ，如被占用可修改。 使用方式 ：让手机和电脑连接同一个路由器，在手机浏览器访问 http://<电脑的局域网IP>:端口 （例如 http://192.168.1.10:8765 ）。打开后可选择牌组、查看 ContextFlow 例句、翻面，并按 重来 / 困难 / 良好 / 简单 评分，还支持撤回（ U ）、刷新例句、朗读例句。在不想使用电脑时，可以使用此功能手机学习。 提示：服务监听 0.0.0.0 ，仅限同一局域网访问；若连不上，请检查电脑防火墙是否放行了对应端口。 使用流程 确保目标牌组第一个字段只包含单词本身 打开FSRS算法 像往常一样打开指定牌组进行复习 卡片正面显示AI生成的例句，需要理解整个句子 点击显示答案后，可以看到翻译和原始卡片内容 根据理解程度点击复习按钮 界面展示 配置界面 : 填写API设置、句子生成偏好和目标牌组 学习界面 : 显示正面例句，背面例句+翻译+原始卡片 AI追问界面 : 显示AI生成的例句，可点击提问 AI成本与能力计算 价格： 首先是Ai价格的问题，由于国产AI的内卷生态，价格实际上非常便宜，尤其是有阶梯式定价和输入缓存的模型。 建议使用3￥/Mtoken以内的次旗舰模型获得最大性价比。 每次api调用会生成5个例句，每次调用会产生大约1000token的输入和300token的输出。 由于初期积累缓存几乎每次都需要调用api，我们算极端一些，极其勤奋，每天学习600张卡片，平均每2张调用一次，月成本也可以控制在10元内。 可以直接使用火山引擎的激励计划每日可获得3Mtoken免费额度，足够每日用量，或其他免费渠道。 能力： 输出流程自然的语言是LLM最擅长，最突出的能力没有之一。 对于这个任务，哪怕是本地模型，都能以较高的质量完成，比如qwen3.5-14B。 即使是超小模型，如1B甚至0.5B模型也是可以输出流畅的语言的，即使它们甚至无法稳定输出一个标准的json格式供程序解析。 Todo 开发计划 🔄 Bug 修复与优化 : 据用户反馈和内部测试，持续查找并修复已知问题，优化插件的性能和稳定性，提升整体用户体验。 ✅ API格式兼容 : 预设厂商url填写 ✅ 多语言选项 : 多种目标学习语言支持 ✅ 第二关键词 : 根据FSRS参数筛选用户最难掌握的单词作为第二关键词，加入Ai提示词以增加其出现频率，快速降低其难度参数（仅在难词超过100时自动启用，可在提示词中删除以关闭） ✅ 提示词编辑 : 自定义提示词功能 ✅ AI追问功能 : 支持选中单词提问，追问过程中的例句也可以即时保存 ✅ 例句保存 : 喜欢的例句可保存到指定牌组 ✅ 例句刷新 : 不喜欢的例句可以右键刷新，换一个例句展示 ✅ 缓存升级 : 从JSON升级到SQLite数据库，并更新了内存缓存机制，不再卡顿 ✅ 预测优化 : 询问ANKI开发者获取了内部的卡片队列接口，直接从ANKI核心获取学习队列，不必再手动预测队列，也不必须按照顺序学习，大大提升准确性和加载速度。 ✅ 单线程模式 : 适配本地ollama模型 ✅ 字体设置 : 允许用户自定义字体，提前适应考卷的字体 ✅ TTS语音合成 : 为例句和单词添加发音功能，可以选择本地原生tts(低延时低质量),edge-tts(高延时高质量)，和自定义接口 ✅ 手机学习端口 : 由于手机版不支持插件，而独立版软件开发仍未规划。计划在插件在软件开启后可以设置后端服务，让局域网内手机可以登陆网页学习。 ⬜ 多语言适配选项 : 为国外语言学习者提供支持 ⬜ 多组学习并行 :可以配置多个学习组，学习不同的语言或目标，各自有其独立的配置 ⬜ 预设词库导入 : 提供预设的词汇列表，直接选择牌组而不用寻找第三方牌组库

GitHub repository: socialismbuilder/contextflow
Repository description: `ContextFlow` 是一款 Anki 插件，旨在通过利用人工智能（AI）动态生成例句，改变外语词汇的学习方式。  
Languages: Python, Cython, Vue, JavaScript, HTML, CSS