基于 AI 的答案引擎 Perplexity,最近融了7360万美元的B轮融资。
早在一年前,我就体验过Perplexity,它的搜索体验让人眼前一亮,答案是针对用户查询生成的,标注了引用来源。
这个体验是全新的,在GenAI之前,也有很多产品尝试过做下一代的搜索引擎,但大多停留在酷炫的概念,实际落地的效果差强人意。
生成式的答案引擎无疑是新的品类,只不过当时的ChatGPT过于火爆,普遍觉得Perplexity的差距并没有拉开(套壳产品?)。
A.I.-powered search engine, Perplexity, Google
这款引擎产品,也并非完美。
《纽约时报》的一篇文章介绍了Perplexity引擎, 尽管Perplexity并非完美,但它在搜索结果方面表现出色。一些用户对Google的搜索结果质量感到不满,并开始寻找其他替代品。虽然Perplexity可能无法完全取代Google,但它有可能在搜索市场上与Google竞争。
正因为,对标谷歌搜索,最近这个赛道开始受到更多的关注。
最近,Perplexity 创始人Aravind Srinivas在推特上转发Lepton 创始人的推特并表示:“太棒了,看到 Perplexity 成为融资的对标,包括前 Meta 和阿里巴巴高管都这样做。这说明 Perplexity 的影响力已经扩散到了整个科技生态,令人振奋!”
原因是Lepton做了个类似Perplexity的产品,
而且只需要500行代码。
随后,Lepton也开源了项目,确实只有500行左右的代码。流程很清晰:
1 用户输入查询指令
2 通过搜索API,找到用户查询的结果
3 把查询结果和用户指令通过2个提示工程,分别用于生成答案和生成相关问题
4 把提示词输入LLM,得到结果,呈现给用户
这就是典型的RAG,检索增强生成。
ComfyUI x RAG
那么,实现一个类似于Perplexity的产品有多难?今天我们用ComfyUI来实现。
给comfyui-llamafile增加一个搜索的API,comfyui-llamafile是通过调用llamafile来使用本地LLM的技术。
搜索API通过playwright来调用无头浏览器,访问bing的搜索后返回结果。
然后,借用下Search with Lepton开源的提示工程,我们把提示词输给本地的LLM。
经测试,在1.1B小语言模型上,也可以得到有效的结果。(ps:如果没有加RAG,小语言模型几乎没法应用到真实场景中)
社群交流👆
整理好的提示工程可在知识库直接下载