数据集:

codeparrot/conala-mined-curated

数字对象标识符:

10.57967/hf/0755
英文

Conala-mined-curated

Conala-mined-curatedd是基于从Stack Overflow上抓取的.conala数据集中挖掘出的子集。其中的一部分被过滤和精选出来形成训练集和测试集。然而,挖掘部分并没有进行相应的后处理。我们决定对这个由60万个示例组成的数据集进行处理。

数据集描述

conala数据集有3个感兴趣的列。以下是它们的描述:

  • intent:自然语言意图(即Stack Overflow问题的标题)
  • snippet:实现意图的代码片段。这是挑战中的系统的输出。
  • rewritten_intent:众包修订的意图,试图更好地反映代码的完整含义,通常会将代码中的变量名和函数参数合并为意图。这是CoNaLa挑战中要使用的输入。

对于指令微调,我们希望训练一个模型将rewritten_intent映射到snippet。然而,挖掘子集没有rewritten_intent列。intent过于模糊,无法被描述为一条指令,所以我们必须找到一种方法为挖掘子集构建rewritten_intent列。这正是构建这个数据集的目的。

方法

为了恢复rewritten_intent列,我们最有价值的信息是intent和snippet列。幸运的是,我们还有conala的训练集和测试集,它们是有标签的。这意味着我们知道一个高质量的三元组(intent,rewritten_intent,snippet)是什么样子。我们的想法是构建一个Seq2Seq模型,其作用是基于拼接的[intent,snippet]来重建rewritten_intent。

更准确地说,我们对 google UL2 进行了微调,以解决这个任务。

用法

from datasets import load_dataset
dataset = load_dataset("codeparrot/conala-mined-curated")

dataset
DatasetDict({
    train: Dataset({
        features: ['question_id', 'parent_answer_post_id', 'prob', 'snippet', 'intent', 'rewritten_intent', 'id'],
        num_rows: 593891
    })
})

其他资源