hicai-zju/SciKnowEval
收藏SciKnowEval 数据集概述
数据集简介
SciKnowEval 是一个用于评估大型语言模型(LLMs)在多层次科学知识上的能力的基准测试。该基准测试受古代中国哲学“中庸”的深刻原则启发,旨在评估 LLMs 在以下五个维度上的能力:
- 广泛学习(知识覆盖)
- 深入探究(知识探究与探索)
- 深刻思考(知识反思与推理)
- 清晰辨别(知识辨别与安全评估)
- 勤奋实践(知识实践与应用)
数据集结构
评估能力
- L1: 广泛学习(知识覆盖)
- L2: 深入探究(知识探究与探索)
- L3: 深刻思考(知识反思与推理)
- L4: 清晰辨别(知识辨别与安全评估)
- L5: 勤奋实践(知识实践与应用)
数据统计
数据集包含多个科学领域的任务,具体统计信息请参考 figure/stats.png。
数据构建
数据集的构建包括以下几个步骤:
- 从文献语料库生成新的 QA 对:从 BioRxiv、PubMed 和教科书数据库等来源收集科学论文,使用大型语言模型生成 QA 对。
- 重构现有 QA 对:从现有科学基准(如 MedMCQA、SciEval 等)中采样 QA 对,并使用 LLMs 重构问题和选项。
- 转换科学数据库:将生物和化学数据库(如 PubChem、UniProtKB)中的数据转换为适合 LLM 评估的文本格式。
- 质量控制:每个任务都由生物和化学领域的专家进行验证,以确保数据的相关性和正确性。
数据集使用
安装
bash git clone https://github.com/HICAI-ZJU/SciKnowEval.git cd SciKnowEval pip install -r requirements.txt
数据准备
- 下载数据集:可以从 HuggingFace 或 GitHub 仓库的
./raw_data/文件夹中下载。 - 数据格式:每个数据项必须包含原始信息,如问题、选项、答案、类型、领域、级别、任务和子任务。
模型准备
- 对于关系提取任务,使用
word2vec模型计算文本相似度。 - 对于使用 GPT 评分的任务,设置 OpenAI API 密钥。
评估
运行 eval.py 进行模型评估:
bash
python eval.py
--data_path your/model/predictions.json
--word2vec_model_path path/to/GoogleNews-vectors-negative300.bin
--gen_evaluator gpt-4o
--output_path path/to/your/output.json
引用
@article{feng2024sciknoweval, title={SciKnowEval: Evaluating Multi-level Scientific Knowledge of Large Language Models}, author={Feng, Kehua and Ding, Keyan and Wang, Weijie and Zhuang, Xiang and Wang, Zeyuan and Qin Ming and Zhao, Yu and Yao, Jianhua and Zhang, Qiang and Chen, Huajun}, year={2024}, }




