一个用于CourseReading平台的Python工具箱。
pygrading的Python项目详细描述
CourseGrading(希冀)信息类专业教学与科研一体化平台开发用Python工具包
What is it
希冀平台 全面支撑计算机、大数据、人工智能、集成电路、信息安全、机器人、金融科技、区块链等专业建设。 基于平台建成了涵盖实验、质量指标及过程控制的完整在线实验体系,实现了“任何人、任何时间、任何地点均能开展实验学习”的目标。
通用评测 是一个通用的自动评测框架,基于该框架可以定制开发任何自己需要的自动评测内核。
PyGrading工具包 目前该工具包包含以下功能:
- 支持CourseGrading平台通用评测内核快速构建;
- 支持适用于通用评测题、云桌面环境和Jupyter实验环境的评测结果JSON串的快速生成;
- 支持HTML标签文本内容的快速生成,绝对好用的HTML生成工具;
希望使用本工具能够提高大家的工作效率,祝各位开发顺利!
Install
使用pip可以轻松安装PyGrading:
pip install pygrading
PyGrading的运行环境要求 Python >= 3.5,不支持Python2。
Quick Start
下面从一段简单的代码开始,使用PyGrading创建一个简单的通用评测内核:
importpygradingasgg# 创建一个任务对象job=gg.Job()# 设定任务得分、评定结果和评语job.score(100)job.verdict("Accept")job.comment("Hello World")# 输出评测结果job.print()
这样就可以得到一个评测结果:
{"verdict":"Accept","score":"100","rank":{"rank":"-1.0"},"HTML":"enable","comment":"Hello World"}
详细的使用手册请参考:PyGrading开发文档
Change Log
v1.0.1 Change Log (2020.11.24)
- 去除了渲染结果时默认使用
str2html
的特性,因为其可能会导致JS失效。
v1.0.0 正式版 Change Log (2020.11.21)
- 重构了测试版底层架构,简化了导入步骤和部分包的使用方式。
- 添加了命令行程序,支持使用
python -m pygrading init
创建项目模板。 - 添加了多线程评测支持,高效利用服务器资源,提高评测效率。
- 添加了评测超时控制功能,限制评测任务执行时间,防止卡死。
- 添加了快速提取程序输出中评测指标的功能(键值对智能识别)。
- 添加了图片转base64功能,快速生成图片展示元素。
- 添加了携带环境变量执行评测功能(用于支撑需要读取不同环境变量的测试用例)。
- 添加了评测指令执行静默模式,支持直接抛出评测指令的异常。
- 添加了一键打包评测内核功能,打包好的评测内核可以通内核和扩展上传。
- 优化了评测过程函数的参数要求,支持不带参数的简单过程函数。
FAQ
暂无内容
- 项目
标签: