Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

正式上线,GitHub向所有用户开放全新代码搜索引擎

18 个月后,GitHub 终于宣布向所有用户开放全新的代码搜索引擎。

在软件开发的过程中,阅读和理解代码是一项基础工作。无论是实现新功能,还是查找 bug,开发人员首先要阅读和理解代码,这个时间甚至多于编写代码。如果能够像搜索引擎一样,快速找到开发需要的上下文代码,那么软件开发的效率将会大幅提升。

作为全球最大的源代码托管服务平台,2021 年 GitHub 发布代码搜索引擎 Code Search 预览版,之后 GitHub 又对 Code Search 进行了一系列的优化修改,并在今年 2 月公布了技术细节。

现在,GitHub 宣布所有用户都可以使用全新的代码搜索(code search)引擎和代码视图(code view),旨在让开发人员能够快速搜索、导航和理解代码,最终提高工作效率。

具体来说,GitHub 推出了一个完全重新设计的搜索界面。新界面不仅提供建议与补全,还能对搜索结果进行智能分类。

图片

这基于 GitHub 从头开始构建的全新代码搜索引擎,该引擎的特点是速度更快(大约是旧代码搜索速度的两倍),功能更强大(支持子字符串(substring)查询、正则表达式搜索和符号搜索),并具备一定的代码理解能力,能将最相关的结果放在首位。

此外,研发团队还重新设计了 GitHub 的代码视图,将搜索、浏览和代码导航紧密集成起来。

图片

我们来看一下改进之后,GitHub 的应用效果。

修复 bug

修复 bug 是软件开发中最常遇到的工作情况之一。在修复之前,开发者们首先要找到 bug 在哪。一个大型软件或项目通常具有多个系统或存储,如果没有代码搜索,开发者就不得不克隆一堆存储库并使用 grep 遍历它们。现在借助 GitHub 的代码搜索功能,开发者可以在大量代码中进行快速查找:

图片

图片

图片

查找配置文件

在实际开发中,项目配置往往是硬性限制条件。GitHub 现在为开发者提供查找配置文件的功能。例如,在代码中搜索包含「内存(memory)」一词的 YAML 配置文件,就能查看一些内存占用情况:

图片

这种查询功能对于开发中的资源规划与分配至关重要。

此外,GitHub 还制定了一些避免安全漏洞的规则,例如禁止使用 dangerouslySetInnerHTML 将危险的字符串注入 DOM。

图片

网友怎么看

GitHub 全新的代码搜索正式上线后,有网友大赞其功能,称这是 5 年来最令人印象深刻的产品,优秀到可与 ChatGPT 媲美。

图片

还有人表示 GitHub 的代码搜索功能比 Copilot 或任何大型语言模型(LLM)都有用得多。

图片

但也有一些网友表示,以前的 GitHub 搜索效果很差,更多的时候他们习惯于使用 git-grep。

图片

看来,全新的 GitHub 代码搜索需要开发者们自己尝试一下,才知道好不好用。

参考链接:https://github.blog/2023-05-08-github-code-search-is-generally-available/

工程GitHub
相关数据
规划技术

人工智能领域的「规划」通常是指智能体执行的任务/动作的自动规划和调度,其目的是进行资源的优化。常见的规划方法包括经典规划(Classical Planning)、分层任务网络(HTN)和 logistics 规划。

查询技术

一般来说,查询是询问的一种形式。它在不同的学科里涵义有所不同。在信息检索领域,查询指的是数据库和信息系统对信息检索的精确要求

语言模型技术

统计式的语言模型是借由一个几率分布,而指派几率给字词所组成的字串。语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。

推荐文章
暂无评论
暂无评论~