考试院查重文档说明:
初始化方式:
注:若keyword_mapping.json不存在,则首先运行 python comparison.py # 计算知识点/物理量映射ID
python db_train_app.py # mongodb数据清洗与向量化/计算物理量/知识点转ID/计算求解类型
python hm_ir_train_app.py # hnsw模型/关键词检索/公式查重模型初始化
启动方式:
1、全部功能重启命令
conda activate dup_search
python restart_server.py
2、部分功能重启命令
conda activate dup_search
python restart_server.py 0/1/2/3
其中:
0表示重启考试院题库查重功能
1表示重启考试院题库HNSW模型检索功能
2表示重启多维度(求解类型/难度)分类模型功能
3表示重启服务监控功能
查重功能主要分三个部分(公式查重、关键词检索、文本查重、语义查重):
〇、数据初始化
- config.py: 基础配置信息,包含数据库地址、调用接口地址、日志初始化配置、相似度阈值等
- main_clear/sci_clear.py: 数据清洗模块
- data_preprocessing.py: 数据预处理代码,包含数据清洗、字段数据拼接、数据向量化等
- hnsw_model_train.py: 初始化训练HNSW模型
一、公式查重
- formula_process: 公式规则抽取、训练词袋模型和计算题库所有公式向量
二、关键词检索
- word_segment.py: 文档分词功能
- ir_db_establish.py: 构建倒排索引并将结果存入sqlite数据库
- info_retrieval.py: 使用BM25算法进行关键词检索打分排序
三、文本查重
- hnsw_retrieval.py: HNSW召回、文本相似查重、语义相似查重
- hnsw_model.py: HNSW模型加载保存以及查操作
- hnsw_app: 全学科题库查重接口服务
四、语义查重
- dim_classify.py: 求解类型分类/难度分类
- dim_classify_app.py: 求解类型分类/难度分类服务
- physical_quantity_extract: 物理量规则提取
- comprehensive_score.py: 题型/求解类型/难度/物理量/知识点打分规则