ReciteHelper v5 “Lotus”
New features
- Introduces the FSRS-6 memory model, replacing the legacy SM-2-based review algorithm with recall-probability-driven scheduling
- Automatically prioritizes questions that are most likely to be forgotten and suggests the next review time
- Supports per-project scheduler personalization after sufficient review history has been collected
- Expands practice support to five question types: single-choice, fill-in-the-blank, true/false, term-definition, and essay questions
- Adds complete exam-set importing from PDF, TXT, HTML, and MHTML files
- Adds chapter-weighted exam generation, timed exams, automatic grading, answer review, and mistake importing
- Introduces a project-local vector knowledge base for semantic retrieval
- Adds a question assistant that retrieves relevant knowledge points and generates grounded AI explanations
- Adds three model-service options:
- Direct DeepSeek + Qwen access
- OpenRouter access with a single API key
- ReciteHelper hosted service using an activation code
- Adds a model-service selection window for first-time setup
- Adds Resource Center support for discovering and importing shared learning resources
- Adds support for importing XuetangX webpages and exam content
- Adds configurable import and export destination paths
Enhancements
- Rebuilds the smart-review workflow around difficulty, stability, and retrievability instead of static easiness-factor ranking
- Preserves historical review data and automatically migrates legacy review records to the new scheduler
- Improves project creation with structured stages, clearer progress reporting, and better error feedback
- Refines chapter extraction and structured question generation prompts
- Improves fill-in-the-blank recognition and answer normalization
- Improves question generation quality across different source formats
- Improves knowledge-point matching with highlighted relevant text
- Keeps each project’s knowledge base, questions, and learning history together in local storage
- Automatically rebuilds knowledge-base vectors when switching to an incompatible embedding model
- Updates the quiz interface to display predicted recall, memory stability, and suggested review timing
- Simplifies first-time configuration by allowing API keys or activation codes to be entered directly in the application
- Adds configurable OpenRouter chat and embedding models
- Improves price estimation and peak-hour calculation
- Refines project import, export, loading, and compatibility handling
- Reorganizes the README with Chinese and English versions, clearer onboarding, real interface previews, and updated project links
Bug Fixes
- Fixed a startup failure when no model-service keys were configured by restoring a dedicated configuration window
- Fixed failures caused by a missing SBERT vocabulary file by adding a safe fallback
- Fixed legacy review records not being restored correctly during project deserialization
- Fixed time-blind review selection that repeatedly prioritized previously failed questions regardless of elapsed time
- Fixed inconsistent handling of true/false, fill-in-the-blank, and structured exam questions
- Fixed several project-path and import/export destination issues
- Fixed problems when identifying multiple exam papers from a single source file
- Fixed malformed or incomplete chapter structures produced during AI generation
- Fixed silent knowledge-base degradation when changing embedding providers
- Fixed configuration checks that previously required both DeepSeek and Qwen even when another model-service option was available
- Fixed several known crashes and compatibility issues in project creation and exam importing
Build / Test updates
- Refactors the application into separate Core, Application, Infrastructure, SharedKernel, and WPF projects
- Updates the primary solution to
src/ReciteHelper.slnx - Updates the build workflow to restore Git submodules recursively
- Migrates the application to C#, .NET 10, and the current WPF project structure
- Adds dependency-injection registrations for the FSRS scheduler and personalization service
- Removes the obsolete SM-2 services, XGBoost quality predictor, ONNX model, and training scripts
- Adds deterministic FSRS state updates, bounded scheduler parameters, legacy-history migration, and on-device personalization
- Verifies that the complete Release solution builds successfully after removing the legacy algorithm
Changelog
Full Changelog: v4...v5
Lotus rises from still water; every review brings knowledge back into bloom. Welcome to ReciteHelper 5.0!