大模型OpenCompass评测实战

一、模型评测背景:

       大模型发展过程中模型评测起到的意义,评测体系的发展、挑战、方向,评测社区的贡献与工具的作用,评测方式、方法、规范在大模型评测过程中全面了解大模型的优势和限制。通过本次学习掌握、熟悉OpenCompass评测工具的用法、配置文件的作用以及评测体系的内在涵义。

      实战OpenCompass评测体系采取客观评测与主观评测相结合的方法InternLM2-Chat-1.8B 模型在 C-Eval 数据集上的具有确定性答案的能力维度和场景,通过构造丰富完善的评测集,对模型能力进行综合评价,体现模型能力的开放式或半开放式的问题、模型安全问题等。

二、评测促进模型发展:

1.面向未来拓展能力维度

   通过能力维度、数学、复杂、逻辑推理,代码、智能体等全面评估模型性能。

2.扎根通用能力聚焦垂直行业

   在专业领域结合行业知识、规范评估模型的行业适用性。

3.高质量中文基准

   在中文场景,能准确评估能力的中文评测基准,促进中文社区大模型的发展。

4.性能评测反哺能力迭代

   深入分析评测性能,探索模型能力形成机制,发现模型不足,研究针对性提升策略。

三、评测中的挑战

1.全面性:

   场景千变万化、能力演进迅速、设计和构造的能力维度体系

2.评测成本

   需要打算里资源、高昂的基于人工打分的主观评测成本

3.数据污染

   海量语料带来的评测集污染、可高的数据污染检测技术、设计动态更新的高质量评测基准。

4.鲁棒性

   提示词的敏感性、多次采样情况下的性能稳定性。

四、OpenCompass大模型评测体系开源历程

五、助力大模型产业发展和学术研究

六、评测大模型

对模型评测采用的方式、方法、维度、工具等来评测模型在各方面表现出的性能。

基座模型:海量数据无监督训练。

对话模型:指令数据有监督微调,人类偏好对其。

公开权重的开源模型:使用GPU/推理加速卡进行本地推理。

API模型:发送网络请求回去回复。

客观问答题:

客观选择题:

开放式主观问答:

提示词工程:

长文本评测(大海捞针):

工具-记准-榜单三位一体的社区力量汇聚

大模型评测全栈工具链:

评测流水线:

高质量评测基准社区:

能力维度全面升级:

高质量大模型评测基准:

七、评测实战

OpenCompass 评估一个模型通常包括以下几个阶段:配置 -> 推理 -> 评估 -> 可视化。

工具架构

环境配置:

安装:

    studio-conda -o internlm-base -t opencompass

    source activate opencompass

    git clone -b 0.2.4 https://github.com/open-compass/opencompass

    cd opencompass

    pip install -e .

 pip install -r requirements.txt

 数据准备:

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

 数据集和模型查看:

  列出所有跟 internlm ceval 相关的配置

     python tools/list_configs.py internlm ceval

启动评测:

       OpenCompass 默认并行启动评估过程,我们可以在第一次运行时以 --debug 模式启动评估,并检查是否存在问题。在 --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

评测完成情况,会打印出模型在各维度的一个评价情况。

八、自定义数据集评测配置

介绍自定义ceval数据集评测配置方法,详细数据集配置请参见opencompass官方文档。

第一步:opencompass/config/database/ceval目录下新建或者修改ceval文件,按照现有文件格式修改!以ceval_gen_5f30c7.py文件为例修改或新建:注意红框处的修改。

第二步:opencompass/ opencompass/database/目录下新建或者修改ceval文件,按照现有文件格式修改加载数据集!以ceval.py文件为例修改或新建,文件中的新建类,在第一步文件中必须引入该文件中实现的模块。

第三步:opencompass/ opencompass/database/_init_.py文件中添加第二步中的py文件,注册实现的模块。

第四步:opencompass/config/database/ceval/ceval_gen.py文件中修改为第一步中的数据集文件名称:

第五步:执行命令:

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

  • 50
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
AI大模型应用开发实战是指在实际项目中应用和开发人工智能模型的过程。在开展这项工作时,我们需要遵循一系列步骤和准则,确保应用的高效性和可行性。 首先,我们需要明确项目目标和需求。在制定开发计划之前,我们必须清楚了解项目的具体目标和需求,例如是要开发一个智能客服系统,还是进行图像识别或自然语言处理等任务。 接下来,我们需要收集和准备数据。数据是训练大模型不可或缺的要素,因此我们需要选择合适的数据集,并进行数据预处理,包括数据清洗、标注和分割等工作。同时,为了保护数据的隐私和安全性,我们也需要采取相应的措施。 然后,我们需要选择合适的大模型和算法。根据项目需求,我们可以选择现有的大模型,如OpenAI的GPT系列或Google的BERT模型,也可以根据需求进行定制化开发。在选择算法时,我们需要考虑模型的准确性、效率和可扩展性等方面。 接着,我们进行模型训练和优化。这一步骤包括设置训练参数、利用数据进行模型训练和验证,以及对模型进行调优和优化,以提高其准确性和性能。 最后,我们进行应用部署和测试。在将模型应用到实际场景之前,我们需要进行系统集成、性能测试和安全验证等步骤。一旦通过测试,我们就可以将应用部署到服务器、云平台或移动设备上,供用户使用。 总结来说,AI大模型应用开发实战需要我们明确目标和需求、准备数据、选择模型和算法、进行训练和优化,最后进行部署和测试。通过这些步骤,我们能够开发出高效、可靠的人工智能模型应用,为用户提供优质的服务。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值