热榜第四:GitHub开源代码数据集界ImageNet,推出代码搜索挑战赛
代码搜索哪家强
鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI
用别人的轮子,开自己的路。
在这个产品快速迭代的时代,搜索、调用别人的代码避免重复造轮子,已是开发常态。
但是搜索代码这件事,并不是百度一下就能解决的。
搜索引擎们往往答非所问,难以理解程序猿们的需求。
现在,GitHub觉得,机器学习可以改善这个问题。不仅要让AI搜代码,还要搞出一套评估标准。
于是,CodeSearchNet挑战赛上线了。
这一上线,就是日入200星的节奏,目前已经登上了趋势榜第四的位置。
CodeSearchNet挑战赛
CodeSearchNet挑战赛是GitHub和Weights&Biases携手推出的一项新赛事,旨在推动语义代码搜索的相关研究。
虽然与其他的信息检索任务相关联,但代码中使用的语言通常是缩写,并且具有高度技术性,也就是说,在这项任务中,代码语言和自然语言之间存在鸿沟。
所以,像GLUE这样的基准测试显然不太适合用来评估这一任务。
CodeSearchNet为NLP社区提供了一个新的平台,包含:
- 大量的相关数据说明
- 一系列基线模型的开源代码,以及预训练权重
- 基线评估指标和实用程序
- 一个新的排行榜
挑战赛包括99种自然语言查询(query),以及大约4000个专家注释,这些注释,来自GitHub为挑战赛发布的CodeSearchNet语料库。
语料库 + 模型
CodeSearchNet语料库的数据取自GitHub上的开源项目,经过了充分的预处理。
其中包含了约600万种函数,取自Go,Java,JavaScript,PHP,Python和Ruby这六种编程语言的开源代码。
还包含了通过机械抓取、预处理相关函数文档,自动生成的类似查询的自然语言,适用于200万种函数。
数据集已经开放下载,大小约20GB。
GitHub还计划在未来几个月继续扩展评估数据集,容纳进更多编程语言,查询和注释。并且,他们也希望这一数据集能在其他NLP任务中得到应用。
GitHub的目标,是将其打造成代码数据集界的ImageNet。
同时开源的,还有基准模型。
为了评估代码搜索模型,GitHub从bing上收集了高点击率的搜索查询文字,将其与StaQC(数据集:StackOverflow-Question-Code-Dataset)查询相结合,生成了99个与代码相关的查询。
而后,使用标准的Elasticsearch(开源搜索引擎)安装,并用基线模型从CodeSearchNet语料库中为每个查询搜索10个可能的结果。
最后,GitHub要求程序员,数据科学家和机器学习研究人员以 [0,3] 的评价标准来注释搜索结果与查询的相关性,0表示完全不相关,3表示完全符合。
精心制作,必属良品。GitHub也指出,在他们的新数据集中训练搜索方法,能显著提高特定项目搜索查询的性能。
现在,排行榜上还只有GitHub“自己人”,那么,来挑战一下吗?
传送门
CodeSearchNet挑战赛简介:
GitHub地址:
论文地址:
https://arxiv.org/pdf/1909.09436.pdf
— 完 —
- 低成本机器人“皮肤”登上Nature子刊:实现三维力的自解耦,来自法国国家科学研究中心&香港大学2024-11-23
- OpenAI重夺竞技场第一,但这波靠的是4o2024-11-21
- Qwen2.5更新百万超长上下文,推理速度4.3倍加速,网友:RAG要过时了2024-11-19
- 0元起步打造你的AI搜索!实测秘塔知识库新功能,竟能指导我升职加薪了2024-11-11