书生·浦语大模型第二期实战营第七节-OpenCompass 大模型评测实战 笔记和作业

来源:

视频教程:https://www.bilibili.com/video/BV1Pm41127jU/?spm_id_from=333.788&vd_source=f4a51f7f5a63e756f73ad0dff318c1a3

文字教程:https://github.com/InternLM/Tutorial/blob/camp2/opencompass/readme.md

作业来源:https://github.com/InternLM/Tutorial/blob/camp2/opencompass/homework.md

1. OpenCompass 大模型评测

1.1 如何通过能力评测促进模型发展


面向未来,拓展能力维度:大模型学习人的能力,目前的上限是人的想象力上限,设计数学、推理、代码、智能体等各种维度来评测模型性能。
聚焦垂直行业:大模型在通用领域已经能达到不错的效果,但是在医疗金融法律等需要高精的专业领域,需要更加规范的内容来评估模型的行业适用性。
中文基准:目前全球社区大模型生态以英文为主,通过针对中文场景设计相关评测基准,来促进中文社区的大模型发展。
能力评测反哺能力迭代:通过评测,发现模型不足,针对性提升。

1.2 大语言模型评测中的挑战

全面性:

评测需要综合考量模型在不同维度上的表现,包括语言理解、知识应用、逻辑推理、创造力等。同时,还应考虑模型在特定垂直行业如医疗、金融、法律等领域的专业能力,以及其对新情境的适应性和学习能力。
评测成本:

大模型的评测往往涉及大规模的计算资源和数据集,这导致评测成本显著增加。另外,为了获得全面的评测结果,除了客观的打分题目,还有基于人工打分的主观评测,进一步增加了时间和经济成本。
数据污染:

数据污染指的是评测数据被加入到模型的训练数据中,需要可靠的数据污染检测技术和动态调节的评测基准,来获得真实客观的评估结果。
鲁棒性:

评测大模型时,需要检验其在面对变化的提示词输入的鲁棒性,设计针对鲁棒性的评测数据,例如挖掘大模型的bias(针对顺序的bias、针对长短文本的bias等),在多次采样下评估模型的性能。

1.3 如何评测大模型

基座模型:海量数据无监督训练(Base)

对话模型:指令数据有监督微调(SFT)、人类偏好对齐(RLHF)

1.4 提示词工程

 构建评测集需要对提示词有较高的要求,避免引入评测结果偏差,下面是一些例子,例如文本语义要明确,具体细节,迭代反馈、few-shot、思维链等一些prompt工程化技巧:

1.5 大模型评测全栈工具链

 1.6 评测基准

MathBench:多层次数学能力评测基准,包括不同的难度,不同的语言。还包括循环评估,可以消除大模型对答案顺序的bias。

CriticBench:多维度LLM反思能力评估基准

T-Eval:大模型细粒度工具能力评测基准

F-Eval:大模型基础能力评测基准

CreationBench:多场景中文创作能力评测标准

CIBench:代码解释能力评测标准

 OpenFinData:全场景金融评测基准

LawBench:大模型司法能力基准

MedBench :中文医疗大模型评测基准

SecBench:网络安全评测基准

 2. 作业-使用 OpenCompass 评测 internlm2-chat-1_8b 模型

命令行

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
python run.py
--datasets ceval_gen \
--hf-path /share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b \  # HuggingFace 模型路径
--tokenizer-path /share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b \  # HuggingFace tokenizer 路径(如果与模型路径相同,可以省略)
--tokenizer-kwargs padding_side='left' truncation='left' trust_remote_code=True \  # 构建 tokenizer 的参数
--model-kwargs device_map='auto' trust_remote_code=True \  # 构建模型的参数
--max-seq-len 1024 \  # 模型可以接受的最大序列长度
--max-out-len 16 \  # 生成的最大 token 数
--batch-size 2  \  # 批量大小
--num-gpus 1  # 运行模型所需的 GPU 数量
--debug

protobuf报错

解决方案:

pip install protobuf

评测 

 

  • 24
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天寒心亦热

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值