OpenCompass中MedBench数据集评估问题的分析与解决方案
问题背景
OpenCompass作为一个开源的大模型评估框架,在其最新版本0.2.2中集成了MedBench医疗基准测试数据集。然而,在实际使用过程中,用户反馈在尝试运行MedBench评估时遇到了多个技术问题,导致评估流程无法正常完成。
核心问题分析
经过深入分析,我们发现当前OpenCompass中的MedBench实现存在以下几个关键问题:
-
配置文件缺失:系统引用了名为medbench_gen_d44f24.py的配置文件,但该文件在实际代码库中并不存在,导致Config加载失败。
-
命名不一致问题:
- 安全评估数据集在下载包和排行榜中称为"MedSafety"
- 在部分配置文件中称为"MedSafety"
- 在0.2.2.rc1版本中称为"SafetyBench"
- 在数据集加载器中又被称为"SafetyBench"
-
评估器缺失:配置中引用的MedBenchEvaluator_SMDoc评估器类在代码库中不存在。
技术解决方案
针对上述问题,我们建议采取以下解决方案:
临时解决方案
-
文件重命名:将medbench_gen.py重命名为medbench_gen_d44f24.py,确保与引用一致。
-
数据集文件处理:移除数据集文件中多余的"_test"后缀,例如将DrugCA_test.jsonl重命名为DrugCA.jsonl。
-
依赖版本调整:将transformers升级至4.33.0版本,解决分词器相关错误。
长期建议
-
统一命名规范:开发团队应建立统一的命名规范,确保从配置文件到数据集加载器使用一致的命名。
-
完善文档:明确说明MedBench数据集的使用方法和注意事项,包括数据集下载后的预处理步骤。
-
版本兼容性:在项目文档中明确标注各功能支持的transformers版本范围。
最佳实践
对于需要进行医疗大模型评估的研究人员,我们建议:
-
直接从MedBench官方网站获取最新数据集和评估指南。
-
关注OpenCompass的版本更新,及时获取对MedBench的官方支持。
-
在本地评估时,确保严格按照数据集要求进行文件命名和目录结构配置。
总结
OpenCompass作为大模型评估的重要工具,其MedBench集成仍在不断完善中。开发团队已表示将在下一版本中解决当前存在的问题。对于急需进行医疗大模型评估的用户,建议直接通过MedBench官方平台提交评估请求,以获得最准确和稳定的评估结果。同时,我们也期待OpenCompass在未来版本中提供更加完善的医疗领域评估支持。