前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[AI Perplexica] 深入解析,AI 架构揭秘

[AI Perplexica] 深入解析,AI 架构揭秘

原创
作者头像
从零开始学AI
发布2024-07-03 11:35:05
670
发布2024-07-03 11:35:05
举报
文章被收录于专栏:AIAI

上一篇文章,我们对 Perplexica 做了个基本介绍,包括特点,以及如何安装。

今天,我们来深入看下 Perplexica 的架构。

Perplexica 的架构

Perplexica 的架构由以下关键组件组成:

  1. 用户界面: 一个基于网页的界面,允许用户与 Perplexica 互动以搜索图像、视频等内容。
  2. 代理/链: 这些组件预测 Perplexica 的下一步动作,理解用户查询,并决定是否需要进行网络搜索。
  3. SearXNG: 一个用于网络搜索的元数据搜索引擎。
  4. 大型语言模型 (LLMs): 代理和链利用大型语言模型来执行任务,如理解内容、撰写回应和引用来源。例子包括 Claude、GPT 等。
  5. 嵌入模型: 为了提高搜索结果的准确性,嵌入模型使用相似性搜索算法(如余弦相似性和点积距离)对结果进行重新排序。

Perplexica 如何工作?

我们将通过一个用户询问 “空调是如何工作的?” 的示例来理解 Perplexica 的工作原理。我们将分步骤解释这个过程,以便更容易理解。步骤如下:

  1. 通过 WS 将消息发送到后台服务器,在那里它调用链。链将取决于您的焦点模式。在本例中,我们假设使用 “webSearch” 焦点模式。
    • 消息通过 web socket 发送
  2. 链现在被调用;首先,将消息传递到另一条链,在那里它首先预测(使用聊天记录和问题)是否需要来源和网络搜索。如果需要,它将生成一个查询(根据聊天记录)进行网络搜索,我们将在稍后讨论。如果不需要,链将在此结束,然后启动答案生成链,也称为响应生成器。
    • 这部分,也可以称为 query rewrite 或者 pre-llm
  3. 第一条链返回的查询被传递到 SearXNG 以搜索网络信息。
    • 传统搜索,这里使用 SearXNG
  4. 检索信息后,它基于关键词搜索。然后我们将信息和查询转换为嵌入,并进行相似性搜索,以找到最相关的来源来回答查询。
    • 传统搜索引擎返回信息较多,用 embedding model 进行相似性搜索
  5. 完成所有这些操作后,来源被传递给响应生成器。此链获取所有聊天记录、查询和来源,并生成一个响应,该响应会被流式传输到 UI。
    • 这里应该是调用 LLM ,传聊天记录,查询,来源,一起给 LLM ,然后 LLM 生成答案,流式传给 UI

答案如何引用?

LLMs 被提示这样做。我们提示它们很好地自行引用答案,并使用一些 UI 魔法将其显示给用户。

图片和视频搜索

图片和视频搜索以类似的方式进行。首先生成查询,然后我们在网上搜索与查询匹配的图片和视频。然后将这些结果返回给用户。


原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Perplexica 的架构
  • Perplexica 如何工作?
    • 答案如何引用?
      • 图片和视频搜索
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档