您当前的位置:首页 > 新闻 > 科技

GitHub痛改代码搜索引擎,18小时建155亿个文档索引,技术已公开

时间:2023-02-08 12:19:47  来源:  作者:量子位
萧箫 发自 凹非寺
量子位 | 公众号 QbitAI

 

还记得GitHub发布的新版代码搜索引擎吗?


 

经过一番测试优化后,GitHub现在公开了背后的技术原理。

最新版搜索引擎,不仅解决了之前搜代码时“驴唇不对马嘴”的情况,还可以直接用正则表达式搜索;此外也解决了部分项目上传后搜不到等问题……

网友们看完技术原理后感到惊喜:

 

这真不错!我看到了谷歌代码搜索引擎的影子。
其实我知道,很少有做代码搜索引擎的人愿意去GitHub,但很高兴能看到这一功能将变得更好用。

 


 

要知道,此前GitHub的代码搜索引擎,一度被用户吐槽“形同虚设”。

有不少用户直接自己找了更好用的代码搜索引擎,专门搜索想要的代码:


 

在这种情况下,新版GitHub代码搜索引擎究竟采用了什么技术,做出了哪些改进?

基于Rust语言的搜索引擎

GitHub新版代码搜索引擎名叫Blackbird,它的关键在于重新构建了一个索引。

这里主要实现两类索引,包括正向索引(Forward index)和反向索引(Inverted index)。

简单来说,正向索引指先给数据库中的各种内容编号(ID),然后通过这些内容ID来搜索对应的具体内容:


 

这种搜索方法虽然比较直观,也容易理解,但搜索量太大了。如果我们只想通过关键字搜索对应内容,就需要用到反向索引。

反向索引即通过内容中关键词,直接搜到对应的内容ID,从而立刻定位到对应的内容。


 

具体到反向索引实现方法上,GitHub采用了一种名叫ngram索引的方法,可以很方便地查找内容的子字符串。

这种方法怎么理解?

以limits这个字符串为例,如果ngram中的n=3,那么我们就可以将它分为lim、imi、mit、its四个子字符串。


 

这时候搜索任意一个字符串,都能找到对应的内容ID,从而定位到想要搜索的内容。

但GitHub的程序员们也意识到,这样构建的索引太大了,要真这样搜索的话会导致服务器不够用,因此还需要对这种方法进行优化。

在Hacker News中有一位GitHub程序员对此做出了解释,即采用一种叫做覆盖稀疏ngrams(covering sparse ngrams)的方法生成候选集,并搜索对应内容,其中9代表ch、6代表he、3表示es,以此类推:


 

以这类方法为基础建立的系统如下:


 

所以,新版搜索引擎是否真的比之前更好用了?

测试版体验如何?

目前GitHub中有大约4500万个存储库、115TB代码和155亿个文档。

据GitHub官方表示,原本在改进之前,处理155亿个文档需要大约36个小时。

然而在重写代码之后,需要抓取的文档数量降低了50%以上,因此只需要18个小时左右就可以重新给整个语料库创建索引。

除此之外,需要搜索的内容量也降低了不少。

原本需要搜索的内容在115TB左右,现在将重复内容和数据删除之后,包括索引和内容压缩副本加起来只有25TB大小,缩减到之前的25%左右。

目前测试版依旧在开放申请中,有不少GitHub用户已经试用了一波。

虽然有不少用户对新搜索引擎测试版反响不错,但也有人提出了一些建议。

例如目前这个代码搜索引擎还没办法过滤fork项目,有时候用代码搜索引擎,搜出来全是同一个项目。


 

对此GitHub程序员也给出了反馈,表示他们之前一直在调整索引这一块,以后会考虑这样的附加功能。

除此之外,也有用户表示,GitHub新版搜索引擎依旧不好用,它从来不区分符号的定义和使用,有时候搜出来的结果,往往需要往后翻5页左右,才能找到想要的结果。


 

对此,还有网友推荐了自己常用的代码搜索引擎,如Sourcegraph。


 

你试用过GitHub的新代码搜索引擎了吗?或是还有什么其他好工具推荐?

新版代码搜索引擎申请试用:
https://github.com/features/code-search

参考链接:
[1]https://github.blog/2023-02-06-the-technology-behind-githubs-new-code-search/
[2]https://news.ycombinator.com/item?id=34680903



Tags:GitHub   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
目前GitHub新版搜索引擎已经处于测试阶段,只需18小时即可建完4500万个代码库的索引。2021年12月,GitHub发布了一次技术预览(technology preview),针对GitHub代码搜索「啥也搜不出...【详细内容】
2023-02-13  Tags: GitHub  点击:(9)  评论:(0)  加入收藏
品玩2月10日讯,据 TechCrunch 报道,GitHub 今天宣布,将会在本财年结束前裁员10%。目前 GitHub约有3000名员工。除了裁员之外,GitHub 还将继续冻结招聘工作,并进行一些内部调整以...【详细内容】
2023-02-10  Tags: GitHub  点击:(10)  评论:(0)  加入收藏
萧箫 发自 凹非寺 量子位 | 公众号 QbitAI 还记得GitHub发布的新版代码搜索引擎吗? 经过一番测试优化后,GitHub现在公开了背后的技术原理。最新版搜索引擎,不仅解决了之前搜代...【详细内容】
2023-02-08  Tags: GitHub  点击:(13)  评论:(0)  加入收藏
最近由于自己的个人应用增加,每次都需要在服务器手动发布,觉得特别麻烦,所以想通过代码控制自动发布,直接选择了GitHub Action。 GitHub Action持续集成服务,目前已经免费开放使...【详细内容】
2023-02-06  Tags: GitHub  点击:(11)  评论:(0)  加入收藏
Automated Libra黑客组织通过CAPTCHA绕过技术自动账号创建,进行加密货币挖矿。近期,南非黑客组织'Automated Libra'通过CAPTCHA绕过技术实现自动账号创建,在云平台创建...【详细内容】
2023-01-09  Tags: GitHub  点击:(19)  评论:(0)  加入收藏
创建仓库命名一定要是<username>.github.io这种形式username就是自己github账号的用户名。因为我已经有这个仓库,所以这里的报错可以忽略。 往仓库放入静态html文件命名为ind...【详细内容】
2023-01-04  Tags: GitHub  点击:(53)  评论:(0)  加入收藏
整理 | 屠敏出品 | CSDN(ID:CSDNnews)过去一年,在开源驱动的下,科技的发展迎来了巨大的变化,而当论及其所影响的具体领域、技术时,近日,TiDB 通过全面的开源软件洞察工具 OSS Insigh...【详细内容】
2023-01-04  Tags: GitHub  点击:(38)  评论:(0)  加入收藏
摘要:在前不久刚发布的 GitHub 年度报告中,Java 依旧是最受程序员欢迎的编程语言,而想要成为一名优秀的 Java 程序员,这 7 个 GitHub 代码库可能会提供助力。链接:https://java.p...【详细内容】
2022-11-29  Tags: GitHub  点击:(54)  评论:(0)  加入收藏
大家好,我是Echa.今天来分享 Github 上 8 个很棒的 React 项目,希望能通过学习这些项目的源码,帮助大家更好地理解 React,编写更优雅的 React 代码!概览: React Tetris: 俄罗斯方...【详细内容】
2022-11-20  Tags: GitHub  点击:(99)  评论:(0)  加入收藏
作者 | 褚杏娟近日,GitHub 前 CTO Jason Warner 在推特上表示,“我确信过去十年中,最大的架构错误之一就是全面使用微服务。”从单体应用到微服务的规划顺序,Warner 的建议是:单...【详细内容】
2022-11-18  Tags: GitHub  点击:(77)  评论:(0)  加入收藏
▌简易百科推荐
近日,视频会议软件开发商Zoom宣布拟裁员1300人,占全球员工的15%,中国区被裁员工将获得N+4的赔偿。至于原因,Zoom称此举是为适应当前不断放缓的视频会议服务需求。...【详细内容】
2023-02-14    证券日报  Tags:Zoom   点击:(3)  评论:(0)  加入收藏
作者:钱童心过去几周,全球科技领域又热闹起来。聊天机器人ChatGPT引爆了人工智能的“iPhone时刻”。虽然它还不够成熟,但足以引起各行各业的重视,迎接一场全新的技术革新。已经...【详细内容】
2023-02-13    第一财经  Tags:ChatGPT   点击:(4)  评论:(0)  加入收藏
中新网北京2月12日电(记者 袁秀月) 美国OpenAI公司去年推出的聊天机器人ChatGPT,近期成为全球瞩目的焦点。人工智能将颠覆哪些行业,再次引发人们讨论。这其中,一个不常在此类话...【详细内容】
2023-02-13    中国新闻网  Tags:ChatGPT   点击:(7)  评论:(0)  加入收藏
品玩2月10日讯,据 TechCrunch 报道,GitHub 今天宣布,将会在本财年结束前裁员10%。目前 GitHub约有3000名员工。除了裁员之外,GitHub 还将继续冻结招聘工作,并进行一些内部调整以...【详细内容】
2023-02-10    PingWest品玩  Tags:GitHub   点击:(10)  评论:(0)  加入收藏
新浪科技讯 北京时间2月10日上午消息,据报道,生成式人工智能大战的战火越烧越旺。本周,由此引发的投资热情开始蔓延到微软和Alphabet这两个科技权重股。尽管他们都在这项技术上...【详细内容】
2023-02-10    新浪科技  Tags:谷歌   点击:(15)  评论:(0)  加入收藏
日前,北京市首批“整车无人”自动驾驶车辆获准在北京经开区的限定路线和特定时段分批开展道路测试。这两天,在北京经开区出现了一批“整车无人”自动驾驶车辆,区别于此前开展的...【详细内容】
2023-02-10    央视新闻客户端  Tags:自动驾驶   点击:(13)  评论:(0)  加入收藏
萧箫 发自 凹非寺 量子位 | 公众号 QbitAI 谷歌硬刚ChatGPT消息一出,科技圈全坐不住了。就在昨晚,阿里百度网易京东一众公司全宣布要推出类ChatGPT新产品,战况那叫一个激烈。阿...【详细内容】
2023-02-09  量子位    Tags:ChatGPT   点击:(274)  评论:(0)  加入收藏
2022 年 2 月, 学术数据库 Sci-Hub 开始对外公布每月的文献下载统计&mdash;&mdash; 不论何时,中国用户在这个网站上的论文下载量都位居全球第一,是第二名美国的近五倍。2023 年...【详细内容】
2023-02-09    果壳网  Tags:Sci-Hub   点击:(20)  评论:(0)  加入收藏
IT之家 2 月 9 日消息,贝壳财经从百度方面的知情人士处了解到,该公司即将推出的类 ChatGPT 应用“文心一言”上线首站将直接接入百度搜索。据介绍,“文心一言”一些相关功能目...【详细内容】
2023-02-09  IT之家     Tags:ChatGPT   点击:(5)  评论:(0)  加入收藏
IT之家 2 月 8 日消息,据华尔街日报报道,一份发给 Meta 相关工作团队的内部通知显示,该公司将对刚起步的 Horizon Worlds 元宇宙应用进行改造,希望能在改进这项应用服务的设计后...【详细内容】
2023-02-09    IT之家  Tags:Meta   点击:(11)  评论:(0)  加入收藏
站内最新
栏目相关
  • · 透视线上会议平台生存现状:Zoom裁员、国内企业举起收费大旗 线上会议室还能留住用户吗?
  • · ChatGPT已能通过高难度考试 未来教育走向何方?
  • · 论文都是科技与狠活?ChatGPT为何引教育界“封杀”?
  • · GitHub计划在财年内裁员10% 还计划转向远程办公
  • · AI战火越烧越旺:谷歌母公司Alphabet市值两天蒸发逾万亿元
  • · 北京“整车无人”自动驾驶车辆上路测试
  • · 阿里版ChatGPT已进入测试!中文聊天截图曝光,达摩院出品
  • · 2023 年了,为什么我们还需要“非法的” Sci-Hub?
  • · 消息称百度类 ChatGPT 应用首站将直接落地百度搜索
  • · Meta 将改造 Horizon 元宇宙应用,计划最快 3 月向青少年开放
  • · 推特迎来巨大变化:推文字数限制提高到 4000 个
  • · Bard首次亮相就大翻车,端掉了谷歌1000亿美元市值
  • · GitHub痛改代码搜索引擎,18小时建155亿个文档索引,技术已公开
  • · 我们离网络隐私被攻克还有多远?
  • · 抖音上线外卖服务?定下1500亿小目标?本地生活竞争日趋激烈
  • · 历史新高!知乎港股暴涨超57%,坐享ChatGPT红利?
  • · 微软“核弹级”更新:ChatGPT亮相Bing搜索和浏览器,今天上线,免费使用
  • · 对话框取代搜索栏!微软新搜索引擎引入ChatGPT技术,向谷歌下战书了
  • · ChatGPT大火!美科技巨头纷纷加码人工智能
  • · 搜索大变天!谷歌推出Bard对抗ChatGPT,打响保卫战
  • 站内热门
    相关头条
  • · 论文都是科技与狠活?ChatGPT为何引教育界“封杀”?
  • · 阿里版ChatGPT已进入测试!中文聊天截图曝光,达摩院出品
  • · 抖音上线外卖服务?定下1500亿小目标?本地生活竞争日趋激烈
  • · 微软“核弹级”更新:ChatGPT亮相Bing搜索和浏览器,今天上线,免费使用
  • · 搜索大变天!谷歌推出Bard对抗ChatGPT,打响保卫战
  • · 暴击谷歌?微软产品将全线接入ChatGPT,包括Bing、Word、PPT和Excel
  • · 朋友圈发布的神秘代码,爆火的社交新平台 Damus 是什么?
  • · 仅用两个月达到上亿月活!ChatGPT成史上蹿红最快的应用
  • · ChatGPT火了谁得好处最多?外媒:还是谷歌等巨头
  • · Meta测试会员专属VR社交空间
  • · 百度进军ChatGPT 李彦宏:相关技术已达到临界点
  • · 史上最好Windows系统 微软要对Win11首个正式版强制升级22H2了
  • · Win 7将彻底退出历史舞台
  • · 抖音开抢微信饭碗!功能单一问题不少,用户称:“不需要第二个微信”
  • · 2022百度沸点榜单出炉,100个关键词定格国民记忆
  • · 行走的代码生成器:chatGPT要让谷歌和程序员“下岗”了
  • · 不再直接删除文件,谷歌ChromeOS 108终于引入回收站机制
  • · 搜狗又一业务被砍!搜狗联盟宣布将停止运营
  • · 一年亏损100亿!从亚马逊到谷歌,硅谷巨头“登月计划”纷纷被砍
  • · 半自动越位识别技术又快又准!比赛用球史上最快!卡塔尔世界杯“嵌满”这些科技元素
  • 站内头条