Dify: 一款宝藏大模型开发平台: 部署及基础使用

本文涉及的产品
.cn 域名,1个 12个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: Dify 是一款开源的大语言模型(LLM)应用开发平台,融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使非技术人员也能参与 AI 应用的定义和数据运营。计算巢提供了 Dify 的快速部署解决方案,包括单机版和高可用版,支持通过 Docker Compose 和阿里云 ACK 部署,适用于开发测试和生产环境。用户可以通过配置 API、WebApp 脚手架等轻松集成 Dify 到业务中,极大简化了大语言模型应用的开发流程。

为什么会有Dify?

近年来大规模语言模型的崛起,带来了一个新兴的概念LLMOps(Large Language Model Operations),LLMOps是一个涵盖了大型语言模型(如GPT系列)开发、部署、维护和优化的一整套实践和流程。

LLMOps 的目标是确保高效、可扩展和安全地使用这些强大的 AI 模型来构建和运行实际应用程序。它涉及到模型训练、部署、监控、更新、安全性和合规性等方面。

用一句话描述,LLMOps有助于提升大语言模型在实际应用中的效率和表现。在众多的LLMOps应用中,有一款在Github上拥有54.9K Star的开源项目备受欢迎,这就是Dify, 官方给出的表述如下:

Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中。

Dify 一词源自 Define + Modify,意指定义并且持续的改进你的 AI 应用,它是为你而做的(Do it for you)。

使用Dify LLMOps 平台后会有什么效果

步骤

未使用LLMOps平台

使用Dify LLMOps平台

时间差异

开发应用前&后端

集成和封装 LLM 能力,花费较多时间开发前端应用

直接使用 Dify 的后端服务,可基于 WebApp 脚手架开发

-80%

Prompt Engineering

仅能通过调用 API 或 Playground 进行

结合用户输入数据所见即所得完成调试

-25%

数据准备与嵌入

编写代码实现长文本数据处理、嵌入

在平台上传文本或绑定数据源即可

-25%

应用日志与分析

编写代码记录日志,访问数据库查看

平台提供实时日志与分析

-70%

数据分析与微调

技术人员进行数据管理和创建微调队列

非技术人员可协同,可视化模型调整

-60%

AI 插件开发与集成

编写代码创建、集成 AI 插件

平台提供可视化工具创建、集成插件能力

-50%

在使用 LLMOps 平台如 Dify 之前,基于 LLM 开发应用的过程可能会非常繁琐和耗时。开发者需要自行处理各个阶段的任务,这可能导致效率低下、难以扩展和安全性问题。引入 Dify 这样的 LLMOps 平台后,基于 LLM 开发应用的过程将变得更加高效、可扩展和安全。

Dify的竞争力在哪里

在LLMOps领域,Dify是业界内备受关注的一款产品,作为一款开源项目在Github中拥有56.5K的Star, 那Dify的竞争力究竟在哪里?

  • 工作流 : Dify 支持在可视化的画布上快速构建出一个可以执行自动化任务的 AI 应用;
  • 支持大多数市面上流行的 AI 模型 :包括 ChatGPT、Mistral、Llama3 以及通义千问等;

  • 直观简洁的Prompt IDE可以用于制作提示、比较模型性能以及向基于聊天的应用程序添加文本转语音等附加功能;
  • RAG 功能广泛的RAG功能,涵盖从文档摄取到检索的所有内容,并支持从PDF、PPT和其他常见文档格式中提取文本。
  • 代理功能:Dify 内置了 50 多个工具 ,例如 Google Search、DELL·E、Stable Diffusion 和 WolframAlpha,也可以自定义工具。可以基于LLM函数调用或ReAct定义代理,并为代理添加预构建或自定义工具
  • LLMOps :支持监控和分析应用程序日志和性能。可以根据生产数据和注释不断改进提示、数据集和模型监控和分析应用程序日志和性能;
  • 后端即服务:Dify 的所有产品 都附带相应的 API ,因此我们也可以很轻松地将 Dify 集成到自己的业务中去。

如何快速部署Dify

计算巢提供了快速部署Dify的解决方案,有单机版和高可用版两种方案,单机版通过Docker Compose快速部署Dify, 此种部署方式不具备高可用、可伸缩的特性,不适合生产环境下使用,推荐用于开发测试。高可用版提供了部署Dify的最佳实践,基于阿里云ACK部署的Dify支持高可用、弹性伸缩等能力,且同时支持集成云数据库, 可以实现Dify稳定、高性能部署,推荐用于生产环境。这里主要介绍部署高可用版的详细步骤:

  • 提示填写部署参数: 模板选择"高可用版",配置Kubernetes, 如果想使用已有的ACK集群,需要选择ACK集群Id,为了提高部署成功率和稳定性,推荐使用新建容器集群,如果选择已有ACK,最后需要手动进行服务访问配置。 若选择"新建容器集群",需要配置节点规格、节点密码等。
  • 配置Postgres数据库,可以选择开源的Postgres,也可以选择阿里云的云数据库Postgres,如果选择新建云数据库,需要进行相关配置
  • 配置Reids数据库,可以选择开源的redis,也可以选择阿里云的云数据库Postgres,如果选择新建云数据库,需要进行相关配置
  • 配置向量数据库,可以选择开源的Weaviate,也可以选择阿里云的AnalyticDB数据库,如果选择新建云数据库,需要进行相关配置,注意这里需要填写AK/SK信息用于访问AnalyticDB, 建议使用Ram子账号的AK/SK,Ram子账号需要配置AliyunGPDBFullAccess权限。

  • 配置网络参数,可以选择新建专有网络, 也可以选择已有专有网络,选择两个可用区,提高服务可用性。
  • 进行服务相关配置,如果您有可用的域名,可填写您自己的域名,否则默认使用计算巢提供的测试域名,测试域名需要绑定host后使用,否则无法访问。 如果需要开启TLS配置,需要上传TLS证书 建议开启高可用配置,开启后可以提高应用的容灾能力和对峰值负载的处理能力。Helm配置推荐保持默认,部署成功后可修改Helm配置。

  • 数据填写完成后可以看到对应询价明细,确认参数后点击下一步:确认订单。 确认订单完成后同意服务协议并点击立即创建 进入部署阶段。
  • 等待部署完成后就可以开始使用服务,进入服务实例详情可查看使用说明和Dify访问页面,若选择新建ACK集群,需要按照使用说明的提示绑定host或配置解析后使用。

如果选择已有ACK集群进行部署,为了避免对您已有集群的访问配置产生影响,需要手动配置访问入口, 推荐两种方式

  1. 方式一: 通过负载均衡访问,按照如下步骤进行配置 配置完成后,您会看到ack-dify服务的外部IP地址(External IP),将该外部IP地址输入浏览器地址栏即可访问Dify服务。
  2. 方式二: 通过配置Ingress访问,按照如下步骤进行配置 首先集群中安装Nginx Ingress Controller组件,再配置相关路由,按照如下步骤配置 配置完成后,您会看到Ingress的端点,将此端点对域名绑定host或配置解析后,即可通过域名访问Dify。

如何更新 Dify 版本

Dify 版本不断迭代,如果已经部署的 Dify 想升级新版本,可以在计算巢控制台“修改配置”来更新 Helm 的配置

修改其中 api 和 web 的版本号,可实现 Dify 版本的更新,注意:一定是有效的版本号。

如何使用Dify

访问Dify地址,设置管理员账号密码后即可以登录使用。

这里快速构建一个聊天应用来介绍如何使用Dify:

  • 模型配置点击头像,选择设置,弹出设置对话框,点击模型供应商,即可以配置访问模型的API Key,这里以通义千问为例

  • 创建应用:Dify支持聊天助手、文本生成应用、Agent、工作流4种类型应用,这里创建一个聊天应用

建一个空白应用,在应用里面就可以选择模型,可以设置机器人的提示词、变量等

  • 配置知识库:Dify 也 支持创建知识库 ,点击页面顶部的知识库 Tab,在对应的页面按照以下步骤创建一个新的知识库

我们还可以将知识库接入到刚刚创建好的应用中去,回答的结果引用我们知识库中的内容。

  • 发布使用:应用创建并编排好之后,点击右上角的发布按钮进行发布

除此之外 Dify 还额外提供了三个功能给我们,分别是:

  • 运行 :会打开一个新的页面,页面 url 地址是 dify 为这个应用生成的一个唯一的 url 链接;
  • 嵌入网站 :就是提供三种嵌入方式: 以 iframe 的形式将 AI 应用集成到自己的网站中去通过 script 脚本的方式将一段代码 copy 到网站代码中以及通过浏览器插件的形式来集成
  • 访问 API :提供接口的形式,将 AI 应用接入到其他的产品中。

以上就是 Dify 的部署及基础使用。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
2月前
|
人工智能 并行计算 安全
从零到一,打造专属AI王国!大模型私有化部署全攻略,手把手教你搭建、优化与安全设置
【10月更文挑战第24天】本文详细介绍从零开始的大模型私有化部署流程,涵盖需求分析、环境搭建、模型准备、模型部署、性能优化和安全设置六个关键步骤,并提供相应的示例代码,确保企业能够高效、安全地将大型AI模型部署在本地或私有云上。
726 7
|
人工智能 Linux API
LangChain开发环境准备-AI大模型私有部署的技术指南
今天开始小智将开启系列AI应用开发课程,主要基于LangChain框架基于实战项目手把手教大家如何将AI这一新时代的基础设施应用到自己开发应用中来。欢迎大家持续关注
861 0
|
3天前
|
JavaScript 关系型数据库 数据库
探索Wiki:开源知识管理平台及其私有化部署
在信息时代,知识管理至关重要。本文介绍一款GitHub上的开源工具——Wiki,基于Node.js和Vue.js开发,旨在提供高效的知识管理解决方案。它具备简洁界面、权限管理、多语言支持及高度可定制等特点,适合团队协作。通过Docker-compose私有化部署,用户可轻松搭建专属知识库,保障数据安全。访问[GitHub](https://github.com/requarks/wiki)获取更多信息。
28 7
|
3月前
|
人工智能 自然语言处理 搜索推荐
【通义】AI视界|微软Copilot Studio推出新功能,帮助企业更便捷地构建和部署AI代理
本文介绍了近期科技领域的五大重要动态:马斯克旗下xAI发布首个API,苹果内部研究显示ChatGPT比Siri准确率高25%,微软Copilot Studio推出新功能,霍尼韦尔与谷歌合作引入Gemini AI,浑水创始人建议买入科技七巨头股票。更多资讯请访问【通义】。
|
5月前
|
存储 人工智能 自然语言处理
无缝融入,即刻智能[二]:Dify-LLM平台(聊天智能助手、AI工作流)快速使用指南,42K+星标见证专属智能方案
【8月更文挑战第8天】无缝融入,即刻智能[二]:Dify-LLM平台(聊天智能助手、AI工作流)快速使用指南,42K+星标见证专属智能方案
无缝融入,即刻智能[二]:Dify-LLM平台(聊天智能助手、AI工作流)快速使用指南,42K+星标见证专属智能方案
|
5月前
|
人工智能 PyTorch 算法框架/工具
Xinference实战指南:全面解析LLM大模型部署流程,携手Dify打造高效AI应用实践案例,加速AI项目落地进程
【8月更文挑战第6天】Xinference实战指南:全面解析LLM大模型部署流程,携手Dify打造高效AI应用实践案例,加速AI项目落地进程
Xinference实战指南:全面解析LLM大模型部署流程,携手Dify打造高效AI应用实践案例,加速AI项目落地进程
|
5月前
|
Linux API 开发工具
LLM大模型部署实战指南:Ollama简化流程,OpenLLM灵活部署,LocalAI本地优化,Dify赋能应用开发
【8月更文挑战第5天】LLM大模型部署实战指南:Ollama简化流程,OpenLLM灵活部署,LocalAI本地优化,Dify赋能应用开发
LLM大模型部署实战指南:Ollama简化流程,OpenLLM灵活部署,LocalAI本地优化,Dify赋能应用开发
|
5月前
|
前端开发 Linux API
无缝融入,即刻智能[一]:Dify-LLM大模型平台,零编码集成嵌入第三方系统,42K+星标见证专属智能方案
【8月更文挑战第3天】无缝融入,即刻智能[一]:Dify-LLM大模型平台,零编码集成嵌入第三方系统,42K+星标见证专属智能方案
无缝融入,即刻智能[一]:Dify-LLM大模型平台,零编码集成嵌入第三方系统,42K+星标见证专属智能方案
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
手把手带你5分钟搭建企业级AI问答知识库
【8月更文挑战第3天】手把手带你5分钟搭建企业级AI问答知识库
431 4