用Flowise轻松构建LLM应用程序
简介
什么是 Flowise ?
Flowise
是一个开源的图形化流程编排工具,利用大语言模型(LLM
)的强大能力,帮助用户可视化地设计、构建和管理复杂的AI
工作流。通过Flowise
,用户可以通过拖放界面轻松创建AI
驱动的应用和工作流,无需编写代码。它将复杂的AI
流程简化,让非技术用户也能快速上手。
项目特点
- 可视化编排:通过图形化界面设计和编排
AI
流程。 - 支持多种
LLM
:集成主流大语言模型,如OpenAI
的GPT
系列、Hugging Face
模型等。 - 模块化设计:提供丰富的模块,用户可以根据需求灵活组合。
- 低代码/无代码:无需编程经验,通过拖放操作即可创建
AI
应用。 - 本地部署:支持在本地或私有云环境中运行,确保数据安全。
- 开源免费:完全开源,允许用户自由定制和扩展。
应用场合
- 希望快速构建
AI
工作流但缺乏编程经验的用户。 - 需要设计复杂的
AI
流程并将其可视化的开发者和团队。 - 希望在本地或私有环境中部署
AI
工作流的企业。 - 需要集成大语言模型并与其他系统交互的应用场景。
准备工作
因为会用到大模型,所以需要提前准备。下面是可能会用上的模型和工具,请根据需要,选择性进行安装
文章传送门:
本次老苏使用的是 One API
管理的硅基流动的模型,现在注册送 2000
万 Tokens
,可以去官网注册一下,https://cloud.siliconflow.cn/i/NkUiXVhQ
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 flowise
,选择第一个 flowiseai/flowise
,版本选择 latest
。
第一次折腾时,
latest
版本介于1.6.5
和1.6.5
之间;
最近一次折腾时,
latest
版本介于2.2.4
和2.2.5
之间;
卷
在 docker
文件夹中,创建一个新文件夹 flowise
,并在其中建一个子文件夹 data
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/flowise/data |
/root/.flowise |
存放数据库等文件 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 |
---|---|
3112 |
3000 |
默认没有对外暴露端口
需要点 +
号自己添加
环境
可变 | 值 |
---|---|
PORT |
Flowise 运行的 HTTP 端口 |
FLOWISE_USERNAME |
登录用户名 |
FLOWISE_PASSWORD |
登录密码 |
DATABASE_PATH |
保存 SQLite 数据库的位置 |
APIKEY_PATH |
存储 API 密钥的位置 |
SECRETKEY_PATH |
保存加密密钥的本地文件路径 |
LOG_PATH |
存储日志文件的位置 |
BLOB_STORAGE_PATH |
存储上传文件的本地文件夹路径 |
更多环境变量,请参考官方文档:https://docs.flowiseai.com/configuration/environment-variables
命令行安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 flowise 和 子目录 |
docker-compose 安装
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3.1' |
然后执行下面的命令
1 | # 新建文件夹 flowise 和 子目录 |
运行
在浏览器中输入 http://群晖IP:3112
就能看到主界面
账号密码为我们在环境变量中设定的
FLOWISE_USERNAME
和FLOWISE_PASSWORD
对应的值;
登录成功后
Flowise
拥有非常丰富的模块和组件,可以方便的通过拖拽来创建一个应用。它无缝集成了包括提示工程、代理、链式逻辑、语义搜索、聊天模型、向量存储以及众多可分配给代理执行任务的工具在内的多种构建块
下面老苏以一个最简单的聊天作为一个实例,来说明 Flowis
的使用过程
构建示例
在 Chatflows
页面点右上角的 Add New
来创建一个新的流程
点 +
号,会看到各种组件
一个聊天流程,会用到最少三个组件,分别是:
Prompt Template
:提示词模版。用于定义与用户或系统交互时所使用的文本格式;ChatOpenAI Custom
:聊天模型。可以使用兼容OpenAI API
接口的第三方模型;LLM Chain
:链式模型。是将多个处理步骤串联起来的组件。它允许用户将多个模型或处理步骤组合在一起,以实现更复杂的逻辑和功能;
Chat Prompt Template
用搜索显然更简单快捷
拖入画布
为了有点特色,老苏在 lobechat
上找了个老中医的角色
System Message
:填入了从上面复制的提示词;Human Message
: 填入了{text}
ChatOpenAI Custom
接下来添加 ChatOpenAI Custom
拖入画布
单击 Connect Credential
下拉选框 –> Create New
Credential Name
:名字随意OpenAI Api Key
:这里填的是One API
中的令牌;
这是 One API
中的设置
模型名称用的就是 One API
中的模型名称
接下来点 Additional Parameters
,拉到最下面,在 BasePath
中填入 One API
的地址 http://192.168.0.197:3033/v1
LLM Chain
接下来添加 LLM Chain
将节点连接起来
开始聊天
保存之后,点 聊天
按钮
先确认一下身份
接下来就可以进行问诊了
提供 API
接口,方便二开和集成
参考文档
FlowiseAI/Flowise: Drag & drop UI to build your customized LLM flow
地址:https://github.com/FlowiseAI/FlowiseFlowiseAI - Build LLMs Apps Easily
地址:https://flowiseai.com/Flowise/README-ZH.md at main · FlowiseAI/Flowise
地址:https://github.com/FlowiseAI/Flowise/blob/main/README-ZH.mdWelcome to Flowise | FlowiseAI
地址:https://docs.flowiseai.com/