为什么可以将 OpenAI Embeddings 与 Anthropic Claude 模型一起使用?

问题描述 投票:0回答:1

我使用 Flowise 构建了一个 QnA 应用程序。

到目前为止,我将 ChatOpenAI 节点与 OpenAI Embeddings 一起使用。

今天,我想尝试 Anthropic Claude LLM,但找不到具体的 Anthropic Embeddings。因此,奇怪的是,我使用 OpenAI Embeddings 只是为了看看会发生什么。

我预计响应不起作用,或者完全是胡言乱语,因为我认为嵌入是特定于模型的?

但令人着迷的是我得到了完美的回应。

有人可以解释一下这是怎么可能的吗?我认为嵌入必须专门学习模型?我对嵌入的完整理解被打破了。

这是我的 Flowise 聊天流程:

编辑: 有没有可能,文档是由openai嵌入的,并且我的提示也是由openai嵌入的,以检索相似度最高的文本?然后短信和我的提示都传给了克劳德?

这是怎么回事?

artificial-intelligence openai-api langchain word-embedding large-language-model
1个回答
0
投票

有没有可能,这些文档是由openai嵌入的,而我的 openai 中还嵌入了提示,用于检索文本 相似度最高?然后文本和我的提示都通过了 克劳德?

你的假设是正确的。

您看到的是一个简单的“RAG”(=检索增强生成)架构,由两个步骤组成:

  1. 从文档数据库中查找与给定提示最相关的文档。
  2. 使用 LLM 生成问题的答案(提示),并在上一步中检索到其他相关上下文。

第一步中使用的数据库是使用嵌入模型(在您的例子中为 OpenAI)创建的,该模型将所有文档(由文本块组成)转换为向量。要查找相关文档,您的输入文本提示需要使用用于创建整个数据库的相同模型转换为向量。就您而言,这仍然是使用 OpenAI 完成的。然后执行简单的向量搜索,最相似的向量被认为是相关的。

第二步现在可以使用任何 LLM,因为输入中没有嵌入。最相关的文档在第一步中检索,并作为文本输入添加到提示中以提供额外的上下文。

可能让您感到困惑的是,在您将模型更改为 Claude 后,您的提示仍然被 OpenAI Embeddings 模型嵌入。从图表流程中尚不完全清楚,但您可以看到连接到

OpenAI Embeddings
卡的
Vector Store
卡仍在每个提示中使用,以检索我刚才描述的类似文档。

© www.soinside.com 2019 - 2024. All rights reserved.