中国程序员开发出无需分词的搜索引擎,比Elastic Search更先进

目前使用最广泛的搜索引擎技术是Elastic Search,这是一款开源软件,在国内,阿里巴巴、腾讯、滴滴、今日头条、饿了么、 360安全、小米,vivo 等诸多知名公司都在使用Elasticsearch,国外也基本上是这个情况,github也使用Elastic Search。

小唐搜索引擎技术是我们在做语义研究的过程中发展出来的一项新技术,与ElasticSearch技术上的区别在哪里呢?

最大的区别是:ElasticSearch基于分词索引(term),而小唐搜索引擎技术不需要分词!(你没有听错)

下面举例说明:

对于句子:"中华人民共和国国歌",ElasticSearch的分词器会将这句话分为如下词:[中华人民, 共和国, 国歌](3个词)

你搜索这三个词,都会找到"中华人民共和国国歌" 这句话,但是你搜索"中华","人民","共和",将找不到这句话;

但这也好办,我继续分词如下: [中华人民共和国, 中华人民, 中华, 华人, 人民共和国, 人民, 共和国, 共和, 国, 国歌](10个词)

这样搜索以上词汇都能找到 "中华人民共和国国歌" 这句话了,代价就是,你的索引库体积增加了3.3倍,但依然还是搜不到一些词:例如搜"中",搜"华",搜"歌", 搜"共和国国歌"都找不到这句话("共和国国歌"用term查询搜不到,需要match组合查询才能搜到)。

你会说,那我继续拆分,直到把所有组合全部分出,这当然是可以的,你应该听过组合爆炸这个词,代价就是索引库体积几何倍数暴涨。

小唐搜索引擎技术正好解决了这个问题,它不需要分词,它可以搜索"中华人民共和国国歌"里面的任意组合,它也没有体积爆炸!

下面来说明一下为什么无分词的小唐搜索引擎比需要分词的Elastic Search先进:

刚才说了Elastic Search是有限分词,当用户搜索"xxx xxx",Elastic Search没有这个分词时,也不是就不能搜了,这个词会被拆分成两个词或多个词, 假设拆为两个词 term1, term2, 搜索后term1找到1亿个匹配,term2也找到1亿个匹配,那必须同时有term1和term2才符合用户要求啊,只能对2亿个匹配求交集, 求交集没有什么好办法,最多就是2个跳表来回跳,要不使用RoaringBitmap,无论怎么做,循环1亿次,每次做几下比较,几秒钟就用掉了。

而小唐搜索引擎不会出现这个情况,只要是连在一起的字符串,一律瞬间找到,无需组合求交集,这当然就快了啊!

你现在就可以去试验,www.tanglib.com 库中的任何一段文字,你任意截取,小唐都能瞬间搜索到。

当然,小唐也是可以做组合搜索的,这个算法跟Elastic Search就没有区别了。

你一定惊讶了,小唐的索引库会不会很大?建索引会不会很慢?

小唐的索引库会有多大呢?确实是不小的,但目前内存,SSD这么便宜,无论什么业务应该都是可以接受的,1个G的文本,索引库<5个G,单机单线程建索引时间在1000秒左右。

ElasticSearch的情况呢?分词粒度是影响ElasticSearch的索引体积和建库时间的,有人做过实验:点击打开文章

小唐的优势在哪儿呢?最大的优势就是简便自由和高性能,再也不用担心分词不好漏掉目标词,因为小唐是可以随意搜索的, 它可以搜索空格,可以大小写敏感,可以整词匹配,而丝毫不影响性能。

小唐搜索引擎采用c++写成,ElasticSearch由java语言写成,所以小唐是不需要Jvm,小唐的内存占用应该会更少更出色。

在源代码搜索上,小唐搜索引擎会超出ElasticSearch更多,举例说明一下:

例如程序员要找一个变量num, 想找到它被赋值的地方,那一般会搜 "num=" 或 "num =", 这在ElasticSearch中搜索就了不得,这得求交集啊,要是有1个T的代码, 那1个小时都出不来,而小唐呢?瞬间找到! 程序员又改注意了,要找一个叫num的函数,哪些地方调用了num函数,那就搜索"num(" 或者 "num (",那ElasticSearch又完蛋了,这又得需要一个小时啊,小唐呢,还是瞬间找到!

所以目前的互联网上,源代码搜索就没有做得好的,包括github,它的代码搜索就是ElasticSearch做得,那体验是稀烂的。

小唐搜索引擎搜代码那就太easy了,请在本站搜索一下安卓或鸿蒙的源代码,再到github搜索一下源代码,就能体会到小唐的优势。

实际上不仅仅是代码搜索,我们相信,任意搜索改为小唐驱动,都将会获得性能和搜索体验的提升。

小唐搜索引擎网站 www.tanglib.com 目前提供安卓13及鸿蒙源代码全文检索,用于演示小唐无所不能的搜索能力。

搜索引擎技术是互联网基础技术,也是人工智能的基础技术,在基础技术上一直是美国创新中国拿来使用,例如ElasticSearch,例如chatGPT,小唐搜索引擎技术才刚刚发布,希望能有更多的中国公司了解和使用,得以发扬光大,在基础技术上超越美国。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,012评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,628评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,653评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,485评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,574评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,590评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,596评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,340评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,794评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,102评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,276评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,940评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,583评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,201评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,441评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,173评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,136评论 2 352

推荐阅读更多精彩内容