尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

EvalScope使用过程中的问题汇总

EvalScope使用过程中的问题汇总
📅 发布时间:2026/6/22 12:47:07

1. 自定义数据集使用时的KeyError问题

问题描述

使用自定义数据集评测时,配置tasks: ["CustomRetrieval"]会触发KeyError,报错信息如下:

KeyError: "KeyError: 'CustomRetrieval' not found. Did you mean: EcomRetrieval?"

背景说明

  • EvalScope官方文档明确自定义数据集评测任务需指定为CustomRetrieval;
  • ./outputs目录下已存在CustomRetrieval相关数据集;
  • 个人理解:该报错不影响评测结果生成,仅导致最终评测流程的汇总表格无法输出,整体无核心影响。

相关脚本

BASE_TASK_CFG4 = {"work_dir": "./outputs/bge_m3_T2Retrieval_eng","eval_backend": "RAGEval","eval_config": {"tool": "MTEB","model": [{"model_name_or_path": "/gpu/huangyl3/Embedding_eval/model/bge_m3",  # 循环时动态赋值"pooling_mode": None,"max_seq_length": 512,"prompt": "","model_kwargs": {"torch_dtype": "auto"},"encode_kwargs": {"batch_size": 128},"hub": "modelscope"}],"eval": {"tasks": ["CustomRetrieval"],"dataset_path": "/gpu/huangyl3/Embedding_eval/datas/T2Retrieval_eng/retrieval_data","verbosity": 2,"overwrite_results": True,"top_k": 5},},
}if __name__ == "__main__":run_task(task_cfg=BASE_TASK_CFG4)

2. 两阶段测试脚本(检索+重排)

相关脚本

from evalscope.run import run_task
two_stage_task_cfg = {"work_dir": "./outputs/bge-reranker-v2-m3_T2Retrieval","eval_backend": "RAGEval","eval_config": {"tool": "MTEB","model": [{"model_name_or_path": "/gpu/huangyl3/Embedding_eval/model/bge_m3","is_cross_encoder": False,"max_seq_length": 512,"model_kwargs": {"torch_dtype": "auto"},"encode_kwargs": {"batch_size": 64,},},{"model_name_or_path": "/gpu/huangyl3/Embedding_eval/model/bge-reranker-v2-m3","is_cross_encoder": True,"max_seq_length": 512,"prompt": "为这个问题生成一个检索用的表示","model_kwargs": {"torch_dtype": "auto"},"encode_kwargs": {"batch_size": 32,},},],"eval": {"tasks": ["T2Retrieval"],"verbosity": 2,"overwrite_results": True,"top_k": 5},},
}
run_task(task_cfg=two_stage_task_cfg)

3. model_kwargs中torch_dtype报错问题

问题描述

评测gte-multilingual-mlm-base、Qwen3-Embedding-0.6B、bge-m3模型(非检索数据集评测任务)时,原配置"model_kwargs": {"torch_dtype": "auto"}会触发报错;
临时解决方案:将torch_dtype: auto硬改为dtype: float可规避报错,但并非最优方案。

4. 批量评测脚本的执行报错问题

问题描述

批量循环评测多个模型时,第一个模型可正常执行,后续模型会触发报错;仅改为枚举式写法可正常批量运行,报错原因暂未明确,需指导。

相关脚本

import time
import datetime
from evalscope.run import run_task# ===================== 配置核心参数 =====================
# 定义需要批量评测的模型列表(替换为你要测的模型名)
MODEL_LIST = ["iic/gte-multilingual-mlm-base",  # BGE系列示例"Qwen/Qwen3-Embedding-0.6B",  # 多语言嵌入模型示例"BAAI/bge-m3"  # GTE-large示例
]# 基础配置模板(不包含model_name_or_path,循环时动态填充)
BASE_TASK_CFG = {"work_dir": "/Users/hyl/PyCharmMiscProject/GAi/Embedding_eval/outputs","eval_backend": "RAGEval","eval_config": {"tool": "MTEB","model": [{"model_name_or_path": "",  # 循环时动态赋值"pooling_mode": None,"max_seq_length": 512,"prompt": "","model_kwargs": {"torch_dtype": "auto"},"encode_kwargs": {"batch_size": 128},"hub": "modelscope"}],"eval": {"tasks": ["T2Retrieval"],"verbosity": 2,"overwrite_results": True,"top_k": 5,"hub": "modelscope"},},
}# ===================== 核心逻辑:循环评测 + 晚上自动执行 =====================
def run_batch_evaluation():# 遍历模型列表,逐个执行评测for idx, model_name in enumerate(MODEL_LIST):try:# 复制基础配置,避免修改原字典task_cfg = BASE_TASK_CFG.copy()# 动态替换模型名task_cfg["eval_config"]["model"][0]["model_name_or_path"] = model_name# 打印当前评测进度current_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")print(f"\n===== 开始评测第 {idx + 1}/{len(MODEL_LIST)} 个模型 =====")print(f"批次时间:{current_time}")print(f"模型名:{model_name}")# 记录评测开始时间(精确到毫秒)start_time = datetime.datetime.now()print(f"评测开始时间:{start_time.strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]}")  # 保留毫秒print("===========================\n")# 执行评测任务run_task(task_cfg=task_cfg)# 记录评测结束时间,计算总耗时end_time = datetime.datetime.now()duration = end_time - start_time# 转换耗时为 时:分:秒 格式(总秒数转时分秒)hours = duration.seconds // 3600minutes = (duration.seconds % 3600) // 60seconds = duration.seconds % 60# 保留毫秒的耗时字符串duration_str = f"{hours}小时{minutes}分钟{seconds}秒(总耗时:{duration.total_seconds():.2f}秒)"# 打印完成提示 + 时间统计print(f"\n===== 模型 {model_name} 评测完成 =====")print(f"评测结束时间:{end_time.strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]}")print(f"本次评测总耗时:{duration_str}")print("===========================\n")# 可选:模型间间隔(避免频繁请求,比如休息5分钟)time.sleep(300)except Exception as e:# 单个模型评测失败,记录错误并继续下一个end_time = datetime.datetime.now()print(f"\n===== 模型 {model_name} 评测失败 =====")print(f"失败时间:{end_time.strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]}")print(f"错误信息:{str(e)}")print("继续评测下一个模型...\n")continue# ===================== 启动批量评测 =====================
if __name__ == "__main__":run_batch_evaluation()

备注

持续更新.......

相关新闻

  • 从入门到精通:Open-AutoGLM自动化框架部署全攻略(附官方Git地址)
  • 揭秘Open-AutoGLM核心机制:如何实现零人工干预的智能推理?
  • PSMNet立体视觉实战指南:5步实现精准深度估计

最新新闻

  • 南通同城头部繁育探店实测 朋博猫舍犬舍综合实力本地排名第一 - 同城宠物优选基地
  • 做网安到底拼学历还是拼技术?四年转行从业者说出真相
  • 下一代防火墙高级功能实战:唤醒WAF、IPS与应用程序控制的精准防护
  • MonkeyCode竞品对比分析:Copilot/Cursor/Windsurf全方位比较
  • 深度解析48tools多平台直播抓取架构:从技术实现到反爬对抗的实战指南
  • CodeWarrior嵌入式开发环境配置全解析:从编译器优化到团队协作

日新闻

  • 2026速览惠州叛逆青少年学校前十大排名名单出炉 - 武汉中职最新信息发布
  • 2026上饶白蚁消杀哪家好?15年本土2大权威白蚁防治公司推荐(金盾虫控/青蚁卫士) - 我叫一
  • 天龙八部单机版终极数据管理工具:5个技巧快速掌握游戏数据编辑

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号