OpenCompass大模型离线测评

一、目录

  1. 环境配置
  2. 环境测试
  3. 本地模型测评

二、实现

  1. 环境配置
    >>创建环境
conda create --name opencompass python=3.10 pytorch torchvision pytorch-cuda -c nvidia -c pytorch -y
 source activate opencompass
git clone https://github.com/open-compass/opencompass opencompass       #下载模型
cd opencompass
pip install -e .

下载数据集,解压并放于opencompass 文件夹下

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

在opencompass 文件夹下执行 测试命令, 如 >>python run.py --models hf_llama_7b --datasets mmlu_ppl ceval_ppl

  1. 测试 (在线)`
python run.py --models hf_llama_7b --datasets mmlu_ppl ceval_ppl
  1. 本地模型测评,配置文件 eval_demo.py (离线)
    参考:https://blog.csdn.net/qq_36803941/article/details/135938692
    3.1 修改 模型加载文件
>>cd /home/opencompass/configs/models/hf_llama
本人采用llama3 模型测试,但并没有llama3 相关文件,因此创建模型加载文件
>>vim hf_llama3_8b.py
#参考其他文件,书写模型配置,进行加载模型。
from opencompass.models import HuggingFaceCausalLM
models = [
    # LLaMA 7B
    dict(
        type=HuggingFaceCausalLM,
        abbr='llama3-8b-hf',
        path="/home/Meta-Llama-3-8B-Instruct", # 你的模型存放的实际路径,建议使用完整绝对路径
        tokenizer_path='/home/Meta-Llama-3-8B-Instruct', # 你的模型存放的实际路径,建议使用完整绝对路径
        tokenizer_kwargs=dict(padding_side='left',
                              truncation_side='left',
                              use_fast=False,
                              ),
        max_out_len=1000,
        max_seq_len=2048,
        batch_size=8,
        model_kwargs=dict(device_map='auto'),
        batch_padding=False, # if false, inference with for-loop without batch padding
        run_cfg=dict(num_gpus=1, num_procs=1),
    )
]

3.2. 查看模型配置文件是否成功
在这里插入图片描述
3.3. 修改评估配置

>>cd configs
vim eval_demo.py
#配置
from mmengine.config import read_base

with read_base():
    from .datasets.collections.base_medium_llama import piqa_datasets, siqa_datasets   #加载的数据集
    from .datasets.ceval.ceval_ppl import ceval_datasets
    from .models.hf_llama.hf_llama3_8b import models        #加载的模型


datasets = [*piqa_datasets, *siqa_datasets,*ceval_datasets]

#执行:>>python run.py configs/eval_demo.py
在这里插入图片描述
在这里插入图片描述
方式二、 配置文件中加载模型、加载数据集(配置文件必须放在configs 文件夹下,不然找不到路径),eval_demo.py, 无需单独去配置模型。

from mmengine.config import read_base
from opencompass.models import HuggingFaceCausalLM

batch_size = 20
# 指定评测模型
model_name_or_paths = [                              #可以多个模型
    '/home/Meta-Llama-3-8B-Instruct'
]
models = []   #模型以及配置放于列表中

for model_name_or_path in model_name_or_paths:
    abbr = model_name_or_path.split('/')[-1]
    model = dict(
        type=HuggingFaceCausalLM,
        abbr=abbr,
        path=model_name_or_path,
        tokenizer_path=model_name_or_path,
        tokenizer_kwargs=dict(padding_side='left',
                              truncation_side='left',
                              use_fast=False,
                              trust_remote_code=True
                              ),
        max_out_len=1000,
        max_seq_len=2048,
        batch_size=batch_size,
        model_kwargs=dict(device_map='auto', trust_remote_code=True),
        batch_padding=False,  # if false, inference with for-loop without batch padding
        run_cfg=dict(num_gpus=2, num_procs=2),
    )
    models.append(model)
# 指定评测集
with read_base():
    from .datasets.ceval.ceval_ppl import ceval_datasets    #数据集路径。
    
datasets = [*ceval_datasets]     #数据集,放于列表中

# python run.py configs/eval_demo.py -w outputs/firefly

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/632391.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第 8 章 机器人底盘Arduino端PID控制(自学二刷笔记)

重要参考: 课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ 讲义链接:Introduction Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 8.4.5 底盘实现_04Arduino端PID控制 上一节最后测试时,电机可能会出现抖动、顿挫的现象&#xff…

力扣HOT100 - 62. 不同路径

解题思路&#xff1a; 动态规划 注意要初始化第一行和第一列的值 class Solution {public int uniquePaths(int m, int n) {int[][] dp new int[m][n];for (int i 0; i < m; i) {dp[i][0] 1;}for (int j 0; j < n; j) {dp[0][j] 1;}for (int i 1; i < m; i) {…

快手截流多功能协议引流多线程多账号使用

在市场上&#xff0c;类似的软件售价都在几千元&#xff0c;但我发现这款全新版本的软件已经更新&#xff0c;而且我只需要配合使用谷歌浏览器&#xff0c;稍微调慢一点延时&#xff0c;我就可以像专业人士一样流畅地进行操作。 评论对于我而言是一种艺术&#xff0c;而不仅仅是…

XML文件转TXT文件 yolo标签转换(代码可直接使用) 可批量转换

像这样的xml文件&#xff0c;我们可以通过代码批量转换为txt文件格式&#xff1a; 新建一个xml2txt.py文件&#xff0c; 上代码&#xff0c;直接复制粘贴 import xml.etree.ElementTree as ET import osdef convert(size, box):x_center (box[0] box[1]) / 2.0y_center (box…

Phidata:快速构建一个智能 AI 助手【附代码示例】

介绍 Phidata Phidata 是一个尖端的框架&#xff0c;专为开发具有超越传统语言模型能力的自治助手&#xff08;或称为代理&#xff09;而设计。这些 AI 助手拥有长期记忆、深入的情境理解能力以及通过函数调用执行操作的能力&#xff0c;使它们在各种应用中非常有效。项目近期…

Bootstrap Studio for Mac:打造专业级网页设计软件

对于追求高效与品质的设计师和开发者来说&#xff0c;Bootstrap Studio for Mac无疑是最佳选择。它建立在广受欢迎的Bootstrap框架之上&#xff0c;输出干净、语义化的HTML代码。同时&#xff0c;强大的CSS和SASS编辑器&#xff0c;支持自动建议和规则验证&#xff0c;让您的设…

僵尸网络的威胁值得关注

僵尸网络&#xff08;botnet&#xff09;是指一组受到恶意软件感染并遭到恶意用户控制的计算机。术语“僵尸网络”由“机器人&#xff08;bot&#xff09;”和“网络&#xff08;network&#xff09;”两个词组合而成&#xff0c;每台受感染设备被称为“机器人”。僵尸网络可用…

06_机器学习算法_朴素贝叶斯

1. 朴素贝叶斯的介绍与应用 1.1 朴素贝叶斯的介绍 朴素贝叶斯算法(Naive Bayes, NB)是应用最为广泛的分类算法之一。它是基于贝叶斯定义和特征条件独立假设的分类方法。由于朴素贝叶斯法基于贝叶斯公式计算得到,有着坚实的数学基础,以及稳定的分类效率。NB模型所需估计的…

上传文件,服务器报500错误

项目场景&#xff1a; 今天项目上出现一个耗时比较长的问题&#xff0c;但是问题很简单&#xff0c;一开始没注意&#xff0c;导致耗时很久&#xff0c;到底是咋回事儿呢&#xff0c;请看下文~~ 问题描述 用户使用APP上传图片&#xff0c;出现 附件上传失败:服务器响应失败 的…

一个强大的在线解析网站,无需登录,只用把视频链接粘贴进去就能免费解析下载视频。

TiQu.cc是什么&#xff1f; TiQu.cc是一个强大的在线工具&#xff0c;让用户可以从包括Facebook、VK、Twitter、Tiktok、Instagram等在内的100多个平台下载他们喜爱的视频。不论是音乐、电视节目、电影、短片还是个人上传的内容&#xff0c;TiQu.cc都可以帮助您随时随地以离线…

错误、调试和测试

在程序运行过程中&#xff0c;总会遇到各种各样的错误。 有的错误是程序编写有问题造成的&#xff0c;比如本来应该输出整数结果输出了字符串&#xff0c;这种错误我们通常称之为bug&#xff0c;bug是必须修复的。 有的错误是用户输入造成的&#xff0c;比如让用户输入email地…

无独立显卡如何安装Pytorch

以前我是直接在colab中使用pytorch&#xff0c;非常方便&#xff0c;今天折腾了一上午&#xff0c;终于搞定了pytorh的安装和环境设置&#xff0c;分享下我的安装流程&#xff0c;遇到的问题和解决方案。 1. 用pip安装Pytorch 打开cmd窗口&#xff08;按win R&#xff09;&a…

每日一练 2025.5.16

题目&#xff1b; 给定一个非负整数&#xff0c;你至多可以交换一次数字中的任意两位。返回你能得到的最大值。 示例 1 : 输入: 2736 输出: 7236 解释: 交换数字2和数字7。示例 2 : 输入: 9973 输出: 9973 解释: 不需要交换。注意: 给定数字的范围是 [0, 108] 解题&#…

平价蓝牙耳机怎么选?四大最新宝藏平价蓝牙耳机推荐

面对市场上众多品牌和型号的蓝牙耳机&#xff0c;如何在有限的预算内选择一款性价比高、性能出色的平价蓝牙耳机&#xff0c;一直以来都是一个值得探讨的问题&#xff0c;作为蓝牙耳机大户的我&#xff0c;今天我就为大家推荐四大最新宝藏平价蓝牙耳机&#xff0c;帮助你在海量…

如何修改照片的dpi值?在线图片更改dpi快捷方法

不少小伙不知道如何去改变图片分辨率&#xff0c;因为能用的到分辨率dpi的地方也不多&#xff0c;但是当我们在求职、考公或者是打印照片的时候&#xff0c;就经常看到会要求图片分辨率为300dpi以上了&#xff0c;本文将分享一款图片处理工具&#xff0c;它能快速完成修改图片分…

第三十二天 | 46.全排列 47.全排列||

终于进入排列&#xff01;&#xff08;之前都是组合&#xff09; 排列和组合的区别&#xff1a;在数学上的区别都懂&#xff0c;主要是看在代码实现上有什么区别 题目&#xff1a;46.全排列 树型结构比较简单 用used标记某一元素是否使用过。在组合问题中&#xff0c;其实是…

在pycharm中运行jupyter报错run_error解决办法-极速上手

注&#xff1a;此方法不是永久性的修复&#xff0c;只是临时性修复&#xff1b;永久性的修复方法没有找到&#xff01; 报错 解决办法 1.打开任务管理器 2. 找到python.exe进程 结束任务之后重新在pycharm中重启jupyter&#xff0c;直接启动成功 3.检验 运行成功没有报错!

图片中的表格转成word用什么工具好?

2024年5月16日&#xff0c;周四上午 我推荐用免费的腾讯OCR表格识别v3体验网站 用手机文档模式拍下并转成黑白后&#xff0c;成功识别的概率还是非常大的 OCR Demo (tencent.com)https://ocrdemo.cloud.tencent.com/识别成功后&#xff0c;复制识别结果并粘贴到word文档里面就…

k8s对接nfs共享存储

1. 规划 节点功能节点IP数据目录服务端192.168.99.210/data客户端192.168.99.211 2. 搭建NFS服务 2.1 安装服务端 若NFS已搭建完成&#xff0c;可跳过此节。 在服务端节点上执行如下操作&#xff1a; 安装NFS、RPC服务 yum install -y nfs-utils rpcbind创建共享目录 # 此…

儿童护眼台灯哪个牌子好,适合儿童使用的护眼台灯推荐

护眼台灯在近几年成为家长和经常与电子设备打交道的人士中备受瞩目的家用电器。对于有孩子的家庭而言&#xff0c;它几乎成为了必备品&#xff0c;许多消费者已经对其有了一定的了解并进行了购买。然而&#xff0c;仍有部分家长对护眼台灯的效果和重要性缺乏充分认识&#xff0…