使用 Qdrant 和 N8N 与代码库聊天
Anush Shetty
·2024 年 1 月 6 日

n8n(发音为 n-eight-n)可帮助您连接任何具有 API 的应用程序。然后,您可以通过少量或无需代码的方式操作其数据。借助 n8n 上的 Qdrant 节点,您可以可视化地构建由 AI 驱动的工作流。
让我们来了解一下构建工作流的过程。我们将构建一个与代码库聊天的服务。
先决条件
- 一个正在运行的 Qdrant 实例。如果需要,请使用我们的快速入门指南进行设置。
- 一个 OpenAI API 密钥。从您的账户对应的OpenAI API 页面检索您的密钥。
- 一个 GitHub 访问令牌。如果您需要生成一个,请从GitHub 个人访问令牌页面开始。
构建应用程序
我们的工作流有两个组成部分。请参考n8n 快速入门指南来熟悉工作流语义。
- 将 GitHub 仓库摄取到 Qdrant 的工作流
- 与已摄取文档进行聊天的服务工作流
工作流 1:将 GitHub 仓库摄取到 Qdrant
对于此工作流,我们将使用以下节点
Qdrant 向量存储 - 插入:使用Qdrant 凭据和集合名称进行配置。如果集合不存在,将自动创建具有适当配置的集合。
GitHub 文档加载器:配置 GitHub 访问令牌、仓库名称和分支。在此示例中,我们将使用qdrant/demo-food-discovery@main。
OpenAI 嵌入:使用 OpenAI 凭据和嵌入模型选项进行配置。我们使用text-embedding-ada-002 模型。
将工作流连接到手动触发器。单击“测试工作流”运行它。您应该能够实时看到数据从 GitHub 获取、转换为向量并加载到 Qdrant 的进度。
工作流 2:与已摄取文档进行聊天的服务
该工作流使用以下节点
Qdrant 向量存储 - 检索:使用Qdrant 凭据和工作流 1 中加载数据的集合名称进行配置。
检索问答链:使用默认值进行配置。
OpenAI 嵌入:使用 OpenAI 凭据和嵌入模型选项进行配置。我们使用text-embedding-ada-002 模型。
OpenAI 聊天模型:使用 OpenAI 凭据和聊天模型名称进行配置。我们在此演示中使用gpt-3.5-turbo。
配置完成后,点击“聊天”按钮启动聊天界面,开始与您的代码库对话。
要在您的应用程序中嵌入聊天功能,请考虑使用 @n8n/chat 包。此外,N8N 支持计划工作流,并且可以由各种应用程序中的事件触发。