首页 > 其他分享 >OpenCompass使用LawBench数据测评本地Qwen大模型

OpenCompass使用LawBench数据测评本地Qwen大模型

时间:2024-11-19 17:32:47浏览次数:1  
标签:opencompass datasets 测评 -- Qwen OpenCompass chat LawBench lawbench

一、思维导图展示

  

 

二、OpenCompass简介

  OpenCompass是一个大模型测评体系,开源、高效。同时集成CompassKit测评工具、CompassHub测评集社区,CompassRank测评榜单。

  官网地址:https://opencompass.org.cn/home

三、OpenCompass安装

  3.1 创建虚拟环境

conda create --name opencompass python=3.10 -y
conda activate opencompass

  3.2 通过pip安装OpenCompass

# 支持绝大多数数据集及模型
pip install -U opencompass

# 完整安装(支持更多数据集)
# pip install "opencompass[full]"

# 模型推理后端,由于这些推理后端通常存在依赖冲突,建议使用不同的虚拟环境来管理它们。
# pip install "opencompass[lmdeploy]"
# pip install "opencompass[vllm]"

# API 测试(例如 OpenAI、Qwen)
# pip install "opencompass[api]"

  3.3 基于源码安装OpenCompass

git clone https://github.com/open-compass/opencompass opencompass
cd opencompass
pip install -e .
# pip install -e ".[full]"
# pip install -e ".[vllm]"

  3.4 下载系统数据集(可选)

    因为我们使用自己下载的数据集,所以系统的数据集,不是必要的,但是为了原始程序的健壮性,还是推荐下载,因为我没有验证不下载的情况。

# 下载数据集到 data/ 处
wget https://github.com/open-compass/opencompass/releases/download/0.2.2.rc1/OpenCompassData-core-20240207.zip

# 解压之后是个文件夹叫data(后面会告诉这个dataf放在那里,先记住这个data文件夹)
unzip OpenCompassData-core-20240207.zip

  3.5 使用ModelScope自动下载模型和数据(可选)

    因为我们也是使用本地的模型,不需要程序中自己下载,如果做在线测试的,可以配置一下

pip install modelscope
export DATASET_SOURCE=ModelScope

  3.6 在线测评(可选)

    至此如果,你具备FQ的条件的话,就可以直接进行在线测试了。

四、OpenCompass在线测评(可选)

  因为在线测评很多模型是从huggingface上直接下载,然后测评的,需要FQ,我这里就不演示了,直接把官网上的测试过程拿过来展示,如果不需要在线测试的可以直接跳过。

  4.1 首次测评

    OpenCompass 支持通过命令行界面 (CLI) 或 Python 脚本来设置配置。对于简单的评估设置,我们推荐使用 CLI;而对于更复杂的评估,则建议使用脚本方式。你可以在configs文件夹下找到更多脚本示例。

# 命令行界面 (CLI)
opencompass --models hf_internlm2_5_1_8b_chat --datasets demo_gsm8k_chat_gen

# Python 脚本
opencompass ./configs/eval_chat_demo.py

    可以在 configs 文件夹下找到更多的脚本示例。

  4.2 API测评

    OpenCompass 在设计上并不区分开源模型与 API 模型。您可以以相同的方式或甚至在同一设置中评估这两种类型的模型。

export OPENAI_API_KEY="YOUR_OPEN_API_KEY"
# 命令行界面 (CLI)
opencompass --models gpt_4o_2024_05_13 --datasets demo_gsm8k_chat_gen

# Python 脚本
opencompass  ./configs/eval_api_demo.py

# 现已支持 o1_mini_2024_09_12/o1_preview_2024_09_12  模型, 默认情况下 max_completion_tokens=8192.

  4.3 后端推理

    如果您想使用除 HuggingFace 之外的推理后端来进行加速评估,比如 LMDeploy 或 vLLM,可以通过以下命令进行。

opencompass --models hf_internlm2_5_1_8b_chat --datasets demo_gsm8k_chat_gen -a lmdeploy

五、加载本地测试数据集

  5.1 通过 git 下载我们要使用的LawBench数据集到本地

git clone https://gitee.com/ljn20001229/LawBench.git  

  

  说明:1处 OpenCompassData-core-20231110.zip是通过git下载的数据集压缩包,需要将其解压到同级的标记2处的 data 中。

  说明:3处 LawBench 是 OpenCompassData-core-20231110.zip 解压后的文件。

  

  至此我们自定义本地数据就就下载并放好了。

六、配置本地Qwen模型

  6.1 模型下载。直接在modelscope上下载即可。

   6.2 将下载好的模型,加入到项目目录中

  

七、编写本地测评脚本

  7.1 在根目录的configs文件夹中创建 eval_local_qwen_1_8b_chat.py 用作我们的Qwen1.8B模型的测评启动脚本,代码如下:

 1 # eval_local_qwen_1_8b_chat.py
 2 
 3 from mmengine.config import read_base
 4 
 5 with read_base():
 6     # 导入数据集
 7     from .datasets.lawbench.lawbench_zero_shot_gen_002588 import lawbench_datasets as zero
 8     from .datasets.lawbench.lawbench_one_shot_gen_002588  import lawbench_datasets as one
 9     # 导入模型
10     from  opencompass.configs.models.qwen.local_qwen_1_8b_chat import models
11 datasets = [*zero, *one]

  7.2 修改 from .datasets.lawbench.lawbench_zero_shot_gen_002588 import lawbench_datasets as zero 中的  lawbench_zero_shot_gen_002588 文件:

    

  7.3 同样修改 from .datasets.lawbench.lawbench_one_shot_gen_002588 import lawbench_datasets as one 中的 lawbench_one_shot_gen_002588 文件

    

  7.4 创建  from  opencompass.configs.models.qwen.local_qwen_1_8b_chat import models 中的 qwen.local_qwen_1_8b_chat 文件

    

八、启动本地测评

  本地测评直接使用python run.py 执行我们创建的 configs/eval_local_qwen_1_8b_chat.py 文件,在加上参数即可

 python run.py configs/eval_local_qwen_1_8b_chat.py  --debug

九、测评参数解释

  • --debug:调试模式,会有日志信息在控制台输出
  • --dry-run:该次测试只加载数据集,但是不会再测评中使用。
  • --accelerator vllm:vllm加速,适用于本地部署大模型
  • --reuse:是否重用历史结果
  • --work-dir:结果储存路径,默认是再outputs/default中
  • --max-num-worker:用于数据并行

十、测评结果

   至此使用OpenCompass通过本地数据集LawBench测评本地模型Qwen1.8B_chat模型记录完毕,谢谢各位看官姥爷,看了这么久!笔芯!!!

标签:opencompass,datasets,测评,--,Qwen,OpenCompass,chat,LawBench,lawbench
From: https://www.cnblogs.com/Se7eN-HOU/p/18554982

相关文章

  • Qwen2.5-0.5B-Instruct搭建
    模型地址https://huggingface.co/Qwen/Qwen2.5-0.5B-Instruct简介通义千问新一代开源模型Qwen2.5,旗舰模型Qwen2.5-72B性能超越Llama405B,再登全球开源大模型王座。Qwen2.5全系列涵盖多个尺寸的大语言模型、多模态模型、数学模型和代码模型,每个尺寸都有基础版本、指令跟随版本......
  • 【模型部署】vLLM 部署 Qwen2-VL 踩坑记 03 - 多图支持和输入格式问题
    【模型部署】vLLM部署Qwen2-VL踩坑记03-多图支持和输入格式问题NLPGithub项目:NLP项目实践:fasterai/nlp-project-practice介绍:该仓库围绕着NLP任务模型的设计、训练、优化、部署和应用,分享大模型算法工程师的日常工作和实战经验AI藏经阁:https://gitee.com/fast......
  • 【模型部署】vLLM 部署 Qwen2-VL 踩坑记 02 - 推理加速
    【模型部署】vLLM部署Qwen2-VL踩坑记02-推理加速NLPGithub项目:NLP项目实践:fasterai/nlp-project-practice介绍:该仓库围绕着NLP任务模型的设计、训练、优化、部署和应用,分享大模型算法工程师的日常工作和实战经验AI藏经阁:https://gitee.com/fasterai/ai-e-book......
  • QWen2.5学习
    配置环境pipinstalltransformers记得更新一下:typing_extensionspipinstall--upgradetyping_extensions安装modelscopemodelscope/modelscope:ModelScope:bringthenotionofModel-as-a-Servicetolife.下载这个仓库的代码上传到服务器解压推理新建QWen2_5.......
  • nternLM Camp4 L1G600 OpenCompass 评测书生大模型实践
    本任务需要使用30%A100开发机文章目录前言一、使用OpenCompass评测浦语API1.环境配置2.模型配置3.数据集配置4.运行评测二、评测本地模型1.环境配置2.数据集下载3.加载本地模型进行评测三、将本地模型通过部署成API服务再评测前言本博客是第四期书生大模型......
  • 书生实战营第四期-基础岛第六关-OpenCompass 评测书生大模型实践
    基础任务一、使用OpenCompass评测浦语API 1、创建用于评测conda环境condacreate-nopencompasspython=3.10condaactivateopencompasscd/rootgitclone-b0.3.3https://github.com/open-compass/opencompasscdopencompasspipinstall-e.pipinstall......
  • LLM - 计算 多模态大语言模型 的参数量(Qwen2-VL、Llama-3.1) 教程
    欢迎关注我的CSDN:https://spike.blog.csdn.net/本文地址:https://spike.blog.csdn.net/article/details/143749468免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。影响(多模态)大语言模型参数量的主要网络模块,即Linear、Embedding、Norm(......
  • 阿里云通义大模型团队开源Qwen2.5-Coder:AI编程新纪元
    ......
  • 书生大模型实战营第四期 L1G6000 OpenCompass 评测书生大模型实践
    评测书生大模型实践文章目录评测书生大模型实践前言评测API模型前言OpenCompass提供了API模式评测和本地直接评测两种方式。其中API模式评测针对那些以API服务形式部署的模型,而本地直接评测则面向那些可以获取到模型权重文件的情况。参考:https://github.......
  • 代码语言模型是如何训练的:Qwen2.5-Coder 技术报告学习
    Qwen2.5-Coder是通义千问最新的代码语言模型,基于Qwen2.5的架构继续pretrain了5.5T的token。通过细致的数据清洗、可扩展的合成数据生成和平衡的数据混合,Qwen2.5-Coder在展示令人印象深刻的代码生成能力的同时,还保留了通用的多功能性。本文根据官方的技术报告(Qwen2.5-Coder......