five

PyInstruct

收藏
Hugging Face2024-07-01 更新2024-12-12 收录
下载链接:
https://huggingface.co/datasets/Mercury7353/PyInstruct
下载链接
链接失效反馈
官方服务:
资源简介:
PyBench数据集用于评估大型语言模型(LLM)代理在实际编程任务中的表现。该数据集包含1K到10K的样本,涉及文本生成任务,使用英语语言,并标记为llm-agent、llm、instruction-tuning和code。
创建时间:
2024-07-01
原始信息汇总

PyBench: Evaluate LLM Agent on Real World Tasks

数据集概述

PyBench 是一个全面的基准测试,用于评估大型语言模型(LLM)在真实世界编程任务中的表现,包括图表分析文本分析图像/音频编辑复杂数学问题软件/网站开发。该数据集从 Kaggle、arXiv 和其他来源收集文件,并根据文件的类型和内容自动生成查询。

数据集结构

  • 配置名称: default
  • 数据文件:
    • 分割: train
    • 路径: "PyInstruct.jsonl"

PyInstruct 数据集

为了提升模型在 PyBench 上的表现,我们生成了一个同源数据集:PyInstruct。PyInstruct 包含模型与文件之间的多轮交互,模拟模型在编程、调试和多轮复杂任务解决方面的能力。与其他专注于多轮编程能力的数据集相比,PyInstruct 具有更长的轮次和每个轨迹的令牌数。

数据统计

  • 令牌统计: 使用 Llama-2 分词器计算。

模型训练

我们使用 PyInstruct、CodeActInstruct、CodeFeedback 和 Jupyter Notebook Corpus 对 Llama3-8B-base 进行训练,得到了 PyLlama3,该模型在 PyBench 上表现出色。

模型评估

通过 PyBench 进行模型评估,包括环境设置、模型配置、配置调整和执行过程。

引用

bibtex @misc{zhang2024pybenchevaluatingllmagent, title={PyBench: Evaluating LLM Agent on various real-world coding tasks}, author={Yaolun Zhang and Yinxu Pan and Yudong Wang and Jie Cai and Zhi Zheng and Guoyang Zeng and Zhiyuan Liu}, year={2024}, eprint={2407.16732}, archivePrefix={arXiv}, primaryClass={cs.SE}, url={https://arxiv.org/abs/2407.16732}, }

搜集汇总
数据集介绍
main_image_url
构建方式
PyInstruct数据集的构建基于PyBench基准测试的需求,旨在增强模型在真实世界编码任务中的表现。数据集通过从Kaggle、arXiv等多个来源收集文件,并根据文件类型和内容自动生成查询。这些查询模拟了模型与文件之间的多轮交互,涵盖了编码、调试以及复杂任务解决等多个方面。数据集的构建过程注重多样性和复杂性,以确保其能够有效提升模型的多轮编码能力。
特点
PyInstruct数据集的特点在于其多轮交互的复杂性和长轮次的设计。与其他专注于多轮编码能力的数据集相比,PyInstruct在每轮交互中的轮次和令牌数量上更为丰富。数据集涵盖了6个主要类别的真实世界任务,涉及超过10种文件类型,能够全面评估模型在数据分析和图像处理等任务中的表现。此外,数据集的统计信息基于Llama-2分词器计算,确保了数据的准确性和一致性。
使用方法
使用PyInstruct数据集时,首先需要配置环境并初始化本地服务器。通过vllm框架启动服务器后,用户需指定模型路径和Jinja模板路径。随后,在配置文件中调整模型路径和服务器端口,并更新输出轨迹文件的路径。执行推理脚本后,用户可以将输出文件存储在指定目录,并通过单元测试脚本验证模型的性能。整个过程旨在确保模型能够在PyBench基准测试中表现出色,并有效提升其在真实世界编码任务中的能力。
背景与挑战
背景概述
PyInstruct数据集由Yaolun Zhang等研究人员于2024年提出,旨在提升大型语言模型(LLM)在真实世界编码任务中的表现。该数据集是PyBench基准测试的衍生数据集,专注于多轮交互任务,涵盖图表分析、文本分析、图像/音频编辑、复杂数学计算以及软件/网站开发等多个领域。PyInstruct的构建基于Kaggle、arXiv等平台的数据,通过自动生成查询任务,模拟模型在编码、调试和多轮复杂任务解决中的能力。该数据集的推出填补了现有基准测试在真实世界任务多样性上的不足,为LLM在复杂编码任务中的性能评估提供了重要工具。
当前挑战
PyInstruct数据集在构建和应用过程中面临多重挑战。首先,真实世界编码任务的多样性和复杂性要求数据集能够涵盖广泛的领域和任务类型,这对数据收集和任务设计提出了较高要求。其次,多轮交互任务的生成需要确保任务的连贯性和逻辑性,这对数据生成算法和模型交互设计提出了挑战。此外,数据集的长轮次和高token数特性增加了模型训练和推理的复杂度,对计算资源和模型优化提出了更高要求。最后,如何确保数据集在评估模型性能时的公平性和有效性,也是该数据集面临的重要挑战之一。
常用场景
经典使用场景
PyInstruct数据集主要用于评估和提升大型语言模型(LLM)在真实世界编码任务中的表现。通过多轮交互,模型能够在复杂的编码、调试和多任务解决场景中进行训练和测试。该数据集特别适用于那些需要处理多种文件类型和复杂任务的模型,如图像处理、数据分析和软件开发等。
实际应用
在实际应用中,PyInstruct数据集可以用于训练和优化各种编码助手和自动化工具。例如,它可以用于开发能够自动完成数据分析、图像处理和复杂数学计算的智能代理。这些代理可以广泛应用于科学研究、工程开发和商业分析等领域,显著提高工作效率和准确性。
衍生相关工作
PyInstruct数据集衍生了一系列相关研究工作,其中最著名的是基于该数据集训练的PyLlama3模型。该模型在PyBench基准测试中表现出色,展示了在多轮编码任务中的强大能力。此外,该数据集还推动了多轮交互编码任务的研究,促进了LLM在复杂任务中的应用和发展。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作