00:03
大家好,欢迎来到腾讯开发者社区腾讯云项目数据库团队共同打造的项目数据库快手快速上手训练营第二节,然后在上一个章节呢,其实我们已经给大家去讲详细讲了一下向量向量检索技术以及像数据库,然后在这个章节里面呢,我们会去给大家详细介绍一下腾讯像数据库这款产品,然后以及腾讯像数据库目前在整体呃建立的一些优势点,然后也希望通过这次介绍能够带大家去详细了解到这一款像数据库产品,然后也希望后续能够有呃更多的业务能够去使用我们的产品,去真正的为咱们的业务去提供呃更多现实化的一些能力。然后腾讯像数据库这款产品呢,其实本质上呃是来自于我们呃集团内部多年层练的一个产品,然后我们内部呢,其实在呃从呃在我们狭义的人工智能时代,就已经有这种比较呃重的检索的需求的,像我们外部的这种TOC的TOC的业务,像我们QQ浏览器,腾讯视频,还有腾讯音乐,他们有非常搜索和推荐,还有广告这三类场景,然后在这三类场景下呢,其实向量检索是一个呃核心的基础点,然后基于这种一个诉求呢,我们集团内部在2019年的时候是上线了内部叫欧拉玛这样一个向量检索的内核,然后可以在右下角这一张图里面呢,也可以看到,其实我们欧拉玛这一个相能检索内核呢,是同期和潘康还有mirrors一起发布的,只不过呢,在2019年的时候,我们是更多的内部的业务去团队去进行使用。
01:35
然后在2023年的时候。我们内部去通过欧拉玛像欧拉玛项的检索这个内核呢,也是作为了我们腾讯项税库这个内核,然后正式的去对外发布,然后以像税库云上项税库这种形态去给呃各位开发者和客户去提供像税库的服务,然后就左侧这一张图呢,其实各位也可以看到,我们也是统计了。呃,欧拉玛上线一年,经过我们内部五年时间打磨之后,我们也看到有非常多的业务在这五年时间内去上,真正的上线到生产,其实截止到我们,呃二四年年底最新的一个数据呢,我们集团内部其实已经有60多家业务,然后去使用到了我们这个拉玛项检索内核,然后真正的上生产的,然后在左侧这一张,呃,日均检索请求量这个图里面可以看到呢,我们最新的一个数据也是显示我们日均处理的一个请求量已经是超过8500亿次了,然后这一波的一个增长呢,也可以看到,其实是从二三年的,呃上半年开始,然后我们内部的一个向量减索的请求量几乎是处于一种陡增的形式的。第一个方面也可以看到,呃,有两个部分,第一个部分就是内部对于AI检索,然后呃在向量检索这个领域里面的一个拥抱程度,然后第二个程度呢,也可以反映出目前使用索无论是在搜索推广告,还是在我们这种呃广泛的A场景里面,其实检索都是一个呃不开的核心的一个技术要点。所基于这种技。
02:59
第二点呢,我们云上数据库也是为大家去提供了非常完善以及也是呃非常应用的一些能力,然后这个第二张图里面呢,我们也可以看到是我们整个腾讯像数据库在云上的一个整体的架构图,然后这个架构图可能大家第一次看的时候会理解,可能会比其他像数据库会复杂很多,然后我也去给大家去详细讲一下这张图其实。
03:21
真正的像数据库这一个层面呢,是在我们最右侧这个数据管理这一层面,然后为了去减少呃,降低我们用户的一个使用门槛,就是比如说我们用户可能在前期这种数据如何去向量化呀,还有我们去做这种red rag的业务啊,我们前期有非常多的这种数据处理这一个,呃,流程上可能会阻碍到大家去接入向数据库,或者是去上呃业务的一个。的一个难度,然后啊,我们在这里呢,就使用就有非常多生态层面的一些建设,比如说我们看到我们目前有三种形式可以去接入我们的项目数据库,然后第一种形式呢,就是直接上传这种原始的一个文档,比如说我们现在业务上想要去做这种RA的业务,那我们就直接上传一个上传一个档,呃文档上来,然后我们在这里呢,就可以去直接对PDF或者word以及down或者PPT这种格式的文档去进行快速的去解处理。
04:17
然后这个处理呢,主要是交一个呃,中间的组件,叫做我们的AI套件去进行呃处理的,然后。AI套件里面的核心,他会去对我们上传上来的文档去进行解析,然后这个文档解析目前也是我们发现许多用户比较困难的一个点,因为文档解析里面其实会呃有非常多的一些工程化的手段,然后去把整个文档解析的内容给处理好,然后同时第二个部分呢,内容分也是同样的,有非常多的一些细节需要我们的用户去做处理,然后第三个部分呢,也是为了去再进一步提升我们的一个呃rag业务的或者是说应用的一个效果,然后会有非常多语义增强或者效果增强的一些手段需要我们的呃研发或者是说我们的业务团队实际的去进行探索,然后去增强它的一个效果的,然后这一部分的一个内容呢,我们也是形成了一个AI。然后给。
05:10
都有开发者去进行使用,一方面是降低大家使用门槛,第二个是能够以这种医用的方式,然后去提供一个呃效果比较不错的一个呃功能,然后方便大家快速去搭建自己的RG的业务,然后针对于AI套件这一部分内容呢,呃,我们训练营的课程的话,还有之前也出过一期,然后是我们的R77年入门课程,如果想要去详细了解的话呢,也可以在我们的云家社区,然后去找到呃这一部分的一个内容。然后AI套件这一层处理完成之后呢,其实我们核心还是会呃处于始这一个维,因为我们核还是通过AI套件处理之后,他会去呃输出这种。呃,优化好的这种一段一段的原始文本,然后下一步呢,会经过我们的这个背服务去对我们的原始文本去进行向量化,然后目前我们in背服务呢,也是在云上提供并托管了一些我们目前公认效果比较不错的,像我们BG的large级模型,以同样的我们的large级模型的1.5的版本我们也提供了,同时还有呃,目前呃BG团队做的比较好的M3这个模型,我们在云上也有提供,然后在英文这个层面呢,我们也提供了u large, 还有多语元模型这个方面,我们的multiing以及刚刚提到的BG的M3这个模型我们都是有提供的。然后各位开发者呢,也可以根据呃自己的一个业务诉求去选择我们的inb模型,同时in背服务这一层呢,在呃,我们后续的一个规划中也会去有。
06:38
大批量模型更新的一个能力,然后这个届时各位也可以期待一下,然后第二种接入方式呢,就是我们刚刚提到的,如果是说我们现在业务上的一个处理能力已经比较强了,对于文档解析拆分,还有整个呃检索结果增强这一部分已经做了比较多的工作了,但是我们也发现了,呃,云配服务这一层,其实它也是属于一个消耗我们计算资源比较多的一个部分,因为我们需要依赖着。
07:06
呃,企业内部的团队去搭建一个的服务,然后这个服务呢,就相当于一个单独的服务,然后我们需要去在这个里面呃,有非常多的一些推理的资源,比如说我们的GPU卡,还有一些其他的一些资源,然后去呃,维持我们这个服务的稳定性,然后在这在这个层面呢,我们也去提供了允许用户直接去写入这种原始文本数据的能力,直接去调用我们数据库提供的,然后可以去把原始文本这种数据接转为数据,然后这个是第二种接入方式,然后还有第三种接入方式呢,就是可能我们现在的模型是。咱们业务这边自己训练的,或者是说。是在一个肌肉模型上去进行微调了的,然后这种直接转已经转为向上数据的,然后我们也提供了这种直接写入向上数据最底层最基础的这种用法,然后去写入到我们项目数据库中去,然后同样的可以看到我们目前通过这三个种不同的接入方式也是提供了。
08:05
三个阶段不同的接入的一个能力,然后方便的呃,不同阶段的业务,或者是不同呃用法的客户,然后都能够使用上我们更上层生态的一些服务,然后更便捷的使用上我们像数据库的一服务,然后在整个右侧这一块,就是整个数据管理,也是我们像数据库这一层。底层的话呢,我们云商的数据库都是这种,呃,分布式的架构,以及在整体的一个性能的,还有高可用这一方面我们都是有保证的,然后具体的一个。性能方面我们会在大家呃,会在后面去给大家详细介绍到,然后在最底层这里的向量数据这一层,我们也是支持了,目前市面上比较流行的两类索引,第一类的话是我们稠密向量这一类索引,然后稠密向量比如说最常见的三类索引类型,像我们的flat hw, 还有if系列,然后我们都是已经支持了,然后在吸收向量这一层呢,我们也是支持了,能够去。实现这种关键的精确性的检索,然后去搭配上向量一个的混合检索,去统一的提升我们呃这方面的一个效果,然后在更上层呢,我们也是提供了基于这两种所引类型,一个是向量的一个相似性检索,另外一的话就是我们的全文检索,就是我们的关键是检索能力,同时在作业上的一个接方式,我们也提供了非常便捷的这种视化面,还有我们的方式及基不同我们Python。
09:29
Java也是要加这四类语言的一个SDK的接入方式,同时在生态框架这一块也是有廊还有index一个支持的。所以无论是在整体的一个使用,以及在。我们接入这一块,我们目前都是提供了一个比较完善能力。然后在接下来这一页呢,就是我们整个腾讯项目数据库的一个核心的优势,我们目前呢。腾讯数据库呢,也是在呃,我们二三年是首家获得了我们中国权威权威机构的一个标准认证的,然后在这次的一个标准认证里面呢,我们也是能够去支撑到千亿级的一个销量规模,以及同时在这些规模下达到500万的QPS,同时响应时验的话也在毫秒级,同时在呃我们性能这一个层面,以及我们成本这一个层面呢,我们也是和其他建内的像数据库产品去做了一些对比,然后在整个QPS这一层面,可以还有我们单QPS成本这一方面也可以看到。
10:29
在两张柱状图中,我们整个性能的话,是平均领先了我们行业平均水平水平的两倍以上的,然后同时我们在成本就是单QPS成本这一方面呢,我们也是可以去,呃,做到行业平均水平的话呢,是降低75%,然后在整个性价比这一块呢,我们对比其他行业水平内的其他产品的话,都是有非常大的一个性价比的,然后也可以看出来,我们整个腾讯库目前在内的话,都是成本和性能这两方面大幅领先的。另外后面给大家去呃有单独的一个介绍呢,也是我们提到的刚刚比较核心的一个能力,也就是我们目前无论是去做呃搜索类的应用,还是说rag这类的应用,都会用到了一个核心的能力,就是我们的双召回加入rank的一个能力,这个能力呢,可能呃有一些开发者已经比较了解的,然后在这里呢,我也去给呃一些正在了解或者正在学习的开发者也去介绍一下。
11:22
因为我们之前的话呢,检索其实一直被大家带的比较火,然后大家都会去下,认为我们一个检索现在就能够去。覆盖掉,或者是说呃支撑好一个比较检索的一个效果,但实际上呢,我们目前看下来在检索的话呢,也是呃更多的还是需要去搭配上呃数向量检索,也就是我们的关键字检索这样的能力,然后有两路的一个呃检索的能力,然后才能够去获得一个比较好的一个检索效果,其实向能检索的话呢,它有非常多的一些优点,然后我们在之前的课程里面也有给给大家去提到,比如说我们这儿的一个呃语义的相适应的检索,同时我们能够去支持,支持这种跨模态以及多元的这种检索能力,同时我们整个在呃输入容错性这儿呢,我们也允许这种比较小的这容错性,比如说像呃。
12:14
输错了一个错别字啊,或者等等,表达可能没有那么精准啊,可能他能够通过向量检索去获得一个比较不错的检索结果。但是在另外一的场景下,我们也发现了一些case,比如说我们之前有遇到,呃,有电商的客户,然后他再去做搜索这一个效果提升的时候呢,也发现了,虽然向上检索已经能够去帮他的把他的召回率去做到90%左右了,但是他会发现他要去再提升剩下10%的一个召回率,用向量这一会非常的困难,然后在这里呢,我们也是在期也是引入了收向量这一个能力,然后收向量检索呢,大家也可以理解为之前可能用过elastic search的就是ES,可能我们也知道。这种吸收向量检索,它核心还是使用上了一个关键字,关键词或者关键字匹配的一个能力,比如说我们有一些商品,呃,我们前面的前缀都是一样的,它但是它会有不同的后缀,我们去通过这种后缀去进行检索的时候呢,在向量这一路的检索,它的一个效果就不是那么的理想,然后我们呃,引入了向量和稀疏这两路检索,这两路的一个检索之后呢。
13:23
我们发现能够去涵盖掉它的一个所有场景下的一个检索效果,然后能够去提升它检索效果,然后最终支持到95%以上的一个准确率。然后在两路检索后面呢,还有一个关键的点,也是一个重排序,然后也可以看到我们其实两路检索的话,它两边都会出来一个top n, 比如说我们举了个例子,在向量检索这一路呢,我们检索出来一个结果的话,是有MM个结果,然后在系数向量检索这一路呢,出来也有N个结果,然后最终呢,我们用户可能要的是一个top k, 就是K的结果,可能M和N还有K三个值都是不相等的,然后这个时候呢,我们就需要引入一个技术,叫做renk,就是我们的重排序。
14:06
重排序的一个能力呢,我们在这里也是提供了两种方式,第一种方式的话呢,就是按照权重去进行一个重排序,就比如说我们的呃,现在要看业务评估下来更看重哪路的一个呃权重,比如说我们有些业务可能对于向量这个权重看的会比较高,可能就会用到0.9和0.1的权重,0.9的话就是向量所引你的分数在0点,在0.9的权重,然后吸收向量只在0.1,但也有可能呢,我们对于吸收向量就是关键值这一路的权重会比较看重,那系数向量的权重可以配到0.9或者0.8,然后向量,所以呢,它的权重相应的就是0.1或者0.2,然后这样按权重去对他们的一个分数去进行加权,然后呃求和,然后最终得到我们最终的一个呃排名的top k.然后还有第二种排序方式呢,就是我们R排呢,就是现在我们不说top条数score,就是分数值是多少,我们只关心呃每一条数据在两边的一个排名,比如说我们的呃M中,然后呃数据的排名是ABCD,然后N中数据的排名的话是cpad这种方式,然后会通过这种排名的方式去计算我们最终的一个排名,然后可能出来K的结果的话呢,可能就是cbda这种方式都有可能。举个例子,然后RF呢,就是不看重分数,只看重在每一路检索出来的一个排名,然后去进行一个排序,然后这里呢,也是呃提供了这样比较高阶一个检索能力,也是能够去提升我们最终的一个检索效果,然后在后面呢,也会有一节实操课程,带大家去上手体验我们双双路检索的一个使用方式,然后各位如果是说后面需要去提升我们IG整体的一个效果,然后也可以考虑先。
15:53
采用上这种向量检索加呃,我们的关字检索站的能力,去初步提升我们rag应用的一个效果。
16:02
然后在跟后面呢,我们是对刚刚第一节课的内容,然后会去做更深入的一个。解答,然后在第一个呢,就是我们在整个RG的产品里面,其实在这一个场景下呢,我们会有用户有非常多的一些产品诉求,可能在前期的话呢,是没有去提出来的,比如说。呃,刚刚我们提到的在整个IG应用构建里面,其实我们是需要呃,有非常多前期处理的流程的,就如果是说咱们到项目数据库里面的一个数据质量不佳的话,那么会导致我们后续的一个招回效果也会非常差,然后从而导致我们的一个IG的应用效果会比较差,然后。第二呢,就是我们的呃,之前如果是自己使用这种去搭建或者自建数据库的话,它的一个维护成本也会比较高,然后整体的我们前期可能数据量比较小,但是随着我们业务的一个呃快速发展,然后我们数据量越来越多之后,会导致我们使用的一些基础组件,然后它会出现一些性能,还有在稳定性方面会有一些问题,然后会给我们业务在后续呃迭代或者升级中带来一些困扰。
17:09
然后整体呢,通过有一些呃rag这个场景下的一些诉求,和我们目前遇到一些挑战,就是整个呃rag前期的一些处理的呃流程会比较多,然后整个数据库这一层的维护会会比较复杂,然后我们目前也是提供了IG这个解决方案,就是通过我们云上的腾讯像数据库,然后加上AI套件这样一个能力,能够去快速的将我们的IG业务给推上线,然后同时保证我们的一个召回率,呃平均下来可以达到90%以上的一个招个效果,同时我们接触效率的话,也是比之前的这种,呃,咱们业务自己一个手一个手去招轮子,这种方式会提升10倍的一个效率。然后呃,这个场景呢,其实呃也是我们呃想去给大家再去提一下的,就是我们目前呃也是有这种基于RA落地的一个智能客服的系统,然后也用上了我们这一套的一个AI套件,然后一个效果,然后在这里呢,大家也可以简单去看一下,如果想要了解更多的一些信息的话,也可以去看我们之前7天入门的课程。
18:12
然后在这一个呃案例里面呢,我们在后续的第三节课程里面,也可以去给大家演示一下,我们快速的去搭建一个RA的DEMO,能够去做到一个什么样的效果,也可以去,呃,无论是给到自己内部的团队去做一个演示,或者是说啊,自己去搭建一个自己的一个学习的知识的助手,也是非常不错的一个选择。然后再下一个场景呢,就是我们的一个图收的一个场景。图片这个搜索场景呢,其实我们也有非常多的一些落地的,呃,外部客户在这里呢,也是给大家去看一下这个案例。然后在这个场景里面呢,呃,可能更右右侧这一个流程图的话,大家也可以简单去看一下,其实核心呢,还是去通过我们的背的模型,然后将我们的图片数据去进行向量化,然后存入到我们相关数据库中去。
19:02
然后我们要检索的时候呢,也是。把我们要搜索的图片。或者我们要搜检索这种文本也转为相关数据,然后再到我们相关数据库中去进行检索,然后把相似的数据去进行一个返回,然后这个场景的话呢,也会在我们后面的实操的或者实战的课程里面去带给大家快速上手去进行一个体验,然后这一节课呢,我们呃详细讲了腾讯项目数据库整体的一个架构,以及核心的一些优势,同时也给大家去简单介绍了一下我们RG的一个应用,以及我们图片搜索的一个应用,然后在后面的三节课程里面呢,我们会去用不同的场景带大家去上手体验一下相关数据库,以及我们也提供了非常简单的只需仅需要改几行代码就可以去把咱们的DEMO给跑起来的这种实战的课程,也欢迎大家收看,继续收看我们后续的一个课程。
我来说两句