同步操作将从 绫波绫波零/iMark 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
本项目旨在设计和实现一个支持智能化自动阅卷,提供AI自动识别、自动评分、智能评价和数据分析服务的软件平台,并且能够同时在桌面和移动端提供服务。
现阶段项目以 大学数据结构与算法期末考试 情景为切入点,重点解决基本阅卷过程中的一些问题,包括:
首先 识别和存储录入的试卷,分析其中的知识点、题型、难度等属性,并构建相应的知识图谱,为后续的智能阅卷提供基础。
对于 客观题,主要研究通过图像识别技术自动识别学生的答案,并进行相应的评分。
对于 主观题,主要研究利用语言大模型自动理解学生的答案,并评估其内容的正确性、逻辑性和表达的清晰度等。
智能阅卷平台 还需要 利用人工智能技术对阅卷结果进行分析和处理,为教师提供教学建议和优化方案,提高教学质量和效果。 最后 ,搭建起软件系统平台承载服务,并在桌面和移动端提供支持。
访问此链接在线体验:iMark - 智能阅卷系统
情景假设:大学操作系统期末考试
1. 内容提取
这一步主要实现录入试卷,识别并拆分个人信息、问题与作答。借助 PaddleOCR 实现试卷内容的自动识别分析,并根据识别结果进行裁剪。
2. 理解批阅
由 AI 理解录入的信息,并产生批阅结果,包括分数和评语。这里使用了百度文心大模型作为 AI 支持。
3. 二次编辑
在服务端对产生的结果进行二次编辑,以便整理和理解。主要是进行数据的整理、清洗和统一。
4. 整理和可视化
将原始数据整理成统计数据,并可视化产出。
1. 登录
2. 创建考试
3. 录入试卷
4. 录入答卷
5. 开始阅卷
6. 生成结果
7. 更多
1. 用户角色
项目专门面对教师提供服务。用例图如下:
2. 试卷录入设计
点击“开始录入”后,可以选择向系统导入一张或多张扫描文件。对于导入的每一份文件,系统先判断文件格式是否支持(pdf / png / jpg),对于受支持的文件再由OCR理解确认其类型。
确认类型后立即进行内容识别。
2. 阅卷流程设计
本项目采用分布式前后端开发,前端、业务逻辑处理、人工智能与图片处理模块分开部署。
(以下命令默认在 CentOS7 操作系统下进行)
sudo yum install wget
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.05-Linux-x86_64.sh
sh Anaconda3-2021.05-Linux-x86_64.sh #按照安装提示安装即可
将conda加入环境变量
在终端中打开 ~/.bashrc
:
# 在终端中输入以下命令:
vim ~/.bashrc
在 ~/.bashrc
中将conda添加为环境变量:
# 先按i进入编辑模式
# 在第一行输入:
export PATH="~/anaconda3/bin:$PATH"
# 若安装时自定义了安装位置,则将~/anaconda3/bin改为自定义的安装目录下的bin文件夹
修改 ~/.bash_profile
:
# 修改后的~/.bash_profile文件应如下(其中xxx为用户名):
export PATH="~/opt/anaconda3/bin:$PATH"
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/Users/xxx/opt/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/Users/xxx/opt/anaconda3/etc/profile.d/conda.sh" ]; then
. "/Users/xxx/opt/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/Users/xxx/opt/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
修改完成后,先按esc
键退出编辑模式,再输入:wq!
并回车,以保存退出
验证是否能识别conda命令:
在终端中输入source ~/.bash_profile
以更新环境变量
再在终端输入conda info --envs
,若能显示当前有base环境,则conda已加入环境变量
创建新的conda环境
# 在命令行输入以下命令,创建名为paddle_env的环境
# 此处为加速下载,使用清华源
conda create --name paddle_env python=3.8 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# 激活paddle_env环境
conda activate paddle_env
以上anaconda环境和python环境安装完毕
确保在 paddle_env
环境下:
git
yum install git
cd ~
mkdir imark & cd imark
mkdir statics
git clone https://gitee.com/genshin_ayanami/i-mark.git
完成之后在 /root/imark
路径下会存在一个 i-mark
文件夹和一个 statics
文件夹
uwsgi
pip install uwsgi
uwsgi.ini
, 修改为自己的配置vim /root/imark/uwsgi.ini
# uwsgi.ini file
[uwsgi]
# Django-related settings
# 端口号
http = :8008
# the base directory (full path)
chdir =/root/imark/i-mark/demo
# 静态文件访问映射
static-map=/files/download=/root/imark/i-mark/demo/upload/imgs
# Django s wsgi file
module = server.wsgi:application
wsgi-file=server/wsgi.py
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 4
# ... with appropriate permissions - may be needed
# chmod-socket = 664
# clear environment on exit
vacuum = true
申请后点击复制键复制自己的token
编写项目配置文件
settings.py
| i-mark
| - demo
| | -- aibit
| | -- ocr
| | -- seg
| | -- server
| | | --- settings.py
...
os.environ["EB_AGENT_ACCESS_TOKEN"] = "<access token>"
SERVER_PATH = 'http://127.0.0.1:8000/'
DEBUG = True # 能看到内部和报错信息
安装依赖
在 /root/imark/i-mark/demo/
下:
pip3 install -r requirements.txt
在 uwsgi.ini
文件的位置下(一般是 /root/imark/
):
uwsgi uwsgi.ini
关于 uwsgi 命令,请参考:uwsgi
1. Paddle OCR
https://github.com/PaddlePaddle/PaddleOCR/tree/release/2.7
PaddleOCR 旨在打造一套丰富、领先、且实用的OCR工具库,助力开发者训练出更好的模型,并应用落地。支持多种OCR相关前沿算法,在此基础上打造产业级特色模型PP-OCR、PP-Structure和PP-ChatOCRv2,并打通数据生产、模型训练、压缩、预测部署全流程。
覆盖20+高频应用场景,支持5种文本图像智能分析能力和部署,包括通用场景关键信息抽取(快递单、营业执照和机动车行驶证等)、复杂文档场景关键信息抽取(解决生僻字、特殊标点、多页pdf、表格等难点问题)、通用OCR、文档场景专用OCR、通用表格识别。针对垂类业务场景,也支持模型训练、微调和Prompt优化。
2. 文心一言语言大模型 ErnieBot
https://github.com/PaddlePaddle/ERNIE-Bot-SDK
ERNIE Bot SDK 仓库包含两个项目:ERNIE Bot Agent 和 ERNIE Bot。
ERNIE Bot Agent 是百度飞桨推出的基于文心大模型编排能力的大模型智能体开发框架,结合了飞桨星河社区的丰富预置平台功能。
ERNIE Bot 作为 ERNIE Bot Agent 的底层依赖,为开发者提供了便捷易用的接口,使其能够轻松调用文心大模型的强大功能,涵盖了文本创作、通用对话、语义向量以及AI作图等多个基础功能。
3. DRF - Django REST Framework
https://www.django-rest-framework.org/
Django REST framework 框架是一个用于构建Web API 的强大而又灵活的工具
特点:
4. Vue3
Vue 是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue 都可以胜任。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。