MBE 教育模块架构设计

📋 概述

本文档描述 MBE 教育模块的架构设计,该模块基于 MBE 核心能力(HOPE MOE、TITANS、MIRAS、嵌套学习)构建,实现自适应学习系统。

创建日期: 2026年2月1日
版本: 1.0.0
作者: MBE Team


🎯 设计目标

  1. 自适应学习: 根据学生状态动态调整教学内容
  2. 知识追踪: 精确追踪学生对每个知识点的掌握程度
  3. 智能复习: 基于遗忘曲线和惊讶度的间隔重复
  4. 能力均衡: 追踪和平衡各项学习能力的发展
  5. 个性化推荐: 根据学生情况推荐最合适的学习内容

🏗️ 系统架构

┌─────────────────────────────────────────────────────────────────────┐
│                        MBE 教育模块架构                              │
├─────────────────────────────────────────────────────────────────────┤
│                                                                     │
│  ┌───────────────────────────────────────────────────────────────┐  │
│  │                     API 层 (education.py)                      │  │
│  │  POST /learn | GET /review-plan | GET /progress | ...         │  │
│  └───────────────────────────────┬───────────────────────────────┘  │
│                                  │                                  │
│  ┌───────────────────────────────▼───────────────────────────────┐  │
│  │                   教育引擎 (EducationEngine)                   │  │
│  │  统一协调所有教育组件,提供完整的学习流程                       │  │
│  └───────────────────────────────┬───────────────────────────────┘  │
│                                  │                                  │
│  ┌───────────┬───────────┬───────────┬───────────┬───────────┐     │
│  │           │           │           │           │           │     │
│  ▼           ▼           ▼           ▼           ▼           │     │
│  ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │     │
│  │ Student │ │Adaptive │ │ Review  │ │Ability  │ │ Course  │ │     │
│  │ Tracker │ │  Tutor  │ │Scheduler│ │Balancer │ │ Manager │ │     │
│  └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ └─────────┘ │     │
│       │           │           │           │                   │     │
│       │  基于 MBE 核心组件                                     │     │
│       ▼           ▼           ▼           ▼                   │     │
│  ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐             │     │
│  │  HOPE   │ │Surprise │ │ Memory  │ │ Expert  │             │     │
│  │Learning │ │ Router  │ │Compress │ │Balancer │             │     │
│  │   MOE   │ │         │ │   or    │ │         │             │     │
│  └─────────┘ └─────────┘ └─────────┘ └─────────┘             │     │
│       │           │           │           │                   │     │
│       └───────────┴───────────┴───────────┘                   │     │
│                       │                                       │     │
│  ┌────────────────────▼────────────────────────────────────┐ │     │
│  │                MBE 核心能力层                            │ │     │
│  │  TITANS (记忆) | MIRAS (检索) | 嵌套学习 | LLM          │ │     │
│  └─────────────────────────────────────────────────────────┘ │     │
│                                                               │     │
└───────────────────────────────────────────────────────────────┘

📦 模块说明

1. StudentTracker (学生学习追踪器)

位置: src/education/student_tracker.py

依赖: HOPE Learning MOE (src/core/hope_moe.py)

功能:

  • 追踪学生对每个知识点的惊讶度
  • 计算知识掌握程度
  • 记录学习历史
  • 生成学习建议

核心原理:

惊讶度 → 掌握程度映射

高惊讶度 (> 0.7)  →  新知识/未掌握  →  需要详细讲解
中惊讶度 (0.4-0.7) →  正在学习      →  需要练习巩固
低惊讶度 (< 0.4)  →  已掌握        →  可以进阶/拓展

HOPE MOE 专家映射:

HOPE 专家 教育用途
FastAdaptationExpert 快速引入新知识
StableMemoryExpert 巩固已有知识
PatternRecognitionExpert 发现规律和方法
ForgetControlExpert 防止遗忘

2. AdaptiveTutor (自适应教学模块)

位置: src/education/adaptive_tutor.py

依赖: SurpriseRouter (src/moe/nested_learning.py)

功能:

  • 根据惊讶度选择教学策略
  • 多专家协同生成教学内容
  • 个性化内容推荐

教学专家:

专家 适用场景 惊讶度范围
详细讲解专家 新概念引入 > 0.7
举例说明专家 通过例子理解 > 0.7
规律总结专家 发现规律 0.4-0.7
练习巩固专家 通过练习加深 0.4-0.7
进阶挑战专家 提高难度 < 0.4
拓展延伸专家 扩展知识面 < 0.4

路由流程:

学生输入
    ↓
计算惊讶度
    ↓
SurpriseRouter 计算偏置
    ↓
选择 Top-K 专家 (默认 K=2)
    ↓
并行生成教学内容
    ↓
融合输出

3. ReviewScheduler (复习调度系统)

位置: src/education/review_scheduler.py

依赖: MemoryCompressor (src/moe/nested_learning.py)

功能:

  • 基于艾宾浩斯遗忘曲线的间隔复习
  • 根据惊讶度动态调整复习间隔
  • 生成每日复习计划

间隔算法:

# 基础间隔(天)
intervals = [1, 3, 7, 14, 30, 60]

# 惊讶度调制
if surprise > 0.7:
    interval *= 0.5  # 高惊讶度:缩短间隔
elif surprise < 0.3:
    interval *= 2.0  # 低惊讶度:延长间隔

优先级计算:

优先级 = 惊讶度 × 0.4 + 重要性 × 0.3 + 逾期程度 × 0.3

4. AbilityBalancer (能力均衡模块)

位置: src/education/ability_balancer.py

依赖: ExpertBalancer (src/moe/nested_learning.py)

功能:

  • 追踪各能力使用情况
  • 检测能力短板
  • 生成均衡发展建议

能力类型:

  • mathematical: 数学计算
  • logical: 逻辑推理
  • linguistic: 语言表达
  • creative: 创造思维
  • memory: 记忆理解

短板检测:

# 使用率低于阈值 (默认 15%) 视为短板
if usage_rate < 0.15:
    weaknesses.append(ability)

5. CourseManager (课程管理器)

位置: src/education/course_manager.py

功能:

  • 课程和知识点的 CRUD
  • 知识点依赖关系管理(知识图谱)
  • 学习路径推荐

知识图谱:

课程
 └── 知识点 A
      ├── 前置: []
      └── 依赖: [B, C]
 └── 知识点 B
      ├── 前置: [A]
      └── 依赖: [D]
 └── 知识点 C
      ├── 前置: [A]
      └── 依赖: [E]

6. EducationEngine (教育引擎)

位置: src/education/education_engine.py

功能:

  • 整合所有教育组件
  • 提供统一的学习流程
  • 协调各组件协同工作

完整学习流程:

1. 接收学习请求
    ↓
2. StudentTracker: 计算惊讶度,更新知识状态
    ↓
3. AdaptiveTutor: 生成个性化教学内容
    ↓
4. ReviewScheduler: 安排复习(如需要)
    ↓
5. AbilityBalancer: 更新能力画像
    ↓
6. 返回综合结果

🔌 API 接口

位置: src/api/education.py

核心接口

方法 路径 说明
POST /education/learn 学生学习
GET /education/students/{id}/progress 获取学习进度
GET /education/students/{id}/review-plan 获取复习计划
GET /education/students/{id}/ability-report 获取能力报告
GET /education/students/{id}/recommendations 获取学习推荐

课程管理接口

方法 路径 说明
POST /education/courses 创建课程
GET /education/courses 列出课程
POST /education/knowledge-points 创建知识点
GET /education/knowledge-points 列出知识点

📊 数据模型

Student (学生)

@dataclass
class Student:
    id: str
    name: str
    learning_style: str
    difficulty_level: str
    knowledge_states: Dict[str, StudentKnowledgeState]
    ability_profile: AbilityProfile

KnowledgePoint (知识点)

@dataclass
class KnowledgePoint:
    id: str
    name: str
    description: str
    course_id: str
    difficulty: float          # 0-1
    importance: float          # 0-1
    prerequisites: List[str]   # 前置知识点ID
    ability_types: List[str]   # 涉及的能力类型

StudentKnowledgeState (学生知识状态)

@dataclass
class StudentKnowledgeState:
    knowledge_point_id: str
    mastery_level: int         # 0-4 (未开始到精通)
    current_surprise: float    # 当前惊讶度
    learning_count: int        # 学习次数
    accuracy: float            # 正确率
    last_learned_at: datetime
    next_review_at: datetime

🚀 使用示例

基本使用

from src.education import EducationEngine, KnowledgePoint

# 创建引擎
engine = EducationEngine()

# 创建课程和知识点
course = engine.create_course(name="Python 基础")
kp = engine.create_knowledge_point(
    name="递归",
    course_id=course.id,
    difficulty=0.7,
    ability_types=["logical", "problem_solving"],
)

# 学生学习
result = await engine.learn(
    student_id="student_001",
    knowledge_point_id=kp.id,
    content="什么是递归?",
)

print(f"惊讶度: {result['tracking'].surprise_score}")
print(f"教学策略: {result['teaching'].strategy}")
print(f"建议: {result['suggestions']}")

复习管理

# 获取复习计划
plan = engine.get_daily_review_plan("student_001")
print(f"今日需复习 {len(plan.items)} 个知识点")

# 完成复习
await engine.complete_review(
    student_id="student_001",
    knowledge_point_id="kp_001",
    result="success",
    score=0.85,
)

能力分析

# 获取能力报告
report = engine.get_ability_report("student_001")
print(f"短板: {report.weaknesses}")
print(f"建议: {report.suggestions}")

# 获取针对短板的推荐
recommendations = engine.get_weakness_recommendations("student_001")

📈 性能预期

指标 目标值
惊讶度计算延迟 < 50ms
教学内容生成延迟 < 200ms
复习计划生成延迟 < 100ms
知识追踪准确率 > 85%
复习效果提升 +40%

🔧 配置说明

基本配置

from src.education import EducationConfig

config = EducationConfig(
    # 惊讶度阈值
    surprise_thresholds=SurpriseThresholds(
        high=0.7,
        medium=0.4,
        low=0.2,
    ),
    
    # 复习配置
    review=ReviewConfig(
        intervals=[1, 3, 7, 14, 30, 60],
        daily_review_limit=50,
    ),
    
    # 教学配置
    tutor=TutorConfig(
        num_teaching_experts=6,
        top_k=2,
    ),
)

engine = EducationEngine(config)

预设配置

# K12 教育
config = EducationConfig.for_k12()

# 职业培训
config = EducationConfig.for_professional()

📁 文件结构

src/education/
├── __init__.py              # 模块入口
├── config.py                # 配置定义
├── models.py                # 数据模型
├── student_tracker.py       # 学生学习追踪
├── adaptive_tutor.py        # 自适应教学
├── review_scheduler.py      # 复习调度
├── ability_balancer.py      # 能力均衡
├── course_manager.py        # 课程管理
└── education_engine.py      # 教育引擎

src/api/
└── education.py             # API 接口

docs/architecture/
└── EDUCATION_MODULE_DESIGN.md  # 本文档

✅ 实施清单

Phase 1: 核心功能(已完成)

  • 模块结构和配置
  • 数据模型定义
  • StudentTracker(基于 HOPE MOE)
  • AdaptiveTutor(基于 SurpriseRouter)
  • ReviewScheduler(基于 MemoryCompressor)
  • AbilityBalancer(基于 ExpertBalancer)
  • CourseManager
  • EducationEngine
  • API 接口

Phase 2: 增强功能(待实施)

  • 学习分析仪表盘
  • 自动出题系统
  • 学习社区功能
  • 移动端适配

Phase 3: 高级功能(规划中)

  • 多模态教学内容
  • AI 辅助批改
  • 学习行为预测
  • 个性化学习路径优化

📞 联系方式

如有问题,请联系 MBE 开发团队。


文档版本: v1.0.0
最后更新: 2026年2月1日