# 潜进 (HeurAMS) - 启发式辅助记忆程序 > 惟算法之可恃兮, **筹来者于未央** > 扶大厦之将倾兮, **挽狂澜于既倒** ## 概述 "潜进" (HeurAMS: Heuristic Auxiliary Memorizing Scheduler, 启发式记忆辅助调度器) 是为习题册, 古诗词, 及其他问答/记忆/理解型知识设计的辅助记忆软件, 提供动态规划的优化记忆方案 ## 关于此仓库 "潜进" 软件组项目包含多个子项目: - 此仓库包含了 "潜进" 项目的核心和基于 Textual 的基本用户界面的实现 - 关于基于 Flutter 的现代用户界面, 请参阅 "潜进-F" (HeurAMS-F) 仓库 - 关于数据同步实现, 请参阅 "潜进-S" (HeurSync) 仓库 - 关于云端文档源实现, 请参阅 "潜进-R" (HeurRepo) 仓库 ## 开发计划 0.1.x: 简易调度器实现与最小原型 0.2.x: 使用 Textual 构建 TUI, 项目可行性验证与采用 SM-2 原始算法用户自评估的原型 0.3.x (当前): 基本数据结构, 基于 SM-2 改进算法的自动复习测评评估与遵从 IoC 设计的功能实现, 重点设计古诗文记忆理解功能, 以及 TUI 界面实现, 简单的语言模型集成 0.4.x: 更新文件格式, 引入动态数据结构(自动内容生成), 深度语言模型集成 0.5.x: 引入云同步与文档源 0.6.x: 引入其他算法接口, 与跨语言库引入, 使用 Flutter 构建跨平台现代客户端 ## 技术集成与特性 ### 间隔迭代算法 > 许多出版物都广泛讨论了不同重复间隔对学习效果的影响。特别是,间隔效应被认为是一种普遍现象。间隔效应是指,如果重复的间隔是分散/稀疏的,而不是集中重复,那么学习任务的表现会更好。因此,有观点提出,学习中使用的最佳重复间隔是**最长的、但不会导致遗忘的间隔**。 - 采用经实证的 SM-2 间隔迭代算法, 此算法亦用作 Anki 闪卡记忆软件的默认闪卡调度器 > 计划: 将添加 FSRS 算法 (Anki 的新可选闪卡调度器) 与一种 SM-15 变体算法作为后续替代 > 参考 https://github.com/slaypni/SM-15 > 使用 SM-15 的变体: > SM-2 后续算法并非完全开放, 故使用一种基于 SM-15 描述实现的变体算法 - 动态规划每个记忆单元的记忆间隔时间表 - 动态跟踪记忆反馈数据,优化长期记忆保留率与稳定性 ### 学习进程优化 - 逐字解析:支持逐字详细释义解析 - 语法分析:接入生成式人工智能, 支持古文结构交互式解析 - 自然语音:集成微软神经网络文本转语音 (TTS) 技术 ### 实用用户界面 - 响应式 Textual 框架构建的跨平台 TUI 界面 - 支持触屏/鼠标/键盘多操作模式 - 简洁直观的复习流程设计 ## 屏幕截图 (基本用户界面) > 单击图片以放大 img1 img2 img3 img4 ## 技术架构 > 有关技术与实现的细节, 请参阅 CONTRIBUTING.md > 提交拉取请求以参与到此开放源代码项目 ``` mermaid graph TD subgraph 后端 A[SM-2 算法] --> B[间隔迭代算法] B --> C[迭代记忆参数] end subgraph 用户界面 D[展示模块] --> E[用户界面] E --> F[进度追踪面板] end subgraph 外部服务 G[LLM] H[TTS] end C --> D F -->|用户数据| C D --> G D --> H ``` ## 系统与平台要求 - 依赖组件: Python 3.7+ (与 PIP), Git (半自动更新 & 安装需要), requirements.txt 中依赖包 - 可选依赖: curl (首次下载需要) - 平台支持:Windows / macOS / Linux / Android (需要 Termux 或 Linux) (终端或浏览器) - 网络连接:可预缓存语音文件, 需联网使用大模型服务功能 运行此命令以在具备以上前置条件的计算机上快速安装/保留数据更新: ``` curl -O https://gitea.imwangzhiyu.xyz/ajax/HeurAMS/raw/branch/main/tweak.py python3 tweak.py ```