Ai搜索引擎是怎么实现的?为什么速度很快?
作者:卡卷网发布时间:2024-11-29 15:15浏览数量:99次评论数量:0次
其实各家的AI搜索引擎的主流做法都比较类似,基本都是RAG的这个套路框架,然后加一些细节方面的优化和迭代。整个界面也脱离不开搜索框的形式,还是用户主动输入问题,AI给出回答。
我们先介绍下RAG相关的原理,然后再说下搜索引擎的优化策略。
整个RAG的流程用文字表述如下:加载文件 -> 读取文本 ->文本分割-> 文本向量化 -> 问句向量化 -> 在文本向量中匹配出与问句向量最相似的top k
个 -> 匹配出的文本作为上下文和问题一起添加到prompt
中 -> 提交给LLM
生成回答。
在AI搜索引擎里,加载的文本,就换成了调用 web 检索获取的文本。同样的,有很多web的检索API,包括谷歌、bing、duckduckgo等。
AI在搜索的时候,不是简单的和我们想的一个个去搜索关键词,而是会用到并发搜索的技术,一次性去检索多个关键词,多个网页,这样整体耗时就可以控制在毫秒级别了。
检索到相关信息之后,一般有两种方式去处理召回的内容。
1、如果召回的内容,过多,超过了大模型的token上限,或者超过了设定的阈值(假设为80%)。就首先对召回的内容进行简单的总结,这个时候可以并发调用一些小模型去总结。因为文本总结是一个很简单的任务,BERT类的模型都可以做到,所以用小模型完全没问题。
2、如果召回的内容,没有超过大模型的token上限,可以根据一些过滤条件,过滤掉一些相关性差的内容,做一个逻辑判断就可以,速度非常快。
在这之后,就可以保证输入给大模型的内容不会超过token的上限,直接输入给大模型就可以了。整体算下来可能RAG的流程在1-10s之内。
比如,知乎的直答,先检索网页,然后总结输出,就需要至少1s以上的时间,要知道传统的检索基本都是50ms以内的,实际上AI搜索要比传统搜索慢很多。
之所以感知不太明显,可能因为现在的AI搜索都是打字机的显示,一点点展示内容,降低了用户对时间的感知。如果是一直等待的话,你会发现耗时还是很长的。
雨飞:基于知识库和 LLM 的问答系统经验分享雨飞:5分钟打造基于 LangChain+Gradio 的个人知识助理雨飞:从零开始学 langchain 之搭建最小的 RAG 系统免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。
- 上一篇:电视为何不开发一款浏览器软件?
- 下一篇:自主研发一款浏览器内核的难度到底有多大?
相关推荐

你 发表评论:
欢迎