开源精选 Flowise可视化低代码Agent开源
云
云铭
进化之路 · 扫码阅读
微信 · 浏览器扫码
在手机上获得更好的阅读体验
Flowise深度解析:拖拽式AI Agent构建器的开源标杆
如果说Dify是AI Agent的”macOS”——优雅但有一定学习曲线,那么Flowise就是”iOS”——拖拖拽拽,一个AI应用就出来了。
项目速览
| 维度 | 详情 |
|---|---|
| GitHub | FlowiseAI/Flowise |
| Stars | ~43K |
| 语言 | TypeScript |
| 许可证 | Apache 2.0 |
| 定位 | 开源低代码AI Agent构建器 |
核心体验:拖拽式Agent构建
一个简单的Agent流程
在Flowise中构建"智能客服Agent"的步骤:
1. 拖入 ChatOpenAI 节点 → 选择模型(如gpt-4-mini)
2. 拖入 Conversational Agent 节点
3. 拖入工具节点:
- SerpAPI(搜索)
- Read File(读文件)
- Calculator(计算)
4. 拖入 Buffer Memory 节点(记忆能力)
5. 连线,保存,点击Chat测试
耗时:5分钟
代码量:0行
节点类型全景
Flowise 节点生态
LLM节点:
├── ChatOpenAI / OpenAI
├── ChatAnthropic
├── ChatGoogleGenerativeAI
├── ChatOllama(本地模型)
├── ChatMistralAI
└── 自定义LLM(兼容OpenAI API格式)
Agent节点:
├── Conversational Agent(对话型)
├── ReAct Agent(推理+行动)
├── Function Calling Agent
├── OpenAI Tool Agent
├── Plan and Execute Agent(先计划再执行)
└── Multi-Agent(多Agent协作)
工具节点:
├── 搜索:SerpAPI, Google Custom Search
├── 文件:Read/Write File
├── 数据:Calculator, CSV处理
├── 网络:HTTP Request, Web Scraper
├── 向量:向量存储(Pinecone, Chroma, Qdrant)
└── 自定义工具(写少量JS代码)
记忆节点:
├── Buffer Memory(滑动窗口)
├── Buffer Window Memory
├── Conversation Summary Memory
├── Vector Store Memory
└── Zep Memory(持久化记忆服务)
链节点:
├── LLM Chain
├── Conversation Chain
├── Retrieval QA Chain
├── SQL Chain
└── API Chain
实战:构建一个完整的AI应用
场景:构建”GitHub项目分析师”
Step 1: 创建知识检索管道
[Document Loader: Github Repo]
↓
[Text Splitter: Recursive Character]
↓
[Embeddings: OpenAI]
↓
[Vector Store: Pinecone]
Step 2: 创建对话Agent
[ChatOpenAI] ──→ [Conversational Agent]
↓
┌───────────┼───────────┐
↓ ↓ ↓
[Pinecone [Calculator] [SerpAPI]
Retriever] (联网搜索)
↓
[Buffer Memory]
Step 3: 嵌入Web应用
<!-- Flowise生成的嵌入代码 -->
<script type="module">
import Chatbot from "https://cdn.jsdelivr.net/npm/flowise-embed/web.js"
Chatbot.init({
chatflowid: "abc123",
apiHost: "http://localhost:3000",
theme: {
primaryColor: "#6366f1",
fontSize: "14px",
}
})
</script>
或通过API调用:
curl http://localhost:3000/api/v1/prediction/abc123 \
-H "Content-Type: application/json" \
-d '{"question": "这个项目的架构是怎样的?有哪些主要模块?"}'
Flowise vs Dify
| 维度 | Flowise | Dify |
|---|---|---|
| 上手难度 | ⭐ 极低(拖拽) | ⭐⭐ 低 |
| 节点丰富度 | 高(基于LangChain) | 中 |
| RAG能力 | 基础的 | 强大的 |
| 生产就绪度 | 中 | 高 |
| 企业功能 | 基础版 | 完善(SSO/RBAC/审计) |
| 自定义扩展 | 自定义节点开发 | 代码节点+插件 |
| 社区生态 | 节点市场 | Prompt市场 |
| 最佳场景 | 快速原型、个人项目 | 企业级AI应用 |
| UI美观度 | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
自定义节点
Flowise的核心可扩展性来源:
// 创建自定义节点
const { INode, NodeConfig, NodeInput, NodeOutput } = require('flowise-components')
class CustomDataAnalyzer extends INode {
// 节点配置(用户可调整的参数)
config = {
analysisType: new NodeConfig({
type: 'options',
options: ['summary', 'trend', 'anomaly', 'full'],
default: 'summary',
label: '分析类型'
}),
language: new NodeConfig({
type: 'options',
options: ['中文', 'English'],
default: '中文',
label: '输出语言'
})
}
// 输入定义
inputs = [
new NodeInput('数据', 'json'),
new NodeInput('分析提示', 'string')
]
// 输出定义
outputs = [
new NodeOutput('分析结果', 'string'),
new NodeOutput('图表数据', 'json')
]
// 核心逻辑
async run(nodeData, inputData) {
const data = inputData['数据']
const prompt = inputData['分析提示']
// 调用LLM分析
const analysis = await this.callLLM(`
分析以下数据:${JSON.stringify(data)}
分析类型:${this.config.analysisType}
用${this.config.language}输出
${prompt ? `额外要求:${prompt}` : ''}
`)
return {
'分析结果': analysis.text,
'图表数据': analysis.charts
}
}
}
module.exports = { nodeClass: CustomDataAnalyzer }
部署选项
Flowise部署路径:
本地开发:
npx flowise start
→ http://localhost:3000
Docker部署:
docker run -d -p 3000:3000 flowiseai/flowise
云部署:
├── Railway(一键部署)
├── Render(免费层可用)
├── Replit(快速原型)
└── AWS/GCP/Azure(生产部署)
Flowise Cloud:
托管服务,$30/月起,免运维
最佳使用场景
✅ Flowise最适合:
├── 快速验证AI应用想法(5分钟出原型)
├── 个人和小团队使用
├── 教学和演示
├── 非技术人员构建AI工具
├── 内部小工具开发
└── 学习和理解LangChain概念
❌ 不适合:
├── 大规模企业部署(用Dify)
├── 复杂的自定义Agent逻辑(用LangChain)
├── 需要精细权限管理的场景
└── 高并发生产服务(需要额外优化)
Flowise是”降低AI开发门槛”理念的最佳体现。它把LangChain的复杂性包装在拖拽式界面里,让产品经理、数据分析师甚至非技术人员也能搭建自己的AI Agent。虽然企业级能力不如Dify,但它的极简体验让它成为”验证一个AI想法”的最快方式。如果你有一个AI应用的想法想快速试试——先别写代码,打开Flowise拖一拖。