使用Graph RAG知识图谱作为专家设置ElevenLabs语音聊天代理
该工作流程创建了一个AI语音聊天机器人代理,可以同时访问多个知识库(作为“专家”使用)。
这些知识库通过InfraNodus GraphRAG提供,利用知识图谱生成高质量响应,无需设置复杂的RAG向量存储工作流程。
我们使用ElevenLabs设置一个语音代理,可以嵌入到任何网站或通过其API使用。
使用GraphRAG而不是标准向量存储知识的优势包括:
- 设置简单快捷(无需复杂的数据导入工作流程),并可以轻松更新新知识
- 知识图谱可以全面了解您的知识库
- 更好地检索文档块之间的关系,从而提供更高质量的响应
- 可以在其他n8n工作流程中重复使用
工作原理
该模板使用n8n AI代理节点作为协调代理,根据用户提示决定使用哪个工具(知识图谱)。
用户的提示通过n8n Webhook从ElevenLabs对话AI代理接收,该Webhook还负责语音交互。
n8n的响应随后发送到Webhook,由ElevenLabs语音代理轮询。该代理处理响应并提供最终答案。
以下是逐步描述:
- 用户通过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访问点页面了解更多信息。
- 一旦您将一个或多个图谱作为专家添加到流程中,将LLM密钥添加到OpenAI节点并启动工作流程
- 您还需要设置一个ElevenLabs账户并在那里设置一个对话AI代理。有关完整的逐步描述,请参阅n8n工作流程中的Post说明或我们的支持文章关于设置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与之交互。在我们的n8n工作流程GitHub存储库中有更多自定义选项。
查看此工作流程的完整设置指南,请访问https://support.noduslabs.com/hc/en-us/articles/20318967066396-How-to-Build-a-Text-Voice-AI-Agent-Chatbot-with-n8n-Elevenlabs-and-InfraNodus
还可以查看视频教程和演示: