学习心得:使用 OpenCompass 评测 InternLM2 1.8B
摘要
本文详细介绍了如何使用 OpenCompass 工具来评估 InternLM2 1.8B 模型的性能。通过配置、推理、评估和可视化四个阶段,对模型在 C-Eval 基准任务上的表现进行了全面分析。文档提供了详细的环境配置指导、数据准备步骤以及两种评测方法:命令行方式和配置文件方式,确保用户能够顺利进行模型评估。
大纲
-
引言
- 介绍 OpenCompass 工具及其在模型评估中的重要性。
-
环境配置
- 详细步骤创建开发环境和安装依赖。
- 详细步骤创建开发环境和安装依赖。
-
数据准备
- 解压数据集并准备评测所需的配置文件。
-
评测方法
- 命令行配置参数法和配置文件修改参数法的对比分析。
-
评测过程
- 描述评测过程中的关键步骤和注意事项。
-
结果可视化
- 展示如何将评估结果整理并保存为 CSV 和 TXT 文件。
- 展示如何将评估结果整理并保存为 CSV 和 TXT 文件。
-
总结
- 反思评测过程,总结 OpenCompass 的优势和学习心得。
总结
通过本次学习,我深刻理解了 OpenCompass 在深度学习模型评估中的实用性和高效性。从环境配置到数据准备,再到评测执行和结果可视化,整个过程条理清晰、步骤详尽。特别是命令行和配置文件两种评测方法的介绍,让我对如何灵活运用 OpenCompass 有了更深的认识。此外,文档中提供的调试模式对于排查问题非常有帮助,能够确保评测过程的顺利进行。总的来说,OpenCompass 不仅是一个强大的工具,更是提升模型评估效率和质量的好帮手。
闯关任务
使用命令行配置参数法进行评测
编辑脚本:
from opencompass.models import HuggingFaceCausalLM
models = [
dict(
type=HuggingFaceCausalLM,
abbr='internlm2-1.8b-hf',
path="/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b",
tokenizer_path='/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b',
model_kwargs=dict(
trust_remote_code=True,
device_map='auto',
),
tokenizer_kwargs=dict(
padding_side='left',
truncation_side='left',
use_fast=False,
trust_remote_code=True,
),
max_out_len=100,
min_out_len=1,
max_seq_len=2048,
batch_size=8,
run_cfg=dict(num_gpus=1, num_procs=1),
)
]
执行脚本:
#环境变量配置
export MKL_SERVICE_FORCE_INTEL=1
#或
export MKL_THREADING_LAYER=GNU
python run.py --datasets ceval_gen --models hf_internlm2_chat_1_8b --debug
效果如下:
使用命令行配置参数法进行评测
编辑脚本:
cd /root/opencompass/configs
touch eval_tutorial_demo.py
from mmengine.config import read_base
with read_base():
from .datasets.ceval.ceval_gen import ceval_datasets
from .models.hf_internlm.hf_internlm2_chat_1_8b import models as hf_internlm2_chat_1_8b_models
datasets = ceval_datasets
models = hf_internlm2_chat_1_8b_models
执行脚本:
cd /root/opencompass
python run.py configs/eval_tutorial_demo.py --debug
效果如下: