一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
一、开源项目简介
Dify 是一个易用的 LLMOps 平台,旨在让更多人可以创建可持续运营的原生 AI 应用。Dify 提供多种类型应用的可视化编排,应用可开箱即用,也能以“后端即服务”的 API 提供服务。
本项目遵循 Dify Open Source License 开源协议。
Dify 是一个易用的 LLMOps 平台,旨在让更多人可以创建可持续运营的原生 AI 应用。
通过 Dify 创建的应用包含了:
Dify 兼容 Langchain,这意味着我们将逐步支持多种 LLMs ,目前支持的模型供应商:
您的团队可以基于 GPT-4 等模型开发人工智能应用,并对其进行可视化操作。
无论团队内使用或是对外发布,最快 5 分钟就能发布您的应用。
以文档/网页/notion 等内容作为 AI 的上下文,全自动完成文本预处理、向量化和分段,您不必再学习嵌入技术,为您省下数周的开发时间。
为您的应用加入丰富的工具能力:搜索、连接数据库、敏感词回避、甚至接入一切 API。与 ChatGPT 的插件标准完全兼容。
已原生支持 GPT 家族和 Claude 模型,可兼容LangChain 支持的所有 LLMs。
Dify 为模型接入、上下文嵌入、成本控制和数据标注提供了流畅的体验。无论是团队内使用还是打造产品,您都能轻松地创造 AI 应用。
基于后端即服务理念的 API 设计,接入一个 API 接口的同时也完成了插件与长上下文的集成。
让 AI 应用不在黑盒状态下运行,可视化的查阅日志并对数据进行改进标注,观测 AI 的推理过程。
Dify 原生提供了两种类型的应用:对话和文本生成,均已在 GitHub 上开源,您可以基于它们创造出所需的应用。
在安装 Dify 之前,请确保您的机器满足以下最低系统要求:
启动 Dify 服务器的最简单方法是运行我们的 docker-compose.yml 文件。在运行安装命令之前,请确保您的机器上安装了 Docker 和 Docker Compose:
cd docker docker compose up -d
运行后,可以在浏览器上访问 http://localhost/install 进入 Dify 控制台并开始初始化安装操作。
非常感谢 @BorisPolonsky 为我们提供了一个 Helm Chart 版本,可以在 Kubernetes 上部署 Dify。您可以前往 https://github.com/BorisPolonsky/dify-helm 来获取部署信息。
需要自定义配置,请参考我们的 docker-compose.yml 文件中的注释,并手动设置环境配置,修改完毕后,请再次执行 docker-compose up -d。
我们正在开发中的功能:
Q: 我能用 Dify 做什么?
A: Dify 是一个简单且能力丰富的 LLM 开发和运营工具。你可以用它搭建商用级应用,个人助理。如果你想自己开发应用,Dify 也能为你省下接入 OpenAI 的后端工作,使用我们逐步提供的可视化运营能力,你可以持续的改进和训练你的 GPT 模型。
Q: 如何使用 Dify “训练”自己的模型?
A: 一个有价值的应用由 Prompt Engineering、上下文增强和 Fine-tune 三个环节组成。我们创造了一种 Prompt 结合编程语言的 Hybrid 编程方式(类似一个模版引擎),你可以轻松的完成长文本嵌入,或抓取用户输入的一个 Youtube 视频的字幕——这些都将作为上下文提交给 LLMs 进行计算。我们十分注重应用的可运营性,你的用户在使用 App 期间产生的数据,可进行分析、标记和持续训练。以上环节如果没有好的工具支持,可能会消耗你大量的时间。
Q: 如果要创建一个自己的应用,我需要准备什么?
A: 我们假定你已经有了 OpenAI API Key,如果没有请去注册一个。如果你已经有了一些内容可以作为训练上下文,就太好了。
Q: 提供哪些界面语言?
A: 现已支持英文与中文,你可以为我们贡献语言包。
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 平台前的开发过程:
引入 Dify 这样的 LLMOps 平台后,基于 LLM 开发应用的过程将变得更加高效、可扩展和安全。以下是使用 Dify 进行 LLM 应用开发的优势:
另外,Dify 将提供 AI 插件开发和集成的功能,使得开发者可以轻松地为各种应用创建和部署基于 LLM 的插件,进一步提升了开发效率和应用的价值。
来源:Dify 官网文档
评论