owl_code_search_hard_negative_datasets_V2_kd
收藏Hugging Face2026-04-15 更新2026-04-16 收录
下载链接:
https://huggingface.co/datasets/Shuu12121/owl_code_search_hard_negative_datasets_V2_kd
下载链接
链接失效反馈官方服务:
资源简介:
该数据集包含多种编程语言(Go、Java、JavaScript、PHP、Python、Ruby、Rust、TypeScript)的文档、查询和评分数据。数据集分为三个主要部分:文档(documents)、查询(queries)和评分(scores),每种语言都有独立的配置。文档部分包含文档ID和文档内容;查询部分包含查询ID和查询内容;评分部分包含查询ID、文档ID序列和对应的评分序列。所有数据均分为训练集,数据规模从数万到数百万不等,具体取决于语言和数据类型。该数据集适用于代码搜索、信息检索和自然语言处理任务。
创建时间:
2026-04-15
原始信息汇总
数据集概述
基本信息
- 数据集名称: owl_code_search_hard_negative_datasets_V2_kd
- 托管地址: https://huggingface.co/datasets/Shuu12121/owl_code_search_hard_negative_datasets_V2_kd
- 配置数量: 24个独立配置
- 总体结构: 数据集按编程语言和数据类型分为三个主要类别:文档(documents)、查询(queries)和分数(scores),涵盖8种编程语言。
配置详情
文档配置 (Documents)
包含8种编程语言的代码文档数据。
- Go
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:1,361,475
- 训练集大小:788,961,766 字节
- 下载大小:234,362,060 字节
- 特征:
- Java
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:1,281,018
- 训练集大小:595,730,631 字节
- 下载大小:157,313,428 字节
- 特征:
- JavaScript
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:129,007
- 训练集大小:103,581,935 字节
- 下载大小:36,388,466 字节
- 特征:
- PHP
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:424,463
- 训练集大小:223,918,975 字节
- 下载大小:63,024,688 字节
- 特征:
- Python
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:776,900
- 训练集大小:1,076,005,138 字节
- 下载大小:335,083,397 字节
- 特征:
- Ruby
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:104,899
- 训练集大小:63,838,225 字节
- 下载大小:15,331,355 字节
- 特征:
- Rust
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:381,521
- 训练集大小:239,717,261 字节
- 下载大小:76,487,156 字节
- 特征:
- TypeScript
- 特征:
document_id(string),document(string),split(string) - 训练集样本数:328,457
- 训练集大小:265,789,788 字节
- 下载大小:77,031,262 字节
- 特征:
查询配置 (Queries)
包含与文档对应的8种编程语言的查询数据。
- Go
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:1,361,475
- 训练集大小:244,374,320 字节
- 下载大小:79,885,874 字节
- 特征:
- Java
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:1,281,018
- 训练集大小:392,026,807 字节
- 下载大小:102,004,628 字节
- 特征:
- JavaScript
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:129,007
- 训练集大小:40,951,897 字节
- 下载大小:14,431,296 字节
- 特征:
- PHP
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:424,463
- 训练集大小:101,783,501 字节
- 下载大小:31,142,491 字节
- 特征:
- Python
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:776,900
- 训练集大小:333,640,311 字节
- 下载大小:102,366,988 字节
- 特征:
- Ruby
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:104,899
- 训练集大小:67,089,741 字节
- 下载大小:16,729,531 字节
- 特征:
- Rust
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:381,521
- 训练集大小:78,338,197 字节
- 下载大小:30,360,518 字节
- 特征:
- TypeScript
- 特征:
query_id(string),query(string),split(string) - 训练集样本数:328,457
- 训练集大小:96,580,847 字节
- 下载大小:30,396,829 字节
- 特征:
分数配置 (Scores)
包含查询与文档之间的匹配分数,用于硬负例挖掘。
- Go
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:1,361,475
- 训练集大小:6,368,108,469 字节
- 下载大小:3,268,145,122 字节
- 特征:
- Java
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:1,281,018
- 训练集大小:6,478,731,786 字节
- 下载大小:3,134,730,175 字节
- 特征:
- JavaScript
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:129,007
- 训练集大小:784,178,497 字节
- 下载大小:301,374,369 字节
- 特征:
- PHP
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:424,463
- 训练集大小:2,029,525,899 字节
- 下载大小:999,627,270 字节
- 特征:
- Python
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:776,900
- 训练集大小:4,202,284,424 字节
- 下载大小:1,889,424,131 字节
- 特征:
- Ruby
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:104,899
- 训练集大小:505,741,456 字节
- 下载大小:220,359,577 字节
- 特征:
- Rust
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:381,521
- 训练集大小:1,898,140,853 字节
- 下载大小:933,043,800 字节
- 特征:
- TypeScript
- 特征:
query_id(string),document_ids(sequence of string),scores(sequence of float64),split(string) - 训练集样本数:328,457
- 训练集大小:2,030,421,789 字节
- 下载大小:796,324,061 字节
- 特征:
数据特征
- 通用特征:所有配置均包含一个
split字段,指示数据划分(当前全部为train)。 - 文档与查询标识:
document_id和query_id用于唯一标识样本。 - 核心内容:
document字段存储代码文档,query字段存储查询文本。 - 关联数据:
scores配置通过query_id和document_ids序列关联查询与多个文档,并提供对应的score序列。
数据规模统计
- 总样本数(估算):文档、查询、分数配置在每种语言内样本数一一对应,总样本数超过500万。
- 最大配置:
scores_java配置的训练集体积最大,约为6.48 GB。 - 最小配置:
documents_ruby配置的训练集体积最小,约为63.84 MB。
搜集汇总
数据集介绍

构建方式
在代码搜索领域,构建高质量的训练数据对提升模型性能至关重要。本数据集通过精心设计的负采样策略,从多种编程语言的代码库中提取文档与查询对,并利用知识蒸馏技术生成难负例,从而增强模型的判别能力。数据涵盖Go、Java、JavaScript、PHP、Python、Ruby、Rust和TypeScript八种语言,每种语言均包含文档、查询及对应的匹配分数,确保了数据的多样性和代表性。构建过程中注重语义相关性的评估,为代码搜索任务提供了坚实的训练基础。
特点
该数据集在代码搜索任务中展现出鲜明的技术特色,其多语言覆盖范围广泛,囊括了主流编程语言的代码片段与自然语言查询。数据结构设计精良,文档与查询分别存储,并通过分数文件明确标注相关性,便于模型学习复杂的匹配模式。数据规模庞大,总样本量超过数百万,为深度学习模型提供了充足的训练资源。难负例的引入进一步提升了数据集的挑战性,有助于模型在真实场景中更准确地识别语义相近但非匹配的代码片段。
使用方法
使用本数据集进行代码搜索模型训练时,研究者可依据编程语言选择相应的配置,分别加载文档、查询和分数数据。训练过程中,模型以查询为输入,文档为候选,利用分数作为监督信号优化检索性能。数据集支持直接与HuggingFace生态系统集成,通过标准数据加载接口高效读取。在实际应用中,该数据集适用于训练双编码器或交叉编码器架构,评估时可通过计算查询与文档的相似度分数,验证模型在跨语言代码搜索任务上的泛化能力。
背景与挑战
背景概述
在代码智能与信息检索领域,提升代码搜索的准确性与效率一直是核心研究议题。owl_code_search_hard_negative_datasets_V2_kd数据集应运而生,其创建旨在通过提供高质量的困难负样本,优化代码检索模型的训练过程。该数据集由研究团队精心构建,覆盖Go、Java、Python等多种编程语言,包含大量查询与文档对及其相关性评分,为代码语义匹配任务提供了丰富资源。它的出现推动了代码搜索模型从传统关键词匹配向深度学习驱动的语义理解转型,显著提升了跨语言代码检索的性能基准。
当前挑战
该数据集致力于解决代码搜索中语义匹配的挑战,即如何精准理解自然语言查询与代码片段之间的复杂关联,克服语法结构与语义鸿沟。构建过程中的挑战包括:从海量开源代码库中筛选高质量文档,确保数据多样性与代表性;为每个查询生成困难负样本,避免模型过拟合简单负例;以及跨语言数据对齐与标准化处理,以支持多语言检索任务。这些挑战要求精细的数据标注策略与大规模计算资源投入。
常用场景
经典使用场景
在代码智能与信息检索领域,该数据集以其精心构建的硬负样本机制,为代码搜索任务提供了关键训练资源。它通过整合多种编程语言的查询与文档对,并附有精细的评分序列,使得模型能够区分语义相近但功能迥异的代码片段。这一设计显著提升了检索系统在复杂代码库中定位精确代码块的能力,成为训练先进代码嵌入模型和检索器的基准环境。
解决学术问题
该数据集直面代码搜索中负样本质量不足的学术挑战,通过提供难区分的硬负样本,有效缓解了模型训练中的过拟合与泛化弱化问题。它促进了对比学习与度量学习在代码表示领域的深入应用,为评估检索模型的鲁棒性与精确度设立了新标准。其多语言覆盖特性,亦推动了跨语言代码理解与迁移学习的研究进展,对提升自动化软件工程工具的智能化水平具有深远影响。
衍生相关工作
围绕该数据集衍生的经典工作,主要集中在基于对比学习的代码表示模型,如CodeBERT、GraphCodeBERT的后续优化与评估。研究者利用其硬负样本机制,提出了改进的损失函数与训练策略,以增强模型对代码语义的判别力。同时,一系列专注于多语言代码检索与跨模态代码-文本对齐的研究也以此为基础展开,推动了代码搜索领域从单一语言向异构、大规模现实场景的范式转移。
以上内容由遇见数据集搜集并总结生成



