Dify介绍
Dify 是一个开源的 LLM 应用开发平台。其直观的界面结合了 AI 工作流、RAG 管道、Agent、模型管理、可观测性功能等,让您可以快速从原型到生产。以下是其核心功能列表:
1. 工作流: 在画布上构建和测试功能强大的 AI 工作流程,利用以下所有功能以及更多功能。
2. 全面的模型支持: 与数百种专有/开源 LLMs 以及数十种推理提供商和自托管解决方案无缝集成,涵盖 GPT、Mistral、Llama3 以及任何与 OpenAI API 兼容的模型。完整的支持模型提供商列表可在此处[1]找到。
3. Prompt IDE: 用于制作提示、比较模型性能以及向基于聊天的应用程序添加其他功能(如文本转语音)的直观界面。
4. RAG Pipeline: 广泛的 RAG 功能,涵盖从文档摄入到检索的所有内容,支持从 PDF、PPT 和其他常见文档格式中提取文本的开箱即用的支持。
5. Agent 智能体: 您可以基于 LLM 函数调用或 ReAct 定义 Agent,并为 Agent 添加预构建或自定义工具。Dify 为 AI Agent 提供了50多种内置工具,如谷歌搜索、DELL·E、Stable Diffusion 和 WolframAlpha 等。
6. LLMOps: 随时间监视和分析应用程序日志和性能。您可以根据生产数据和标注持续改进提示、数据集和模型。
7. 后端即服务: 所有 Dify 的功能都带有相应的 API,因此您可以轻松地将 Dify 集成到自己的业务逻辑中。
Dify架构图如下:
功能比较
功能 | Dify.AI | LangChain | Flowise | OpenAI Assistant API |
---|---|---|---|---|
编程方法 | API + 应用程序导向 | Python 代码 | 应用程序导向 | API 导向 |
支持的 LLMs | 丰富多样 | 丰富多样 | 丰富多样 | 仅限 OpenAI |
RAG引擎 | ✅ | ✅ | ✅ | ✅ |
Agent | ✅ | ✅ | ❌ | ✅ |
工作流 | ✅ | ❌ | ✅ | ❌ |
可观测性 | ✅ | ✅ | ❌ | ❌ |
企业功能(SSO/访问控制) | ✅ | ❌ | ❌ | ❌ |
本地部署 | ✅ | ✅ | ✅ | ❌ |
系统要求
CPU >= 2 Core RAM >= 4GB
如果你是MacOS系统的话,可以参考之前的文章准备一下本地的云环境:打造高效MacOS系统环境
本地部署
为了方便本地快速验证,这里使用Docker Compose 运行。在企业或者生产环境建议采用 K8S环境部署,Dify 依赖较多的中间件,如:weaviate、redis、postgres 等,这些中间件可以采用外部已部署的应用或者容器部署,但是需要注意数据的存储。
Docker Compose 部署
克隆Dify
项目并运行:
## 克隆dify项目 $ git clone git@github.com:langgenius/dify.git ## Docker Compose 运行 $ cd dify/docker/ $ docker-compose up -d
如果官方脚本运行不起来,可以参考我调整后的Github脚本:
$ git clone git@github.com:flyeric0212/eric-dify-docker.git $ cd eric-dify-docker $ docker-compose up -d
K8S 部署
使用Helm Chart 部署,在K8S环境部署Dify:
## Helm Chart by @LeoQuote https://github.com/douban/charts/tree/master/charts/dify ## Helm Chart by @BorisPolonsky https://github.com/BorisPolonsky/dify-helm
部署验证
使用浏览器打开如下地址:
http://localhost:8090/install
注意官方的是80端口,因为80端口本地被占用,所以调整成8090端口。
查看本地存储:
[20:25:18] dify $ docker volume ls DRIVER VOLUME NAME local 1b48b646f10961973a2abb9c885b965d7f54860dca7d7a4d42a531dc13d96b0d local 446e6dfa7f4d14c2aed281af1b772495af71698bdae62fcc9140dbc57ac0bd5a local dify_app-data local dify_postgres-data local dify_redis-data local dify_weaviate-data
这样可以随时本地关闭和启动 Dify
App,数据并不会丢失。
注册管理员账号:
登陆成功首页:
快速构建应用
先添加模型:chatgpt以及ollama模型
完成模型添加后:
使用模板快速使用创建一个 Code Interpreter
ChatBot 应用,先使用gpt-3.5-turbo
模型进行提问:
再切换到本地模型 ollama3:8b
提问:
添加知识库
选择本地数据源,支持非常多的文件格式,如:TXT、Markdown、PDF等。
文档分段和清洗:
存储到向量数据库:
基于知识库新建应用:
这次使用共新建了两个应用:
写在最后
Dify
可以切换几乎所有主流的模型,通过模板可以快速创建应用,添加各种类型的文档作为知识库,添加后端API等,相较于 LangChain
需要通过 Python 代码进行开发,Dify 开箱即用,对于大部分人来说更加的友好,最重要的可以进行私有化部署。
AI大模型学习路线
如果你对AI大模型入门感兴趣,那么你需要的话可以点击这里大模型重磅福利:入门进阶全套104G学习资源包免费分享!
扫描下方csdn官方合作二维码获取哦!
这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
100套AI大模型商业化落地方案
大模型全套视频教程
200本大模型PDF书籍
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
LLM面试题合集
大模型产品经理资源合集
大模型项目实战合集
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
