SunnyBoy-y/LearnGraph

LearnGraph 是一个 AI 驱动的智能学习平台。你只需说出一个真实的学习目标,AI 便会帮你生成可生长的知识路线图,并作为学习伙伴全程陪伴,引导你高效进入并掌握陌生领域。

LearnGraph – AI 增强的自托管学习工作区

它是什么

  • 一个自托管的 Web + Android 应用程序,帮助用户设定具体的学习目标,为该目标构建 知识图谱,并让 AI 代理 引导用户完成学习、练习和评估。
  • 系统持续更新图谱和证据的 记忆(用户阅读、回答或编码的内容),以便代理推荐下一步。

关键能力

功能 您获得什么
增长的知识图谱 从自然语言目标,后端生成一个版本化、可编辑的主题和先决条件关系图谱。用户可以审计和修改它。
代理原生学习 AI 代理规划行动 – 获取来源、解释概念、创建练习、在 Docker 沙箱中运行代码,并记录结果。
全双工语音导师 集成了语音转文本和文本转语音(DashScope ASR + Volcano TTS);您可以同时说话和收听,并带有实时字幕,突出显示所说的句子。
Docker 隔离沙箱 代理执行的代码在默认离线的 Docker 容器中运行;出站网络需要明确批准,提供强大的安全边界。
Android 客户端 原生 Kotlin/Jetpack-Compose 应用(GeckoView)镜像 Web 界面,并添加相机、文件共享、二维码扫描、生物识别登录、TTS 和推送通知。
事件溯源长期记忆 每次交互都存储为不可变事件。投影层按需构建可搜索的上下文,支持重放、审计和防止提示注入。
交互式学习页面 每个图谱节点可以生成一个完整的学习页面,包含材料、交互式实验、迷你游戏和分级测验。进度被持久化并可恢复。
“魔法卡片”组件 AI 生成的 UI 小部件(多项选择、填空、图表等),带有状态,可在学习页面中重用。
多模型提供商支持 支持 OpenAI、Anthropic、Qwen、DeepSeek、Ollama、Copilot 等的插件架构,并统一处理凭据。

架构概览

  • 前端:React 19 + TypeScript (Vite) 用于 Web 界面;Kotlin/Jetpack-Compose 用于 Android。使用 TanStack Query、React Flow 和自定义 可信渲染器 来安全处理 AI 生成的 HTML。
  • 后端:FastAPI (Python 3.11+) 提供 HTTP + SSE 端点。核心服务实现 G-R-E-M-A 学习循环(目标 → 表示 → 证据 → 掌握 → 行动)。
  • 记忆:SQLite (WAL) 中的事件存储,带有分层投影,用于混合向量 + 关键词检索。
  • 沙箱:sandboxd 守护进程控制执行代理工具的 Docker 容器;出口代理强制执行“默认离线,批准后上线”策略。
  • 数据持久化:所有用户数据、图谱版本、证据和加密的提供商密钥都存储在 Docker 卷(或绑定挂载目录)中,并在容器升级后保留。

如何尝试

  1. Docker compose(推荐)
    git clone https://github.com/SunnyBoy-y/LearnGraph.git
    cd LearnGraph
    docker compose up -d --build   # 构建 web+API 镜像和沙箱服务
    
    • 在浏览器中打开 http://127.0.0.1:18000。
    • 使用容器日志中打印的临时管理员密码登录,然后更改密码。
  2. 开发模式(如果您想贡献)
    npm run dev:install   # 安装 Node 和 Python 依赖,创建 .env 文件
    npm run dev           # 启动 Vite 前端和 FastAPI 后端
    
    • 前端:http://127.0.0.1:5173
    • API:http://127.0.0.1:8000
  3. Android 客户端
    • 在 mobile/native 中构建 Kotlin 应用,或安装预构建的 APK。
    • 将其指向主机地址(例如 http://192.168.1.5:18000)。

典型工作流程

  1. 设定学习目标 – “在两周内学习用于数据分析的基础 Python。”
  2. 审查生成的图谱 – 批准如 变量、pandas、可视化 等节点。
  3. 与代理聊天 – 请求解释、请求代码示例,或让代理创建练习。
  4. 做练习 – 界面呈现交互式页面;结果存储为证据。
  5. 获取下一个推荐 – 系统更新您的 掌握 状态,并建议下一个影响最大的节点。

谁可能使用它

  • 希望在新领域获得结构化、AI 引导路径的个人学习者。
  • 研究代理驱动辅导、记忆审计或沙箱工具执行的研究人员。
  • 构建内部知识入门流程的小团队(自托管保持数据私有)。

当前限制

  • 仍处于 早期开发 阶段;不建议用于生产工作负载。
  • 语音功能依赖云提供商(DashScope、Volcano);它们将音频发送到这些服务。
  • 沙箱仅支持 Docker;没有 Docker 的环境无法运行代码执行功能。
  • 多用户协作仅限于基本 RBAC;实时共同学习尚未实现。

了解更多


LearnGraph 是一个真正的开源 AI 代理学习平台,结合了知识图谱规划、自主辅导代理、语音交互和 Docker 隔离的执行沙箱。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目