> ## Content Index
> Fetch the complete content index at: https://nigzu.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Dify VS FastGPT —— 两个出色的整合大模型应用的开源项目
- URL: https://nigzu.com/dify-vs-fastgpt-jian-suo-zeng-qiang-sheng-cheng-rag-ying-yong-dui-bi/
- Published: 2024-04-21T00:27:59.000Z
- Updated: 2024-08-04T06:14:03.000Z
- Author: 宁嘉
- Tags: 人工智障

在基于大语言模型 API 的生态上，有那么几种类型的应用解决不同的痛点：

1. 使用最广泛的是网页或软件在API上套壳，方便有网络障碍和弹性需要的用户；
2. 检索增强生成（RAG），适用于垂直和私有化数据领域；
3. 结合第三方软件，包括 SaaS 平台、本地工具，扩展模型的能力；
4. 低代码拖控件调度工作流，降低个性化定制的门槛；
5. 统一API接管，应对各家模型如雨后春笋般发布的场景。

而 [langgenius/dify](https://github.com/langgenius/dify?ref=nigzu.com) 和 [labring/FastGPT](https://github.com/labring/FastGPT?ref=nigzu.com) 将以上功能集于一身，是开源AI项目中的佼佼者，类似的项目还有 [Bisheng](https://github.com/dataelement/bisheng?ref=nigzu.com) 和 [TaskingAI](https://github.com/TaskingAI/TaskingAI?ref=nigzu.com)（国外的新起之秀）等。综合体验下来，我选择 Dify 和 FastGPT 的社区版作为其中代表进行比较， 这两个应用也是我使用最多的，在不同服务器上都部署过，以下评价并非严谨的测试，仅作为主观使用感受总结。

### 安装和运行环境：

|       | Dify                   | FastGPT                           | 对比                                      |
| ----- | ---------------------- | --------------------------------- | --------------------------------------- |
| 向量数据库 | weaviate、qdrant、milvus | pgvector                          | Dify支持更多底层数据库，并且支持在不同的数据库迁移数据           |
| 网关    | 前端接入厂商，少数厂商支持代理        | 后端可统一API代理，如OneAPI、NewAPI         | FastGPT可使用更好的模型管理底座                     |
| 资源消耗  | 3个应用容器，依赖4个底层服务        | 一个应用容器，依赖两个底层服务，1个可选的代理网关和本地模型    | FastGPT非工作模式下不超过1G，Dify消耗更多内存，日程占用2GB左右 |
| 配置    | 复杂的安装环境配置，简单的前端模型配置    | 简单的安装环境配置，繁琐的后端模型配置               | Dify前期配置难一些，初次部署容易出错；FatGPT需要对模型更熟悉     |
| 升级    | 一键升级，自动迁移              | 升级后需要单独命令行迁移数据库，重要版本更新可能还需要手动改表操作 | Dify完胜                                  |

综合这一环节，Dify对服务器硬件和网络环境有更高的要求，但具有运维时间成本优势。

### UI 体验：

|       | Dify                          | FastGPT                      | 对比                          |
| ----- | ----------------------------- | ---------------------------- | --------------------------- |
| 入口便捷性 | 应用入口多一步开始对话操作                 | 入口简单                         | FastGPT便捷                   |
| 操作灵敏度 | 网页打开慢，不跟手                     | 轻便                           | FastGPT性能占优                 |
| 信息展示  | 富文本展示简陋                       | Markdown渲染更鲜明                | FastGPT对话页观感更好              |
| 输入框   | 图片支持URL上传支持应用置顶生成的图片保存到服务器不丢失 | 支持对话条目删除、重新生成显示token消耗、响应时间等 | 在图片功能上Dify更方面，文本上FastGPT更方便 |
| 移动布局  | 手机上内容被样式块挤压严重                 | 合理的弹性元素控制                    | FastGPT更好的响应式布局             |
| 稳定性   | 偶尔延迟较高，长文本输出偶尔出错              | 目前没发现明显的BUG                  | FastGPT性能占优                 |
| 上手难度  | 丰富的文档                         | 缺乏功能说明                       | Dify对新手用户更友好                |

![](https://nigzu.com/file/dify+fastgpt%E2%80%94%E2%80%94phonechat.png)

综合这一环节，FastGPT在前端交互体验上更好用。

### 功能比较：

|         | Dify                                   | FastGPT        | 对比                                                |
| ------- | -------------------------------------- | -------------- | ------------------------------------------------- |
| 多租户     | 支持多用户（团队内数据透明），多团队                     | 单用户            | Dify适合团队，FastGPT只适合个人使用，当然考虑到其轻量，前端只需一个容器，可以一机多部署 |
| 脚本功能    | 支持本地沙盒，运行python和JavaScript脚本           | 不支持脚本          | Dify功能更强，不过FastGPT也可以用http调用外部脚本                  |
| 高级编排    | Workflow支持更多内置工具                       | 支持应用调用         | 两者的工作流编排都还比较简陋，调度非常不灵活，不支持模块复用、循环、变量引用等比较复杂的函数功能  |
| 调试功能    | 支持多模型同步调试、单节点调试、调试历史记录                 | 只能聊天框调试        | Dify工作流功能更强大                                      |
| 模型参数    | 支持更多模型参数设置                             | 只支持温度和tokens长度 | Dify自由度更高                                         |
| 其他社区版功能 | 版权和隐私政策声明，样式定制、内容审察，GitHub、Google注册和登录 | 无              | Dify对社区更友好                                        |

综合这一环节，Dify 预制的功能更多，不过考虑到这些功能还不够成熟或者可替代性强，在使用体验上还是UI交互影响更大。

### 兼容性和数据保护

|       | Dify                 | FastGPT                    | 对比                   |
| ----- | -------------------- | -------------------------- | -------------------- |
| 聊天导出  | 不支持聊天内容导出            | 支持html、markdown、pdf导出      | FastGPT胜             |
| 知识库导出 | 不支持知识库导出             | 支持知识库分段内容导出为csv            | FastGPT更友好，知识库分段是个细活 |
| 知识库分类 | 支持对文档进行元数据标注和分段关键字标注 | 支持文件夹管理和原始文档留档             | 各有好处                 |
| 应用导出  | DSL文件导出，与其他平台兼容性更好   | 自定义json，方便在不同fastgpt部署中导入  | Dify更方便              |
| 应用API | 自有格式                 | 和OpenAI的API格式兼容，方便接入其他聊天工具 | FastGPT更方便           |

综合这一环节，FastGPT社区版弥补了它只能单用户的缺陷。

### 项目前景

比较两者代码仓库的贡献历史，Dify是团队的作品，更重视产品的设计，而FastGPT几乎是个人独立开发，FastGPT早期快速迭代，更快的引入新功能，追求良好的性能；

![](https://nigzu.com/file/dify+fastgpt_contributions.png)

FastGPT早期全免费开源给用户，Github上的 start 数一度比Dify多，从4.0版开始才改了开源协议，转而对社区版做了功能限制，卖商业套件，而Dify团队致力于运营一个 SaaS 平台，社区版功能和平台版差别不大。  
Dify对第三方产品的接入持比较积极的态度，对个人和小团队用户更加友好，因而有一个良好的社区生态，而FastGPT对数据的导入导出更开放，并倾向于与自家的产品结合起来，例如Sealos、Laf。

在开发进度上，FastGPT早期积攒了一大波用户，但自从重心放在商业版之后开发放缓，而Dify稳步迭代，在功能上逐渐超越FastGPT。

另外个人感觉FastGPT在低代码开发工作流应用或插件的设计上更优秀，有点像面向对象的风格，支持应用为其他应用所调用、前端也可以直接使用插件、全局变量可随时访问和修改，以及参数设置更加灵活，包括在调用AI模块时通过引用前面变量的方式来传入模型选择和历史记录。而Dify的的优点是将很多热门工具和第三方API接口内置在系统组件中，对初级用户更友好。

总结，如果是普通用户，我更推荐Dify，如果具有一定的代码开发能力，我推荐FastGPT。