构建一个使用ElevenLabs和InfraNodus知识专家的语音AI聊天机器人
使用Graph RAG知识图谱设置ElevenLabs语音聊天代理
此工作流程创建了一个AI语音聊天机器人代理,可以同时访问多个知识库(用作“专家”)。
这些知识库通过InfraNodus GraphRAG提供,利用知识图谱并提供高质量的响应,而无需设置复杂的RAG矢量存储工作流程。
我们使用ElevenLabs来设置一个可以嵌入任何网站或通过其API使用的语音代理。
使用GraphRAG而不是标准矢量存储库获取知识的优势有:
- 易于快速设置(无需复杂的数据导入工作流程)并且可以轻松用新知识进行更新
- 知识图谱对您的知识库有一个整体的概览
- 更好地检索文档块之间的关系 = 更高质量的响应
- 能够在其他n8n工作流程中重用
它是如何工作的
此模板使用n8n的AI代理节点作为一个协调代理,根据用户的提示决定使用哪个工具(知识图)。
用户的提示通过n8n的Webhook从ElevenLabs对话AI代理接收,也负责语音交互。
n8n的响应随后发送到Webhook,ElevenLabs的语音代理会轮询Webhook。该代理处理响应并提供最终答案。
这是一个逐步的描述:
- 用户使用ElevenLabs语音界面提交一个问题
- 问题通过ElevenLabs中的
knowledge_base
工具发送到n8n Webhook,使用POST请求包含用户的prompt
和n8n中Chat Memory节点的sessionID
。 - n8n的AI代理节点检查它可以访问的工具列表。每个工具都有InfraNodus自动为其生成的知识描述(我们称每个工具为“专家”)。
- n8n的AI代理决定应使用哪个工具生成响应。它可能会重新表述用户的查询以更适合专家。
- 查询随后发送到InfraNodus HTTP节点端点,该节点端点会查询对应于该专家的图。
- 每个InfraNodus GraphRAG专家提供一个丰富的响应,考虑到整体背景并从每个专家(图)中提供响应,同时使用RAG和GraphRAG结合的方式检索相关陈述。
- n8n的AI代理节点整合来自专家的响应以生成最终答案。
- 最终答案发送回Webhook端点
- ElevenLabs对话AI代理通过webhook从
knowledge_base
工具中接收响应,然后将其简化为对话格式并将文本转化为语音。
如何使用
您需要一个InfraNodus GraphRAG API账户和密钥来使用此工作流。
- 创建一个InfraNodus账户
- 在https://infranodus.com/api-access获取API密钥并为InfraNodus HTTP节点创建Bearer授权密钥。
- 在InfraNodus中为每个专家创建一个单独的知识图(使用PDF/内容导入选项)
- 对于每个图,在工作流中,将图的名称粘贴到
body
name
字段。 - 保持其他设置不变或在InfraNodus访问点页了解更多关于它们的信息。
- 一旦你将一个或多个图作为专家添加到你的流程,向OpenAI节点添加LLM密钥并启动工作流
- 你还需要设置一个ElevenLabs账户并设置一个对话AI代理。在n8n工作流的后注中查看完整的分步骤描述,或者查看我们的关于设置ElevenLabs AI语音代理的支持文章
- 一旦语音AI代理准备就绪,你可能希望将其与文本AI聊天机器人工作流结合,这样用户就可以在文本和语音互动之间做出选择。在这种情况下,你可能会感兴趣我们的免费开源网站弹出式聊天组件popupchat.dev,你可以在这里创建一个嵌入代码,添加到你的博客或网站上,允许用户选择文本或语音互动。
要求
- 一个InfraNodus账户和API密钥
- 一个OpenAI(或其他LLM)API密钥
- 一个ElevenLabs账户
常见问题
1. 我应该瞄准多少个“专家”?
我们建议将专家的数量定为团队中最佳人数,通常是2-7人。如果您添加更多的专家,您的AI协调代理将难以选择最适合用户查询的“专家”工具。您可以通过在AI代理描述中指定它最多可以选择3-7个专家来提供响应来减轻这种情况。
2. 为何使用InfraNodus GraphRAG而不用标准矢量存储来获取知识?
首先,矢量存储库的设置和更新非常复杂。您需要为此设置一个单独的工作流程,决定矢量维度,为您的知识添加元数据,等等。
有了InfraNodus,您就拥有了一个完整的RAG/GraphRAG解决方案,它易于设置,并提供高质量的响应,这些响应将整体结构和您想法之间的关系纳入考虑。
3. 为什么不使用ElevenLabs自己的知识?
其中的一个原因是您希望您的知识库放在一个地方,这样您就可以在其他n8n工作流中重用它。另一个原因在于,当您与代理进行对话时,您不会在“专家”之间有很好的分离。所以,您获得的答案将是基于您上传的所有书籍/文章的最匹配项,而使用InfraNodus GraphRAG设置,您可以更好地控制哪些图被咨询作为专家,并有明确的方式来展示这些数据。
自定义此工作流
您可以使用此工作流与Telegram机器人,这样您可以通过Telegram与其互动。我们GitHub上的n8n工作流仓库中有更多的定制选项。
还请查看带有演示的视频教程: