• 常用
  • 百度
  • google
  • 站内搜索

AI编程工具

Dify ai

  • 更新日期:2025-05-09 12:36:22
  • 浏览次数:110
  • 网站标签:

详细介绍

Dify ai官网,LLMOps平台,提供AI 聊天机器人,代码转换器,SQL 生成器,新闻内容编写,创意脚本等

什么是Dify ai?

Dify 是一个易于使用的 LLMOps 平台,提供了多种应用程序类型和模板,包括 AI 聊天机器人、代码转换器、SQL 生成器、新闻内容编写、创意脚本等。团队使用 Dify,可以基于 GPT-4 等模型快速「开发+部署」 AI 应用程序并进行可视化操作,还可以将程序对外进行发布。Dify 这个名字来源于 Define 和 Modify 这两个词,Dify 可以理解为 Do it for you,代表了帮助开发人员不断改进其 AI 应用程序的愿景。

Dify ai官网: https://dify.ai

Dify ai githhub: https://github.com/langgenius/dify

帮助文档: https://docs.dify.ai/v/zh-hans/getting-started/install-self-hosted

什么是 LLMOps?

LLMOps(Large Language Model Operations)是一个涵盖了大型语言模型(如GPT系列)开发、部署、维护和优化的一整套实践和流程。LLMOps 的目标是确保高效、可扩展和安全地使用这些强大的 AI 模型来构建和运行实际应用程序。它涉及到模型训练、部署、监控、更新、安全性和合规性等方面。
下表说明了使用 Dify 前后开发 AI 应用的各环节差异:
步骤
未使用 LLMOps 平台
使用 Dify LLMOps 平台
时间差异
开发应用前&后端
集成和封装 LLM 能力,花费较多时间开发前端应用
直接使用 Dify 的后端服务,可基于 WebApp 脚手架开发
-80%
Prompt Engineering
仅能通过调用 API 或 Playground 进行
结合用户输入数据所见即所得完成调试
-25%
数据准备与嵌入
编写代码实现长文本数据处理、嵌入
在平台上传文本或绑定数据源即可

-80%
应用日志与分析
编写代码记录日志,访问数据库查看
平台提供实时日志与分析
-70%
数据分析与微调
技术人员进行数据管理和创建微调队列
非技术人员可协同,可视化模型调整
-60%
AI 插件开发与集成
编写代码创建、集成 AI 插件
平台提供可视化工具创建、集成插件能力
-50%
在使用 LLMOps 平台如 Dify 之前,基于 LLM 开发应用的过程可能会非常繁琐和耗时。开发者需要自行处理各个阶段的任务,这可能导致效率低下、难以扩展和安全性问题。以下是使用 LLMOps 平台前的开发过程:
数据准备:手动收集和预处理数据,可能涉及到复杂的数据清洗和标注工作,需要编写较多代码。
Prompt Engineering:开发者只能通过调用 API 或 Playground 进行 Prompt 编写和调试,缺乏实时反馈和可视化调试。
嵌入和上下文管理:手动处理长上下文的嵌入和存储,难以优化和扩展,需要不少编程工作,熟悉模型嵌入和向量数据库等技术。

Dify ai使用教程

应用监控与维护:手动收集和分析性能数据,可能无法实时发现和处理问题,甚至可能没有日志记录。
模型微调:自行处理微调数据准备和训练过程,可能导致效率低下,需要编写更多代码。
系统和运营:需要技术人员参与或花费成本开发管理后台,增加开发和维护成本,缺乏多人协同和对非技术人员的友好支持。
引入 Dify 这样的 LLMOps 平台后,基于 LLM 开发应用的过程将变得更加高效、可扩展和安全。以下是使用 Dify 进行 LLM 应用开发的优势:
数据准备:平台提供数据收集和预处理工具,简化了数据清洗和标注的工作,最小化甚至消除了编码工作。
Prompt Engineering:所见即所得的 Prompt 编辑和调试,可根据用户输入的数据进行实时优化和调整。
嵌入和上下文管理:自动处理长上下文的嵌入、存储和管理,提高效率和扩展性,无需编写大量代码。
应用监控与维护:实时监控性能数据,快速发现和处理问题,确保应用程序的稳定运行,提供完整的日志记录。
模型微调:平台提供一键微调功能,基于过去已标注的真实使用数据进行训练,提高模型性能,减少编程工作。
系统和运营:易用的界面,非技术人员也可参与,支持多人协同,降低开发和维护成本。与传统开发方式相比,Dify 提供了更加透明和易于监控的应用管理,让团队成员更好地了解应用的运行情况。
另外,Dify 将提供 AI 插件开发和集成的功能,使得开发者可以轻松地为各种应用创建和部署基于 LLM 的插件,进一步提升了开发效率和应用的价值。

Dify 一词源自 Define + Modify,意指定义并且持续的改进你的 AI 应用,它是为你而做的(Do it for you)。如果你对诸如 GPT-4 之类的 LLM 技术高速发展感到惊奇和兴奋,迫不及待的想用它做点什么有用的东西!可你的头脑里又有一切令人困惑的问题:

  • 我该如何“训练”一个基于我的内容的模型?
  • 怎么让 AI 知道 2021 年以后的事情?
  • 如何避免让 AI 跟用户胡说八道?
  • 微调(Fine-tuning)和嵌入(Embedding)是什么意思?

那么,Dify 正好能满足你的需要。Dify 的目标是让开发者(甚至非开发者)可以快速基于大型语言模型搭建出有用的东西,并确保它是可视化、可运营、可改进的。

我们塑造了工具,然后工具塑造了我们。——马歇尔·麦克卢汉(Marshall McLuhan)

你可以使用 Dify 快速搭建一个 Web App,其生成的前端代码可以托管在 Dify 上。如果你想基于这个 Web App 进一步开发,你可以从 GitHub 中得到这些 Template,部署到任何地方(例如 Vercel 或你的服务器)。或者,你也可以基于 WebAPI 开发你自己的 Web 前端、移动 App…总之,为你省下了后端开发的工作。不止于此,Dify 的核心理念是在一个可视化的界面中创建、配置、改进你的应用。基于 LLM 的应用开发有一个持续改进的生命周期,你可能需要基于自己的内容让 AI 给予正确的回答,或是想提升 AI 的准确性和叙述风格,甚至让它去 上下载一个字幕作为上下文。这当中将会有些逻辑设计、上下文增强、数据准备等需要花些功夫的事情,如果没有工具你可能会寸步难行…我们称这个过程为 LLMOps。下一步行动

  • 看看这些由 Dify 创建的应用
  • 在云端版中快速创建应用
  • 安装 Dify 到你的服务器

可能只有少数公司有预算来构建和管理像 GPT-3 这样的大型语言模型 (LLM),但是将会有许多价值超过 10 亿美元的“第二层”公司建立起来下一个十年。 ——Sam Altman

正如 LLM 技术的快速发展一样,Dify 还是一个正在不断进步的产品,这份文档的内容和产品可能会有些出入。你可以在 GitHub 或 Discord 上与我们分享想法。Q&AQ: 我能用 Dify 做什么?A: Dify 是一个简单且能力丰富的自然语言编程工具。你可以用它搭建商用级应用,个人助理。如果你想自己开发应用,Dify 也能为你省下接入 OpenAI 的后端工作,但使用我们逐步提供高的可视化运营能力,你可以持续的改进和训练你的 GPT 模型。Q: 如何使用 Dify 训练自己的模型?A: 一个有价值的应用由 Prompt Engineering、上下文增强和 Fine-tune 三个环节组成。我们创造了一种 Prompt 结合编程语言的 Hybrid 编程方式(类似一个模版引擎),你可以轻松的完成长文本嵌入,或抓取用户输入的一个 视频的字幕——这些都将作为上下文提交给 LLMs 进行计算。我们十分注重应用的可运营性,你的用户在使用 App 期间产生的数据,可进行分析、标记和持续训练。以上环节如果没有好的工具支持,可能会消耗你大量的时间。Q: 如果要创建一个自己的应用,我需要准备什么?A: 你选择一个诸如 OpenAI 的模型供应商,我们的云端版内置了 GPT-4 的试用模型,你可以填入自己的 API Key。随后你就可以创建一个应用,基于 Prompt 或自己的上下文。Q: Dify 搭建的应用能够保持会话吗?A: 可以,如果你创建了对话型应用,它内置了会话保存的能力,在生成的 WebApp 和 API 中都支持。Q: LLMOps 和 MLOps 有什么区别?A: 过去的 MLOps 是让开发者从零开始训练模型,而 LLMOps 基于诸如 GPT-4 这样的强大模型之上开发 AI 原生应用,你可以查阅这篇文章。Q: 提供哪些界面语言?A: 现已支持英文与中文,你可以为我们贡献语言包。Q: LangGenius 是什么?A: LangGenius 是 Dify 正式发布前的产品名称,我们还在更新所有的文档。Dify 一词源自 Define + Modify,意指定义并且持续的改进你的 AI 应用,它是为你而做的(Do it for you)。

安装

系统要求在安装 Dify 之前,请确保您的机器满足以下最低系统要求:

  • CPU >= 1 Core
  • RAM >= 4GB

快速启动启动 Dify 服务器的最简单方法是运行我们的 docker-compose.yml 文件。在运行安装命令之前,请确保您的机器上安装了 Docker 和 Docker Compose:cd dockerdocker-compose up -d运行后,可以在浏览器问 http://localhost/install 进入 Dify 控制台并开始初始化安装操作。配置需要自定义配置,请参考我们的 docker-compose.yml 文件中的注释,并手动设置环境配置,修改完毕后,请再次执行 docker-compose up -d。FAQ

  • 启动后页面一直在 loading,查看请求提示 CORS 错误。这可能是由于切换了域名/网址,导致前端和服务端跨域,请将 docker-compose.yml 中所有的以下配置项改为新的域名:
  • CONSOLE_URL:控制台域名,如:http://localhost:8080
  • API_URL:Service API 域名
  • APP_URL:Web APP 域名
  • 安装时后无法登录,登录成功,但后续接口均提示 401。可能由于跨域导致 cookie 策略失效,可以按照以下策略配置:
  • 默认策略​适用于本地调试用,支持 HTTP/HTTPS 协议,但需要保证前端页面和接口同域。WEB_API_CORS_ALLOW_ORIGINS: *CONSOLE_CORS_ALLOW_ORIGINS: *COOKIE_HTTPONLY: trueCOOKIE_SAMESITE: LaxCOOKIE_SECURE: false
  • 跨域策略(请勿应在生产)​由于 SameSite=None 必须配合 Secure=true,因此服务端必须为 https 协议才能实现跨域访问,可以用在服务端在远程并且提供 https 协议支持,或者本地单独启动服务端和前端项目(localhost,但不同端口,实测可用,虽然提示 warning)。WEB_API_CORS_ALLOW_ORIGINS: https://your-domain-for-web-appCONSOLE_CORS_ALLOW_ORIGINS: https://your-domain-for-consoleCOOKIE_HTTPONLY: trueCOOKIE_SAMESITE: NoneCOOKIE_SECURE: true
  • 生产策略​由于部分第三方集成需要支持回调并带着 cookie 信息,因此不能使用最高的 Strict 策略,因此需要严格限制 CORS 域名,以及设置 cookie 策略为 SameSite=Lax Secure=true。WEB_API_CORS_ALLOW_ORIGINS: https://your-domain-for-web-appCONSOLE_CORS_ALLOW_ORIGINS: https://your-domain-for-consoleCOOKIE_HTTPONLY: trueCOOKIE_SAMESITE: LaxCOOKIE_SECURE: true
  • 如何在国内环境中使用 OpenAI 服务器进行访问​可以在 docker-compose.yaml 中的 api 和 worker 服务加一条 environments 记录OPENAI_API_BASE: https://<your-openai-mirror-domain>/v1

贡献代码为了确保正确审查,所有代码贡献 包括来自具有直接提交更改权限的贡献者 都必须提交 PR 请求并在合并分支之前得到核心开发人员的批准。我们欢迎所有人提交 PR!如果您愿意提供帮助,可以在 贡献指南 中了解有关如何为项目做出贡献的更多信息。