用 Python 写了个本地优先的 AI 家教:多种教学模式,课本当检索源,逐章把握度分析

[复制链接]
发表于 2026-8-2 16:20:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
前言:为什么要做这么个东西

有人说过,电脑是人脑的延伸;如今,大模子则是人脑的近似。它能读万卷书、解万般题,人脑在"知识量"上确实追不上。但我一直觉得,工具是放大器,你自己长出来的能力才是最踏实的东西——所以这款东西我故意做得"笨":逼你想,而不是替你答。
之前试过不少学习类 AI 工具,大多止步于"你问它答",答完你还是没学会。认真学一门课,真正缺的不是答案,而是循序渐进的引导、及时的反馈,和对自己把握情况的清楚认知。所以我把目标定得很具体:把任意一本课本,变成一位引导式的专属家教。
技术要点

1. 课本怎么变成"知识"
用户上传 PDF / TXT / Markdown 之后,程序在本地把文本切分,建一个 BM25 检索索引。关键点在于:之后所有答疑和出题,检索依据都是这本课本的原文,而不是让模子凭影象瞎编。这能把"幻觉"压到最低——课本才是权威,模子只是解说员。
2. 三种教学模式
同一本课本,按学习风俗切了三种教法:

  • 引导探究式(默认):引入 → 小测 → 反馈 → 追问,一步步建立直觉。
  • 讲授式:概念解说 → 课堂作业 → 开放问答。
  • 自由问答式:就原文任意内容深问深答。

3. 把握度为什么按"章"算
这是我觉得最有用的一个设计。通常的练习只给一个总分,但"85 分"说明不了什么——你可能是第一章熟、第三章完全没懂。所以我让每道题按它归属的章节分别计分。举例,一道题整体 85/100,同时标出第一章矩阵 90、第三章行列式 80;哪块虚,复习就专门打那块。配合"自动挑最弱章节出题"的复习规划,时间都花在刀刃上。

踩坑记录

坑一:模子直接答题,结果一言难尽。 一开始图省事,让模子凭自己的知识回答,结果经常瞎编、跟课本对不上。后来改成"以课本原文为检索依据 + 模子只负责解说",才稳下来。教训:课本才是标准答案,别让模子当主角。
坑二:笼统总分没用。 最早练习只给一个总分,用户看完还是不知道哪弱。改成按章节分别计分后,把握度差异才真正看得见。
坑三:隐私这关不能省。 学习数据太私密,一开始就定死:课本和对话全在本机 SQLite 里处理,不上传任何第三方;API Key 只存在本机;数据目录安装时可自选,跟程序分离,卸载后保存。
验证通过 & 近况

目前 v0.1.0,桌面版有 Windows 安装包开箱即用,也能 python server.py 直接起;模子自己填 API Base / Key / 模子名,有一键测试连接。各章节把握度、得分趋势、不同课程之间的对比,集中在一个统计页:

说句实话,现在功能还很糙,离"好用"还有隔断,但方向我以为是对的——AI 横着走的年代,最值钱的不是"知道",而是"会学"。工具再强也只是放大器,舵得自己握着。
写在最后


回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表