你可以直接访问 Iframe 的链接,然后故意乱做,提交后它会将正确答案标红。你可以继续修改答案至正确答案,因为这次提交按钮不会变成再来了。
在项目目录中 config.toml 可以配置,可以参照 config_template.toml:
- 大模型平台密钥(默认的实现是硅基流动,若需要修改平台可以自行参考平台文档修改请求地址,以及序列化数据结构)
- 解答任务并行数量(平台会限制 TPM/RPM)
- 学工系统 Cookie(会话 ID 会经常变化,抓取 30 分钟内的为宜)
对于本学年的题目,你可以直接将项目根目录的 gm.js 添加到油猴脚本中。
如果你不想自己重新生成题库的话,直接将本项目的 gm.js 添加到油猴插件里即可,后面的步骤可以不看。
你需要使用 Cookie 爬取学工系统的题库,执行 cargo run --example mk_cache,题库会默认缓存到 ./cache 文件夹下。
学生手册需要是 markdown 文档。学校发布的 pdf 可能是纯图片的,这个时候就需要你先 OCR 一下再转换为 Markdown。文件路径可以在 config.toml 中指定。
其次,使用缓存的题目去请求大模型,大模型会依照 prompt.json 的要求返回题解。请依照你的经济实力调节请求并行数量,这回极大提高训练速度。执行 cargo run --example mk_solution ,这段时间可能相当漫长。
题库训练完以后会被保存到 ./solution_mapping.json 中,你可以将它发布到任意 CDN。题库的本质是题目 Hash 与解答的映射。
将脚本添加到暴力猴(推荐)。油猴脚本会拉取题库,你可以修改成你的题库地址,你可以在浏览器控制台观察到可能的错误和日志。
这可能是大模型的风控机制导致的,对于某些疑似敏感问题的问题无法回答。
原因如上。
可以更换请求的 model 参数,记得更改下返回的序列化数据结构,因为不同的模型返回的 json 格式不一。
欢迎 PR 与 Issue。
对于本项目来说,题库和油猴脚本才是最重要的(它们非常易于使用),爬虫和请求工具需要一定知识来修改,发布源码足矣。
感觉没必要。