codefuse-devops-eval是针对DevOps/AIOps领域大语言模型的评估基准项目,提供了丰富的测试数据和评估方法,用于衡量模型在该领域的能力和表现。
1. 项目概述
- 目的:为DevOps领域的基础模型提供全面评估套件,帮助开发者跟踪模型进展、分析优缺点。
- 内容:包含与DevOps相关的问题和练习,涵盖AIOps、ToolLearning等方面,目前有7486道多项选择题,涉及8个大类。
2. 更新记录
- 2023.12.27:添加1509个ToolLearning样本,涵盖59个领域的239个工具类别,发布相关评估排行榜。
- 2023.11.27:添加487个操作场景样本和640个时间序列预测样本,更新排行榜。
- 2023.10.30:添加AIOps排行榜。
- 2023.10.25:添加AIOps样本,包括日志解析、时间序列异常检测、时间序列分类和根本原因分析。
- 2023.10.18:更新初始排行榜。
3. 排行榜
- DevOps:列出了多个模型的Zero - Shot和Five - Shot准确率,涵盖计划、代码、构建、测试、发布、部署、操作、监控等方面。不同模型在各项任务中的表现有所差异,如DevOpsPal - 14B - Chat和DevOpsPal - 14B - Base在多项任务中准确率较高。
- AIOps:展示了模型在日志解析、根本原因分析、时间序列异常检测、时间序列分类、时间序列预测等任务中的Zero - Shot和One - Shot准确率。例如,Qwen - 14B - Base在日志解析任务中Zero - Shot准确率为66.29%,在时间序列异常检测中为25.33%等。
- ToolLearning:提供了模型在ToolLearning任务中的相关指标,如FuncCall - Filler、fccr、1 - fcffr、1 - fcfnr、1 - fcfpr、1 - fcfnir、aar等,不同模型和数据集下的表现不同。
4. 数据下载
- 方法1:通过wget命令下载压缩文件(https://huggingface.co/datasets/codefuse - admin/devopseval - exam/resolve/main/devopseval - exam.zip),解压后可使用pandas加载数据。
- 方法2:使用Hugging Face datasets直接加载数据集(如load_dataset(r"DevOps - Eval/devopseval - exam",name="UnitTesting")
)。
- 方法3:使用ModelScope datasets加载数据集(如MsDataset.clone_meta(dataset_work_dir='./xxx', dataset_id='codefuse - ai/devopseval - exam')
)。
5. 数据说明
- 数据组织:每个子类别包含开发(dev)和测试(test)两个分割,开发集用于少样本评估,包含带解释的示例,测试集用于模型评估,标签已发布。
- 示例展示:给出了版本控制(如Git特定提交中查找已更改文件列表的问题)、AIOps(如日志解析和时间序列异常检测的问题及答案解释)的示例,ToolLearning样本格式兼容OpenAI的Function Calling,详情参考tool_learning_info.md。
6. 评估方法
- 步骤:
- 编写模型加载函数(若模型加载后需额外处理,如调整分词器,需继承ModelAndTokenizerLoader
类并覆盖load_model
和load_tokenizer
函数)。
- 编写模型上下文构建函数(若输入需转换为特定格式,需继承ContextBuilder
类并覆盖make_context
函数)。
- 在配置文件中注册模型(在conf/model_conf.json
中指定模型名称、加载器和上下文构建器的类名)。
- 运行测试脚本(如python src/run_eval.py
,并指定模型路径、名称、配置文件路径、评估数据集列表、数据集配置文件路径、数据集类型、数据路径、k - shot值等参数)。
7. 待办事项(TODO)
- 添加AIOps样本。
- 添加AIOps场景时间序列预测。
- 添加ToolLearning样本。
- 增加样本量。
- 添加难度级别为困难的样本。
- 添加样本的英文版。
codefuse-devops-eval-codefuse-devops-eval
评论
42 views