AI+教育应用教程:从零搭建一个智能问答教学助手

想给课程或培训做一个能自动回答学生问题的AI助手,不一定需要算法团队。
只要有一台普通云服务器、一个开源模型和一点耐心,按下面的步骤就能搭出一个可用的问答教学助手。
本文从零开始,覆盖环境准备、模型部署、接口对接和效果验证,适合教师、教务人员或刚接触运维的开发者。

先想清楚:你的教育助手要解决哪类问题

动手之前,先明确使用场景,否则容易把时间花在调模型上。
常见三类需求:

  • 课程答疑:学生反复问概念、作业要求、考试范围,助手能基于课程资料回答。
  • 知识点检索:输入关键词,返回相关讲义段落或视频时间点。
  • 练习批改辅助:对主观题给出参考评分和修改建议。

本文以第一类“课程答疑”为例,部署一个基于开源模型和检索增强的问答助手。
你需要准备:一台2核4G以上的Linux云服务器(Ubuntu 22.04或Debian 12)、一个域名(可选)、以及课程相关的文本资料(PDF或Word转成纯文本)。

部署环境:装好Docker和基础依赖

用Docker可以避免模型依赖冲突。
以Ubuntu为例,先更新系统并安装Docker:

sudo apt update && sudo apt upgrade -y
sudo apt install -y docker.io docker-compose-plugin
sudo systemctl enable --now docker

验证Docker是否正常:

docker run --rm hello-world

如果看到“Hello from Docker!
”说明安装成功。
接着拉取一个轻量级开源模型服务镜像,例如Ollama,它支持多种小参数模型,适合4G内存的机器:

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

拉取一个适合中文问答的小模型(这里以qwen2:1.5b为例,实际可选模型请以镜像内ollama list为准):

docker exec -it ollama ollama pull qwen2:1.5b

拉取完成后,测试模型是否能响应:

curl http://localhost:11434/api/generate -d '{"model":"qwen2:1.5b","prompt":"什么是光合作用?","stream":false}'

如果返回一段中文解释,说明模型服务正常。

让助手“懂”你的课程:接入课程资料

通用模型不知道你的讲义内容,需要把课程文本喂给它。
简单做法是使用检索增强生成(RAG):把课程资料切片存入向量库,提问时先检索相关片段,再让模型基于片段回答。

可以用开源工具如AnythingLLM或FastGPT,它们提供Docker部署和可视化上传资料。
以AnythingLLM为例,拉取镜像并运行:

docker run -d -p 3001:3001 -v anythingllm:/app/server/storage --name anythingllm mintplexlabs/anythingllm

浏览器访问http://服务器IP:3001,按向导设置管理员账号。
在设置中选择LLM提供商为“Ollama”,地址填http://宿主机IP:11434(如果容器网络不通,可改用http://172.17.0.1:11434),模型选择刚才拉取的qwen2:1.5b。

然后新建工作区,上传课程PDF或TXT文件,系统会自动切片和向量化。
上传后在工作区提问“作业提交截止时间是什么”,观察是否引用资料回答。

对外提供访问:配置反向代理和HTTPS

默认3001端口直接暴露不安全,建议用Nginx做反向代理并加HTTPS。
安装Nginx:

sudo apt install -y nginx

创建配置文件/etc/nginx/sites-available/edu-ai:

server {
    listen 80;
    server_name ai.yourdomain.com;
    location / {
        proxy_pass http://127.0.0.1:3001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

启用配置并重载:

sudo ln -s /etc/nginx/sites-available/edu-ai /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

如需HTTPS,可用Certbot申请免费证书:

sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d ai.yourdomain.com

按提示完成域名验证即可。
完成后用浏览器访问域名,确认能打开助手界面。

避坑指南:新手常遇到的三个问题

  • 模型响应慢或内存不足:1.5B模型在4G内存机器上可能吃紧,建议关闭其他服务,或换用更小的模型(如qwen2:0.5b)。如果频繁OOM,增加swap或升级到8G内存。
  • 容器内无法连接Ollama:AnythingLLM容器内访问localhost:11434会失败,必须用宿主机IP或Docker网桥地址。可以用docker inspect ollama | grep IPAddress查看Ollama容器IP,但更稳妥的是用--network host模式运行Ollama。
  • 上传资料后回答不准确:检查切片大小和检索数量。默认切片可能过大,在AnythingLLM工作区设置中把“文本块大小”调小到500字符左右,并提高检索返回条数到4-6条。

验证效果与后续优化

用课程中真实出现的问题测试,例如“第三章的重点是什么”“实验报告格式要求”。
如果回答能引用上传资料中的原句,说明检索生效。
如果回答泛泛而谈,回到工作区查看检索到的片段是否相关,必要时补充资料或调整切片。

日常维护只需注意:定期备份anythingllm数据卷、监控服务器内存使用、更新模型时先在小范围测试。
这个方案适合小规模课程答疑,不承诺高并发;
如果同时使用人数较多,需要进一步做负载测试和模型量化优化。

常见疑问

没有GPU能用吗?
可以。本文示例使用CPU推理,响应速度较慢但能满足低频答疑。如果追求更快响应,可考虑租用带GPU的云服务器,但成本会上升。

课程资料是扫描版PDF怎么办?
需要先做OCR转成文字。可以用开源工具如Tesseract,或在上传前用办公软件导出为可复制文本的PDF。

助手会泄露学生隐私吗?
所有数据存储在你自己服务器的数据卷中,不会自动上传到外部。但建议不要上传包含学生姓名、学号等敏感信息的资料,或在问答中避免输入个人身份信息。

分享到:
上一篇
AI健康管理应用搭建教程:从零部署到数据验证
下一篇
AI智能辅导系统搭建:从服务器到可运行的最小闭环
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意