EvalScope: 一个简化高效的大型模型评估与性能基准测试框架

Ray

EvalScope简介

EvalScope是一个专为评估大型模型(包括大型语言模型和多模态大型语言模型)而设计的开源框架。随着大型模型的快速发展,对模型进行全面、客观的评估变得越来越重要。EvalScope正是为了满足这一需求而诞生的,它提供了一套简化而高效的评估流程,帮助研究人员和开发者更好地理解和比较不同模型的性能。

框架特性

EvalScope具有以下主要特性:

  1. 丰富的基准数据集: 预加载了多个常用的测试基准,包括MMLU、CMMLU、C-Eval、GSM8K、ARC、HellaSwag、TruthfulQA、MATH、HumanEval等。这些数据集涵盖了多个领域和任务类型,可以全面评估模型的能力。

  2. 多样化的评估指标: 实现了多种常用的评估指标,可以从不同角度衡量模型的性能。

  3. 统一的模型接口: 提供了统一的模型访问机制,兼容多个模型系列的Generate和Chat接口,简化了评估过程。

  4. 自动化评估: 包括客观问题的自动评估,以及使用专家模型进行复杂任务评估,提高了评估效率。

  5. 评估报告生成: 可自动生成详细的评估报告,方便分析和比较。

  6. Arena模式: 用于模型间的比较和客观评估,支持多种评估模式,包括:

    • 单模式: 对单个模型进行评分
    • 基线对比模式: 与基线模型进行比较
    • 全对比模式: 所有模型间进行两两比较
  7. 可视化工具: 提供直观的评估结果展示,便于理解和分析。

  8. 模型性能评估: 提供模型推理服务的性能测试工具和详细统计信息。

  9. OpenCompass集成: 支持使用OpenCompass作为评估后端,提供更高级的封装和任务简化。

  10. VLMEvalKit集成: 支持使用VLMEvalKit作为评估后端,便于启动多模态评估任务。

  11. 全链路支持: 通过与ms-swift训练框架的无缝集成,提供从模型训练、部署、评估到报告查看的一站式开发流程。

EvalScope框架架构

框架架构

EvalScope的架构包括以下主要模块:

  1. 模型适配器: 用于将特定模型的输出转换为框架所需的格式,支持API调用模型和本地运行模型。

  2. 数据适配器: 负责转换和处理输入数据,以满足各种评估需求和格式。

  3. 评估后端:

    • Native: EvalScope自身的默认评估框架
    • OpenCompass: 支持使用OpenCompass作为评估后端
    • VLMEvalKit: 支持使用VLMEvalKit作为评估后端
    • ThirdParty: 其他第三方评估任务,如ToolBench
  4. 性能评估器: 负责测量模型推理服务的性能,包括性能测试、压力测试、性能报告生成和可视化。

  5. 评估报告: 生成总结模型性能的最终评估报告。

  6. 可视化: 提供可视化结果,帮助用户直观理解评估结果。

快速开始

要开始使用EvalScope,您可以通过以下步骤快速进行简单的评估:

  1. 安装EvalScope:

    pip install evalscope
    
  2. 运行简单评估:

    python -m evalscope.run \
    --model qwen/Qwen2-0.5B-Instruct \
    --template-type qwen \
    --datasets arc
    

这个命令将使用默认设置在ARC数据集上评估Qwen2-0.5B-Instruct模型。

参数化评估

如果您想进行更加定制化的评估,可以使用更多参数:

python evalscope/run.py \
--model qwen/Qwen2-0.5B-Instruct \
--template-type qwen \
--model-args revision=v1.0.2,precision=torch.float16,device_map=auto \
--datasets mmlu ceval \
--use-cache true \
--limit 10

这个命令将在MMLU和CEval数据集上评估Qwen2-0.5B-Instruct模型,使用指定的模型参数和生成配置。

评估后端

EvalScope支持多种评估后端:

  1. Native: EvalScope自身的默认评估框架
  2. OpenCompass: 支持使用OpenCompass启动评估任务
  3. VLMEvalKit: 支持使用VLMEvalKit启动多模态评估任务
  4. ThirdParty: 其他第三方评估任务,如ToolBench

自定义数据集评估

EvalScope支持使用自定义数据集进行评估。您可以参考自定义数据集评估用户指南了解详细信息。

离线评估

EvalScope支持在没有网络连接的情况下使用本地数据集评估模型。详情请参考离线评估用户指南

Arena模式

Arena模式允许通过两两对战的方式评估多个候选模型,并可以选择使用AI增强自动审核(AAR)自动评估过程或人工评估来获得评估报告。详情请参考Arena模式用户指南

模型服务性能评估

EvalScope提供了一个专注于大型语言模型的压力测试工具,可以自定义支持各种数据集格式和不同的API协议格式。详情请参考模型服务性能评估用户指南

排行榜

EvalScope还提供了LLM排行榜,旨在为研究人员和开发者提供一个客观、全面的评估标准和平台,帮助他们了解和比较ModelScope上各种模型在不同任务上的表现。您可以在这里查看最新的排行榜。

未来计划

EvalScope团队正在积极开发和改进框架,未来计划包括:

  • Agents评估
  • vLLM支持
  • 分布式评估
  • 多模态评估
  • 更多基准测试(如GAIA、GPQA、MBPP等)
  • 自动审核员功能增强

总的来说,EvalScope为大型模型评估提供了一个强大而灵活的框架。无论您是研究人员还是开发者,EvalScope都能帮助您更好地理解和比较不同模型的性能,从而做出更明智的决策。随着框架的不断发展和完善,相信EvalScope将在大型模型评估领域发挥越来越重要的作用。

avatar
0
0
0
最新项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号