codefuse-devops-eval-codefuse-devops-eval


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_modelload_tokenizer函数)。 - 编写模型上下文构建函数(若输入需转换为特定格式,需继承ContextBuilder类并覆盖make_context函数)。 - 在配置文件中注册模型(在conf/model_conf.json中指定模型名称、加载器和上下文构建器的类名)。 - 运行测试脚本(如python src/run_eval.py,并指定模型路径、名称、配置文件路径、评估数据集列表、数据集配置文件路径、数据集类型、数据路径、k - shot值等参数)。 7. 待办事项(TODO) - 添加AIOps样本。 - 添加AIOps场景时间序列预测。 - 添加ToolLearning样本。 - 增加样本量。 - 添加难度级别为困难的样本。 - 添加样本的英文版。

github