我们很开心地宣布,SwanLab 已经与 领先的大模型评估框架 EvalScope 完成官方集成。
在最新的 EvalScope 版本中,可以使用SwanLab进行监控LLM测试评估过程中的性能曲线,并方便的将不同模型、不同数据集、不同硬件环境下的测试进行对比。接下来让我介绍一下如何使用。
EvalScope介绍
EvalScope 是 ModelScope 的官方模型评估和基准测试框架,专为满足各种评估需求而设计。它支持各种模型类型,包括大型语言模型、多模态模型、Embedding模型、Reranker模型和 CLIP 模型。
该框架支持多种评估场景,如端到端的RAG评估、竞技场模式和推理性能测试。它内置了MMLU、CMMLU、C-Eval和GSM8K等基准和指标。此外,通过与 ms-swift 训练框架的无缝集成,可一键发起评测,为模型训练和评测提供全链路支持🚀
通过这次的合作集成,现在你可以使用 EvalScope 评估LLM性能,同时使用 SwanLab 方便地跟踪、对比、可视化。
关于EvalScope的更多信息可参考下面的链接:
- EvalScope GitHub仓库链接:https://github.com/modelscope/evalscope
- ModelScope魔搭社区:https://modelscope.cn/
SwanLab介绍
SwanLab 是一个开源、现代化设计的深度学习训练跟踪与可视化平台,常被称为"中国版 Weights & Biases + Tensorboard"。
SwanLab同时支持云端和离线使用,并适配了从PyTorch、Transformers、Lightning再到LLaMA Factory、veRL等30多种主流AI训练框架,Python API设计也简洁易上手,能轻松嵌入你的训练代码。
面向人工智能研究者,SwanLab设计了友好的Python API 和漂亮的UI界面,并提供训练可视化、自动日志记录、超参数记录、实验版本管理与对比、多人协同等功能。
在SwanLab上,研究者能基于直观的可视化图表发现训练问题,对比多个实验找到研究灵感,并通过在线网页的分享与基于组织的多人协同训练,打破团队沟通的壁垒,提高组织训练效率。
EvalScope x SwanLab组合拳
大模型评估测试,可以说不论在模型研发阶段还是落地阶段,都能发挥很大的价值。
在SwanLab社区中,就有不少开发者(不乏大厂)在使用 EvalScope 测试评估开源LLM 或者 自己SFT后的LLM,同时使用SwanLab来全对评估过程进行跟踪和可视化。
开发者通过SwanLab的多实验对比看板,快速对比不同模型在不同数据、不同硬件环境下的效果,
并使用SwanLab的实验版本管理,来留存和管理历史上的测试结果,来更好的完成 模型选型、训练效果评估 以及 实验存档。
在这次合作之后,开发者们能够更丝滑的使用这个两个工具,更轻松的执行评估任务。
总结来说,EvalScope和SwanLab的组合,让以往上手复杂的LLM评估测试,变得好测、好看还好管!
接下来我将介绍如何在EvalScope中开启SwanLab。
环境安装
安装下面的环境:
pip install evalscope
pip install swanlab
如果你需要扩展evalscope的更多功能,可以按需安装:
pip install -e '.[opencompass]' # Install OpenCompass backend
pip install -e '.[vlmeval]' # Install VLMEvalKit backend
pip install -e '.[rag]' # Install RAGEval backend
pip install -e '.[perf]' # Install Perf dependencies
pip install -e '.[app]' # Install visualization dependencies
pip install -e '.[all]' # Install all backends (Native, OpenCompass, VLMEvalKit, RAGEval)
评估Qwen模型表现
如果你希望评估Qwen2.5-0.5B-Instruct
在gsm8k
和arc
数据集上的表现,同时使用SwanLab
观测性能,可以运行下面的命令:
evalscope eval \
--model Qwen/Qwen2.5-0.5B-Instruct \
--datasets gsm8k arc \
--limit 5 \
--swanlab-api-key '你的API Key' \
--name 'qwen2.5-gsm8k-arc'
其中 swanlab-api-key
是你的SwanLab API Key,name
是实验名。 如果你希望设置自定义项目名,可以去往EvalScope
源码的 evalscope/perf/benchmark.py
的 statistic_benchmark_metric_worker
函数,找到 swanlab 部分,修改 project
参数。
可视化效果案例:
评估结果上传到私有化部署版
如果你不希望评估结果上传到公网或测试集群不方便联网,可以使用 SwanLab 私有化部署版。
上传的方式也非常简单,在命令行登录到私有化部署版即可。
比如你的部署地址是 http://localhost:8000
,可以运行:
swanlab login --host http://localhost:8000
完成登录后,再运行evalscope
的命令,就可以将评估结果上传到私有化部署版了。
写在最后
SwanLab团队致力于打造全球领先的人工智能研发工具链,为AI训练师与研究者服务。
感谢 ModelScope团队 向社区开源了如此出色的大模型评估测试框架,并祝贺在AI开发者群体广受欢迎。希望SwanLab未来能与更多做工具的小伙伴合作,打造优质的训练体验。
最后希望大家多多提出自己对SwanLab的期待与建议!
相关资料
-
EvalScope: https://github.com/modelscope/evalscope
-
SwanLab: https://github.com/SwanHubX/SwanLab
-
SwanLab与EvalScope集成文档: https://docs.swanlab.cn/guide_cloud/integration/integration-evalscope.html
-
SwanLab私有化部署教程: https://docs.swanlab.cn/guide_cloud/self_host/docker-deploy.html