Flowise

image

Flowise AI 与 LangChain 框架结合使用

1- 简介

Flowise AI 是一个开源的可视化工具,旨在帮助用户轻松构建和管理基于大语言模型(LLM)的应用程序。

LangChain 是一个用于开发由语言模型驱动的应用程序的框架。

通过结合这两个工具,你可以快速构建强大的 AI 应用程序。

2- 安装和设置

2.1- 步骤 1:安装 Node.js

确保你已经安装了 Node.js(支持 Node v18.15.0 或 v20 及以上版本)。如果没有安装,可以从 Node.js 官方网站下载并安装。

2.2- 步骤 2:安装 Flowise

打开终端或命令提示符,输入以下命令安装 Flowise:

npx flowise

2.2.1- 理解组成部分

  • npx: 这是一个与 Node.js (npm) 捆绑在一起的软件包运行工具。它简化了执行 JavaScript 软件包的过程,而无需先全局安装它们。
  • flowise: 指的是 FlowiseAI 平台,这是一个强大的工具,用于可视化地构建和部署 LLM 驱动的应用程序。

npx flowise 的作用

当你运行此命令时,会发生以下情况:

  1. npx 检查本地安装:
    1. npx 首先检查 flowise 是否已安装在你项目的 node_modules 目录中。
  2. 如果未找到则下载:
    1. 如果在本地找不到,npx 将从 npm 注册表中获取最新版本的 flowise 软件包。
  3. 执行软件包:
    1. 然后,npx 执行 flowise 软件包的主脚本。这通常会触发 FlowiseAI 平台的本地开发服务器。
  4. 启动 Flowise 界面:
    1. 服务器启动后,你的 Web 浏览器应自动打开,并显示 Flowise 用户界面。此界面允许你直观地设计、构建和管理你的 LLM 应用程序。

2.2.2- 先决条件

要成功运行 npx flowise,你需要:

  • Node.js 和 npm: 确保你的系统上安装了 Node.js(其中包括 npm)。你可以通过在终端中运行 node -vnpm -v 来检查。
  • 互联网连接: 如果 flowise 软件包尚未安装,npx 需要下载它。

2.2.3- 典型用法

你通常会使用 npx flowise 来:

  • 开始开发新的 Flowise 应用程序:
    • 它会启动本地开发环境,你可以在其中开始创建应用程序的流程和逻辑。
  • 在本地测试和调试:
    • 本地服务器允许你在部署之前迭代和完善你的应用程序。

2.2.4- 示例

运行 npx flowise 后,你可能会在终端中看到类似以下内容的输出:

Starting Flowise...
Server is running on http://localhost:3002

这表示 Flowise 服务器正在运行,你可以在浏览器中提供的 URL 访问该界面。

2.3- 步骤 3:启动 Flowise

安装完成后,通过以下命令启动 Flowise:

npx flowise start

3- 创建和管理 ChatFlows

3.1- 步骤 1:选择模型

在 Flowise 的界面中,选择 OpenAI 的 GPT-4 或 GPT-4o 作为语言模型。

3.2- 步骤 2:添加组件

将“输入节点”、“处理节点”和“输出节点”拖放到工作区。

3.3- 步骤 3:配置组件

  • 输入节点:配置为接受用户输入的问题。
  • 处理节点:配置为使用 GPT-4 或 GPT-4o 模型生成回答。
  • 输出节点:配置为显示模型生成的回答。

3.4- 步骤 4:连接组件

将输入节点连接到处理节点,再将处理节点连接到输出节点。

4- 案例 1:构建一个简单的问答机器人

4.1- 步骤 1:创建 ChatFlow

  1. 选择模型:在 Flowise 的界面中,选择 OpenAI 的 GPT-4 或 GPT-4o 作为语言模型。
  2. 添加组件:将“输入节点”、“处理节点”和“输出节点”拖放到工作区。
  3. 配置组件:
    • 输入节点:配置为接受用户输入的问题。
    • 处理节点:配置为使用 GPT-4 或 GPT-4o 模型生成回答。
    • 输出节点:配置为显示模型生成的回答。
  4. 连接组件:将输入节点连接到处理节点,再将处理节点连接到输出节点。

4.2- 步骤 2:运行和测试

输入一个问题,例如“今天的天气怎么样?”,查看模型生成的回答。

5- 案例 2:基于文档的问答系统

5.1- 步骤 1:导入文档

将你要使用的文档(例如公司手册)导入到 Flowise 中。

5.2- 步骤 2:创建向量存储

使用 OpenAI 的嵌入模型将文档转换为向量,并存储在内存中。

5.3- 步骤 3:配置检索器

设置一个向量检索器,用于从向量存储中检索相关信息。

5.4- 步骤 4:连接 Chat 模型

将检索到的信息传递给 Chat 模型,生成回答。

6- 使用自定义代码

Flowise 允许用户在工作流中使用自定义代码来实现更复杂的功能。以下是一个简单的示例代码:

const fetch = require('node-fetch');
const url = 'https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41&current_weather=true';
const options = { method: 'GET', headers: { 'Content-Type': 'application/json' } };

try {
  const response = await fetch(url, options);
  const text = await response.text();
  return text;
} catch (error) {
  console.error(error);
  return '';
}

7- 图表示例

7.1- ChatFlow 图表

graph TD;
    A[输入节点] --> B[处理节点];
    B --> C[输出节点];

7.2- 向量存储和检索流程图

graph TD;
    A[导入文档] --> B[创建向量存储];
    B --> C[配置检索器];
    C --> D[连接 Chat 模型];
    D --> E[生成回答];