TLDR
-
如果您需要一个简单、固定的需求,随便选用一个适合的编程语言调用 LLM API 即可
-
如果您是正在学习 AI 的开发人员,能自己实现就自己实现,框架会变,底层原理不变
-
注重流程与扩展选 Dify
-
注重知识库选 RAGFlow
-
注重易用性和企业级部署选 MaxKB
一、背景
市面上目前工作流平台分为几种形式,一种是以 Coze 为代表的商业产品,其基于网页的工作流形式,另一种以 Langchain 与 LlamaIndex 为主的基于代码框架的形式。
这些形式各有千秋,针对不同的技术与框架,我们需要根据自己的业务进行合理的判断,每一种场景、每一种业务、每一种使用的客户都会产生不同的答案。
本文从多个角度,针对开源软件 Dify、FastGPT、RAGFlow、MaxKB 这类基于 WebUI 的工作流平台,进行全面对比,帮助您选择最适合自己需求的 AI 流程平台。
先对比下 Github Star 数量 🌟
二、测评维度
作为一个 LLMOps 平台,包含几个基本的模块,我们将从以下维度进行比较:
测评维度
-
团队人员管理
-
模型管理
-
第三方工具
-
知识库管理
-
应用管理
- 对话管理
- 应用类型
-
开源协议与功能对比
-
部署难度
-
社区支持与生态
三、测评产品版本
-
Dify v1.0.0
-
FastGPT v4.8.20
-
RAGFlow v0.17.0 slim
-
MaxKB v1.10.2-lts
四、详细测评
4.1 团队人员管理
作为团队使用的平台,我们需要考虑人员管理的一些需求。
主要考虑两个方向:
-
工作空间
-
权限管理
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
空间数量 | 1 个 | 无空间 | 多个支持邀请制 | 支持多团队空间(X-Pack) |
角色 | 管理员、编辑、成员 | 无 | 管理员、成员 | 管理员、普通用户 |
加入多个团队 | 否 | 否 | 是 | 是(X-Pack) |
商业版 | 支持 | 支持 | - | 支持 |
LDAP 集成 | 支持 | 不支持 | 不支持 | 支持(X-Pack) |
推荐值 | 🌟🌟 | 🌟 | 🌟🌟 | 🌟🌟🌟 |
4.2 模型管理
作为一个 LLMOps 平台,模型管理的完备性是非常重要的功能,需要考量三个方面:支持的平台数量、支持的模型类型以及可扩展性。
第一点保证了能够方便对接各类平台;
第二点保证在模型不断变化的情况下,包括文本模型、视觉模型等都能方便接入;
第三点是否方便用户接入自定义或者其他平台的模型。
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
模型供应商 | 56 | 20 | 44 | 15+ |
OpenAI 兼容格式 | 支持 | 支持 | 支持 | 支持 |
扩展接入 | 强,自定义插件 | 中,自定义配置 | 弱,不能自定义配置 | 中,支持配置文件方式 |
支持模型类型 | Text Generation、Image Generation、Vision、Audio Generation、Text Embedding、Speech2text、TTS、Rerank、Moderation | Text Generation、Vision、Text Embedding、Speech2text、TTS、Rerank | Text Generation、Vision、Text Embedding、Rerank、Moderation | Text Generation、Vision、Text Embedding、Rerank |
本地模型支持 | 支持 | 支持 | 支持 | 支持(Ollama、Llama3、Qwen2 等) |
国内模型支持 | 支持 | 支持 | 支持 | 支持(通义千问、智谱 AI、百度千帆、Kimi、DeepSeek 等) |
缺点 | 负载均衡需要企业版、一个模型名称只能部署一个服务 | 管理页面有点混乱 | 不支持在提供商上增加模型、一个平台只支持一个 key | 模型管理界面较简单 |
特点 | 支持自己编写插件对接各类模型服务 | 支持配置文件方式、可以设置别名 | - | 支持公用/私有权限设置 |
推荐值 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
4.3 第三方工具
一个平台如果无法很好地调用第三方工具,就无法实现良好的扩展性,随着业务的不断发展,会越来越无法支撑。第三方工具方面需要考虑两个比较重要的点:
-
自带工具的丰富度
-
工具扩展的难度与灵活度
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
自带工具数量 | 工具:40、Agent 策略:2、扩展:6 | 系统插件:15 | 工具:21 | 工具:10+ |
特色工具 | database 连接、Json 处理、ECharts 图表生成 | 数据库连接、飞书/钉钉集成、BI 图表 | 谷歌学术 | 数据库连接、浮窗模式、自定义对话框 |
扩展 | API 扩展、支持插件开发 | 无 | 无 | 支持系统 API(X-Pack) |
插件类型 | 模型、工具、Agent 策略、扩展 | 无 | 无 | 无 |
自定义 | 基于 OpenAPI-Swagger 创建接口、基于工作流转换为工具 | 无 | 无 | 支持工作流编排 |
兼容实现 | HTTP 请求 | HTTP 请求 | 无 | HTTP 请求 |
推荐值 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
4.4 知识库
知识库是 RAG 技术的一个关键落地场景,针对知识库,需要从以下维度进行考虑:
-
导入阶段:
- 考虑支持的格式是否丰富
- 导入的方式:如网页、文本、接口
- ETL 数据清洗流程是否准确
-
创建阶段: 手动或自动构建知识库。
-
召回阶段: 检索相关信息的效率和准确性。
-
权限设置: 控制谁可以访问或编辑知识库。
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
导入阶段:支持格式 | TXT、MARKDOWN、MDX、PDF、HTML、XLSX、XLS、DOCX、CSV、MD、HTM | TXT、DOCX、CSV、XLSX、PDF、MD、HTML、PPTX | Word、PPT、Excel、TXT、PDF、HTML | Markdown、TXT、PDF、DOCX、HTML、Excel、CSV |
导入阶段:导入方式 | 文本、Notion、Web 站点、API 接口 | 文本、API、Web 网站、飞书、语雀 | 文本、网页 | 文本上传、网页爬取、API 接口 |
导入阶段:清洗方式 | Dify ETL、Unstructured ETL | 自带 | DeepDoc、简易、大模型 | 智能分段、高级分段、自动清洗 |
创建阶段:分段设置 | 通用文本分块模式、父子模式(子块用于检索,父块用作上下文) | 直接分段、问题拆分 | 自动创建关键词、自动创建问题 | 智能分段、高级分段(支持自定义分段标识符) |
创建阶段:索引方式 | 高质量:Text-Embedding、经济:关键词 | Text-Embedding | 召回增强 RAPTOR 策略、知识图谱 | Text-Embedding、支持选择不同向量模型 |
召回阶段:检索设置 | 向量搜索、全文搜索、混合搜索 | 向量搜索、全文搜索、混合搜索 | 搜索 | 向量检索、全文检索、混合检索 |
召回阶段:rerank | 支持 rerank 模型 | 支持 rerank 模型、支持大模型理解 | 支持 rerank 模型 | 支持相似度调整 |
召回测试 | 支持多种召回测试 | 支持多种召回测试 | 知识图谱 | 支持预览测试 |
团队管理 | 支持个人、支持团队、支持部分成员 | 商业版功能 | 支持个人、支持团队 | 支持个人、支持团队(X-Pack) |
特色功能 | 引用归属 | 问题拆分 | 知识图谱 | 分段标题设置为关联问题 |
推荐值 | 🌟🌟 | 🌟 | 🌟🌟🌟 | 🌟🌟🌟 |
4.5 应用管理
应用是 LLMOps 平台的核心,所有的业务都是围绕应用进行开展,通过应用连接了模型、工具调用、Agent 等一系列工作。
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
应用类型 | 聊天助手、Agent、文本生成应用、Chatflow、工作流 | 简单聊天、工作流聊天 | 聊天、Agent | 简易配置应用、高级编排应用 |
应用功能 | 对话开场白、下一步问题引导、文字转语音、文件上传、引用与归属、内容审查 | 文件上传、语音播放、语音输入、猜你想问、定时执行、自动执行、输入引导、对话开场白 | - | 对话开场白、快捷问题、自定义 AI 头像、浮窗模式、历史记录显示控制 |
变量 | 环境变量、会话变量 | 全局变量 | 无 | 支持变量 |
工作流支持功能 | 基础功能:LLM、知识检索、直接回复 Agent:问题理解、问题分类器 逻辑:条件分支、迭代 转换:代码执行、模板转换、变量聚合器、文档提取器、变量赋值、参数提取器 工具:HTTP 请求、列表操作、工作流、API 接口 |
基础功能:AI 对话、知识库搜索、问题分类、文本内容提取 工具箱:工具调用、交互、用户选择、表单输入、工具、文本拼接、指定回复、文档解析、HTTP 请求、判断器、变量更新、代码运行、批量执行 AI 能力:知识库搜索引用合并、问题优化、Laf 函数调用、自定义反馈 |
知识检索、生成回答、对话、问题分类、静态消息、问题优化、关键词、条件、集线器、模板转换、循环、注释 | 节点类型:开始、AI 对话、知识库搜索、问题分类、条件判断、指定回复、HTTP 请求、变量更新、代码执行、结束 |
工作流特点 | 迭代并发模式、错误响应、节点并行 | 批量执行、AI 模型支持变量引用 | - | 可视化编排、支持快捷问题输出 |
是否支持扩展 | 支持 | 支持贡献插件 | 不支持 | 支持系统 API(X-Pack) |
导入导出 | 支持 | 不支持 | 支持 | 支持 |
测试历史 | 支持 | 支持 | - | 支持 |
发布渠道 | Web 应用、API 接口、嵌入网站 | Web 网页、API 接口、飞书机器人、钉钉机器人、微信公众号接入 | 嵌入网站 | Web 应用、API 接口、嵌入网站、浮窗模式 |
日志与标注 | 支持详细调用日志、针对问答可以进行标注 | 支持详细调用日志、针对问答可以进行标注 | 无 | 支持对话日志、用户反馈 |
监测 | 7 大维度分析 | 不支持 | - | 基础使用统计 |
特色功能 | 错误响应 | 自动执行、定时任务 | 搜索 | 浮窗模式、可拖拽对话框 |
推荐值 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
在应用管理方面,Dify 的功能最为全面,无论是编排方式、错误处理还是未来的扩展性,都处于领先地位。并且搭配了丰富的日志,方便后续的追踪。Dify 还可以搭配 LangSmith、Langfuse、Opik 进行 LLM 应用的生命周期监控。
4.6 开源协议
开源协议是商业公司在使用时特别关注的部分,下面针对各个工作流平台进行协议对比,看哪个框架更适合企业使用。
产品 | 协议 |
---|---|
Dify | Dify 可以用于商业用途,包括作为其他应用程序的后端服务或企业应用开发平台。不能使用 Dify 源代码来运营多租户环境。 |
FastGPT | FastGPT 可以用于商业化用途,包括作为”后端即服务”为其他应用程序提供服务,或作为应用开发平台交付给企业。不能使用 FastGPT.AI 源代码运营与 FastGPT 类似的多租户 SaaS 服务。 |
RAGFlow | 允许复制、修改、公开显示、公开表演、分许可和分发作品及其衍生作品。 |
MaxKB | 开源社区版可用于商业用途,但有功能限制(1 个团队成员,5 个应用,50 个知识库)。X-Pack 版本需要商业授权。 |
4.7 部署难度
一个平台的功能是一方面,部署难度和依赖的技术栈也需要考量。下面总结各平台的部署难度与依赖。
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
Docker 部署 | 支持 | 支持 | 支持 | 支持 |
一键部署 | 支持 | 支持 | 支持 | 支持(1Panel 一键安装) |
技术栈 | Python Flask、NextJS、PostgreSQL、Qdrant、Redis、Unstructured、Sandbox、Plugin Demon | PG Vector、MongoDB、Sandbox、MySQL、FastGPT | ES、MySQL、MinIO、Redis | Python/Django、Vue.js、PostgreSQL/pgvector、Logicflow |
部署复杂度 | 中等 | 中等 | 中等 | 低 |
资源需求 | 中等 | 中等 | 中等 | 低(推荐 2C/4GB) |
离线部署支持 | 支持 | 支持 | 支持 | 支持 |
推荐值 | 🌟🌟 | 🌟🌟 | 🌟🌟 | 🌟🌟🌟 |
4.8 社区支持与生态
社区支持和生态系统对于平台的长期发展至关重要,下面对比各平台在这方面的表现。
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
GitHub Stars | 高 | 中 | 低 | 新项目,增长中 |
社区活跃度 | 高 | 中 | 低 | 中 |
文档完善度 | 高 | 中 | 中 | 高 |
更新频率 | 高 | 高 | 中 | 高 |
商业支持 | 有 | 有 | 有 | 有(飞致云) |
生态集成 | 丰富(支持多种第三方工具和监控平台集成) | 中等(支持飞书、钉钉等国内平台集成) | 基础 | 中等(支持 LDAP、自定义主题等企业级功能) |
推荐值 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
五、汇总
维度 | Dify | FastGPT | RAGFlow | MaxKB |
---|---|---|---|---|
团队人员管理 | 🌟🌟 | 🌟 | 🌟🌟 | 🌟🌟🌟 |
模型管理 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
第三方工具 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
知识库 | 🌟🌟 | 🌟 | 🌟🌟🌟 | 🌟🌟🌟 |
应用管理 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
部署难度 | 🌟🌟 | 🌟🌟 | 🌟🌟 | 🌟🌟🌟 |
社区支持与生态 | 🌟🌟🌟 | 🌟🌟 | 🌟 | 🌟🌟 |
综合评分 | 🌟🌟🌟 | 🌟🌟 | 🌟🌟 | 🌟🌟🌟 |
六、选择建议
根据不同需求场景,我们提供以下选择建议:
-
企业级应用场景:
- 如果需要强大的工作流和扩展能力,选择 Dify
- 如果注重易用性和快速部署,选择 MaxKB
- 如果需要深度的知识库功能,选择 RAGFlow 或 MaxKB
- 开发者场景:
- 如果需要高度定制化和开发灵活性,选择 Dify
- 如果需要快速构建原型,选择 FastGPT 或 MaxKB
- 特定功能需求:
- 需要强大的 Agent 功能:Dify
- 需要优秀的知识图谱:RAGFlow
- 需要企业级集成(LDAP 等):MaxKB
- 需要定时任务:FastGPT