书生·浦语大模型实战营(第二期):OpenCompass司南大模型评测实战

大语言模型评测中的挑战

  • 全面性
    • 大模型应用场景千变万化
    • 模型能力演进迅速
    • 如何设计和构造可扩展的能力维度体系
  • 评测成本
    • 评测数十万道题需要大量算力资源
    • 基于人工打分的主观评测成本高昂
  • 数据污染
    • 海量预料不可避免带来评测集污染
    • 亟需可靠的数据污染检测技术
    • 如何设计可动态更新的高质量评测基准
  • 鲁棒性
    • 大模型对提示词十分敏感
    • 多次采样情况下模型性能不稳定

如何评测大模型

模型

在这里插入图片描述

客观题&主观题

在这里插入图片描述

提示词工程

在这里插入图片描述
在这里插入图片描述

长文本评测

在这里插入图片描述

OpenCompass评测流水线

在这里插入图片描述

CompassHub:高质量评测基准社区

在这里插入图片描述

OpenCompass介绍

上海人工智能实验室科学家团队正式发布了大模型开源开放评测体系 “司南” (OpenCompass2.0),用于为大语言模型、多模态模型等提供一站式评测服务。其主要特点如下:

  • 开源可复现:提供公平、公开、可复现的大模型评测方案
  • 全面的能力维度:五大维度设计,提供 70+ 个数据集约 40 万题的的模型评测方案,全面评估模型能力
  • 丰富的模型支持:已支持 20+ HuggingFace 及 API 模型
  • 分布式高效评测:一行命令实现任务分割和分布式评测,数小时即可完成千亿模型全量评测
  • 多样化评测范式:支持零样本、小样本及思维链评测,结合标准型或对话型提示词模板,轻松激发各种模型最大性能
  • 灵活化拓展:想增加新模型或数据集?想要自定义更高级的任务分割策略,甚至接入新的集群管理系统?OpenCompass 的一切均可轻松扩展!

作业:使用OpenCompass评测internlm2-chat-1_8b模型在C-Eval数据集上的性能

准备阶段

环境配置

studio-conda -o internlm-base -t opencompass
conda activate opencompass
git clone -b 0.2.4 https://github.com/open-compass/opencompass
cd opencompass
# pip install -e .
pip install -r requirements.txt

数据准备

解压评测数据集到 data/ 处

cp /share/temp/datasets/OpenCompassData-core-20231110.zip /root/opencompass/
unzip OpenCompassData-core-20231110.zip

查看支持的数据集和模型
列出所有跟 InternLM 及 C-Eval 相关的配置

python tools/list_configs.py internlm ceval

在这里插入图片描述

启动评测

通过以下命令评测 InternLM2-Chat-1.8B 模型在 C-Eval 数据集上的性能,由于 OpenCompass 默认并行启动评估过程,我们可以在第一次运行时以 --debug 模式启动评估,并检查是否存在问题。在 --debug 模式下,任务将按顺序执行,并实时打印输出。

python run.py
 --datasets ceval_gen \
 --hf-path /share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b \
 --tokenizer-path /share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b \
 --tokenizer-kwargs padding_side='left' truncation='left' trust_remote_code=True \
 --model-kwargs trust_remote_code=True device_map='auto' \
 --max-seq-len 1024 \
 --max-out-len 16 \
 --batch-size 2 \
 --num-gpus 1 \
 --debug

其中:

  • –hf-path:HuggingFace模型路径
  • –tokenizer_path:HuggingFace tokenizer路径
  • –tokenizer-kwargs:构建tokenizer的参数
  • –max-seq-len:模型可以接受的最大序列长度
  • –max-out-len:生成的最大token数
  • –batch-size:批量大小
  • –num-gpus:运行模型所需的GPU数量
    在这里插入图片描述
  • 19
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值