大浪淘沙 发表于 2025-9-1 23:05:53

0成本搭建 支持OCS网课助手的AI题库(首发)

本帖最后由 大浪淘沙 于 2025-9-2 00:02 编辑

一、项目简介

OCS网课助手AI题库系统是专为在线课程学习者设计的智能答题工具。它能够自动从多个AI平台获取题目答案,并将结果缓存到本地数据库中,帮助学生在网课学习过程中快速解决题目问题,提高学习效率。

OCS链接:https://docs.ocsjs.com/

二、功能特性

1. 多AI平台支持:

[*]硅基流动(SiliconFlow)
[*]阿里云百炼
[*]智普AI
[*]Ollama(本地模型)
[*]DeepSeek
[*]ChatGPT
[*]Gemini

2. 双数据库支持:

[*]MySQL(适用于生产环境)
[*]SQLite(适用于轻量级部署)


3.智能缓存机制:

[*]自动缓存已查询的题目答案
[*]减少重复API调用,提高响应速度


4. RESTful API接口:

[*]提供标准API供其他应用调用

三、系统要求
操作系统:Windows 7及以上 / Linux / macOS
Go版本:1.21或更高版本
数据库(任选其一):

[*]MySQL 5.7或更高版本
[*]SQLite 3(内置支持,无需额外安装)


四、安装步骤

安装Go语言环境:

[*]访问 https://golang.org/dl/ 下载适合您操作系统的Go安装包
[*]按照官方指南完成安装
[*]验证安装:打开命令行执行 go version


获取项目源码:

[*]方法一:使用Git克隆
git clone https://github.com/blankzsh/Go-ocs.git
cd Go-ocs
[*]方法二:直接下载ZIP包并解压

    https://saem.lanzouq.com/iCo9f355i2gf

安装依赖:
打开命令行,进入项目根目录,执行:
go mod tidy 或者 go env -w GOPROXY=https://goproxy.cn,direct && go mod tidy (国内镜像)
配置系统:

[*]复制配置文件:
cp configs/config.example.json configs/config.json (Linux/macOS)
copy configs\config.example.json configs\config.json (Windows)
[*]编辑 configs/config.json 文件:
{
"host": "127.0.0.1",
"port": 8000,
"platform": "siliconflow",
"database_type": "mysql",
"api_keys": {
    "aliyun": "your_aliyun_api_key_here",
    "siliconflow": "your_siliconflow_api_key_here",
    "zhipu": "your_zhipu_api_key_here",
    "deepseek": "your_deepseek_api_key_here",
    "chatgpt": "your_chatgpt_api_key_here",
    "gemini": "your_gemini_api_key_here"
},
"models": {
    "aliyun": "qwen-plus-latest",
    "siliconflow": "deepseek-ai/DeepSeek-R1",
    "zhipu": "glm-4",
    "ollama": "llama3",
    "deepseek": "deepseek-chat",
    "chatgpt": "gpt-3.5-turbo",
    "gemini": "gemini-pro"
},
"mysql": {
    "host": "127.0.0.1",
    "port": 3306,
    "user": "root",
    "password": "your_mysql_password",
    "database": "question_bank"
},
"sqlite": {
    "path": "question_bank.db"
}
}
[*]配置说明:

[*]host: 服务器监听地址
[*]port: 服务器监听端口
[*]platform: 使用的AI平台(siliconflow/aliyun/zhipu/ollama/deepseek/chatgpt/gemini)
[*]database_type: 数据库类型(mysql/sqlite)
本地优先使用sqlite!!!
[*]api_keys: 各平台的API密钥
[*]models: 各平台使用的模型
[*]mysql: MySQL数据库配置
[*]sqlite: SQLite数据库配置

五、运行系统

启动服务:
在项目根目录下执行:
go run cmd/main.go
确认服务启动成功:

[*]查看控制台输出,确认无错误信息
[*]记住显示的API配置信息,后续OCS网课助手配置会用到

六、配置工具使用

为了方便配置系统,项目提供了命令行配置工具:

Windows系统:

[*]英文版:powershell -ExecutionPolicy Bypass -File .\configurator.ps1
[*]中文版:powershell -ExecutionPolicy Bypass -File .\configurator_zh.ps1

Linux/Mac系统:
./configurator.sh
通过配置工具可以:

[*]选择AI平台
[*]配置各平台API密钥
[*]设置各平台使用的模型
[*]选择数据库类型
[*]配置数据库连接参数

七、API使用方法

查询题目答案:
GET /api/query?title=问题内容[&options=选项内容][&type=问题类型]
示例:
curl "http://127.0.0.1:8000/api/query?title=中国的首都是哪里%3F&options=北京###上海###广州###深圳&type=选择题"
响应格式:
{
"code": 0,
"msg": "获取成功",
"data": {
    "data": "北京"
}
}

八、与OCS网课助手集成

启动AI题库服务后,记录控制台输出的配置信息,例如:
{
"name": "完美题库",
"homepage": "https://currso.com/",
"url": "https://127.0.0.1:8000/api/query",
"method": "get",
"type": "GM_xmlhttpRequest",
"contentType": "json",
"data": {
    "title": "${title}",
    "options": "${options}",
    "type": "${type}"
},
"handler": "return (res)=>res.code === 0 ? : "
}
在OCS网课助手中添加题库配置:

[*]打开OCS网课助手
[*]进入题库设置
[*]添加新的题库配置,填入上述信息
[*]保存配置并启用

详细教程

经过上面的方法,我们得到的题库配置类似 [{···}]。如果你的OCS中有其他题库配置,根据OCS的提示,我们需要在原有的题库配置后面加上“###”然后再粘贴我们的题库配置。一般情况下点击确定就可以了。但如果我们使用的是第三方题库,或者你将题库搭建在远程服务器中,我们会遇到这样的警告。https://imgheybox.max-c.com/web/bbs/2025/04/04/9876a41cccf81fb7e97dc5b23ec08e7e/thumb.png?imageMogr2/format/webp/quality/50/auto-orient/ignore-error/1


OCS第三方题库弹窗最简单的方法是安装OCS全域名通用版。安装此版本与原版是一样的,而且也是免费的。在安装完全域名版本后,记得关闭原版。https://imgheybox.max-c.com/web/bbs/2025/04/04/c3fbddff43967db50128eec3b5faad83/thumb.png?imageMogr2/format/webp/quality/50/auto-orient/ignore-error/1


当然,你也可以使用原版,我们点击浏览器顶部的油猴图标(脚本猫同理),然后点击编辑。
这时我们会来到脚本的代码页。在50多行的部分,我们加上//@connect       api.zaizhexue.top这个ZE题库的域名,应该改成你的服务器IP。https://imgheybox.max-c.com/web/bbs/2025/04/04/9c15e45cba1bf5e74676b1d7a8e167e6/thumb.png?imageMogr2/format/webp/quality/50/auto-orient/ignore-error/1


https://imgheybox.max-c.com/web/bbs/2025/04/04/7cea8e2c4d70f06d798e53b45785769a/thumb.png?imageMogr2/format/webp/quality/50/auto-orient/ignore-error/1


最后我们ctrl+s保存,然后刷新学习通的界面就可以正常使用题库了。
九、常见问题及解决方案

端口被占用:

[*]系统会自动检测端口冲突并切换到可用端口
[*]查看控制台输出确认实际使用的端口号

数据库连接失败:

[*]检查数据库配置是否正确
[*]确认数据库服务是否启动
[*]验证用户名和密码是否正确



API调用失败:

[*]检查对应AI平台的API密钥是否正确配置
[*]确认网络连接是否正常
[*]查看控制台错误日志获取详细信息

Windows脚本执行问题:

[*]使用PowerShell版本的配置工具
[*]执行时添加 -ExecutionPolicy Bypass 参数
十、技术支持

项目已开源,源代码托管在GitHub上:https://github.com/blankzsh/Go-ocs

如遇到问题或有改进建议,欢迎:

[*]提交GitHub Issue
[*]发送邮件至项目维护者
[*]在下方点击进入博客讨论或者反馈
点击评论反馈

十一、获取阿里密钥
1.登录阿里云百炼https://bailian.console.aliyun.com/?tab=model#/api-key,没有阿里云账号的话需要注册。
2.点击右上角的 创建我的 API-KEY 按钮。

3.在弹出的窗口中选择默认业务空间(或者你也可以自定义),如果你想要的话可以填入描述。
4.点击右下角的确定按钮
5.随后,你应该能看到列表中新增了一行,点击右侧的 查看 按钮。

6.点击复制按钮
8.使用配置工具题填写即可

十二、更新日志
v1.0.0 (2025-09-01)

[*]初始版本发布
[*]支持7个AI平台
[*]支持MySQL和SQLite双数据库
[*]提供RESTful API接口
[*]内置Web管理后台
[*]提供跨平台配置工具


李七夜 发表于 2025-9-1 23:47:24

大佬牛逼

clocedop 发表于 2025-9-2 00:18:03

感谢分享

rgm1988 发表于 2025-9-2 08:56:12

感谢分享

Yaoyuandu 发表于 2025-9-2 12:49:22

谢分享

fgojjhh 发表于 3 天前

感谢分享
页: [1]
查看完整版本: 0成本搭建 支持OCS网课助手的AI题库(首发)