28.6k Star!Dify:完善生态、支持Ollama与本地知识库、企业级拖放式UI构建AI Agent、API集成进业务!

cover_image

原文链接(更好排版、视频播放、社群交流)

28.6k Star!Dify:完善生态、支持Ollama与本地知识库、企业级拖放式UI构建AI Agent、API集成进业务!

🌟 Dify 是一款开源的大语言模型(LLM) 应用开发平台, 它融合了后端即服务和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI
应用。

即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中, 使用拖放式 UI 构 建 AI 应用程序和 RAG 工作流程!

体验地址:https://cloud.dify.ai/apps

为什么使用 Dify?

你或许可以把 LangChain 这类的开发库(Library)想象为有着锤子、钉子的工具箱。与之相比,Dify 提供了更接近生产需要的完整方案,Dify
好比是一套脚手架,并且经过了精良的工程设计和软件测试。

在可视化画布上构建和测试强大的 AI 工作流程,利用以下所有功能及其他功能。

我们的社区用户对 Dify 的产品评价可以归结为简单、克制、迭代迅速。——路宇,Dify.AI CEO

Dify 能做什么?

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

创业,快速的将你的 AI 应用创意变成现实,无论成功和失败都需要加速。在真实世界,已经有几十个团队通过 Dify 构建
MVP(最小可用产品)获得投资,或通过 POC(概念验证)赢得了客户的订单。

将 LLM 集成至已有业务,通过引入 LLM 增强现有应用的能力,接入 Dify 的 RESTful API 从而实现 Prompt 与业务代码的解耦,在
Dify 的管理界面是跟踪数据、成本和用量,持续改进应用效果。

作为企业级 LLM 基础设施,一些银行和大型互联网公司正在将 Dify 部署为企业内的 LLM 网关,加速 GenAI
技术在企业内的推广,并实现中心化的监管。

探索 LLM 的能力边界,即使你是一个技术爱好者,通过 Dify 也可以轻松的实践 Prompt 工程和 Agent 技术,在 GPTs
推出以前就已经有超过 60,000 开发者在 Dify 上创建了自己的第一个应用。

知识库

从 Notion 导入数据

Dify 数据集支持从 Notion 导入,并设置 同步 使得数据在 Notion 更新后便自动同步到 Dify。

通过 API 维护数据集

Dify中存在知识库数据集的单独API,这与他的服务api不同,你可以单独的使用数据集的API:

工作流

工作流通过将复杂的任务分解成较小的步骤,提高了 LLM 应用面向复杂任务的性能。

Dify 工作流按应用情景划分为两种类型:

• Chatflow:面向多步逻辑的对话式应用程序。

  • • Workflow:面向自动化和批处理情景,适合高质量翻译、数据分析、内容生成、电子邮件自动化等应用程序。

• 常见案例 :

官方文档中详细的介绍了各种使用的节点,以及最终形成的工作流是支持导出的,方便我们团队协作。

接入众多LLM

模型配置

Dify 目前已支持主流的模型供应商,例如 OpenAI 的 GPT 系列、Anthropic 的 Claude 系列等。

_ 模型配置教程:https://docs.dify.ai/v/zh-hans/guides/model-configuration _

_ 请查看公众号往期文章(有关于免费OpenAI API调用的介绍、部署项目的时候如何进行API配置) _

在 Dify 的 设置 > 模型供应商 中设置要接入的模型。

配置完模型后,就可以在应用中使用这些模型了:

除此以外,Dify对于各种基础LLM,进行强大的兼容支持,支持各种本地如ollama以及第三方的模型,甚至支持你自定义的模型(需要自己重写类,和编写配置yaml)

发布你的应用

发布为公开 Web 站点

Dify还挺给力,用它创建AI应用,几分钟就能弄出一个Web应用,用户直接用,多方便。

发布AI站点

  • • 不管你是自己部署还是用云服务,比如Udify.app,都能快速上线。

  • • 在应用概览页里,找到那个AI站点(WebApp)的卡片,开启访问,就有链接可以分享了。

分享应用

  • • 无论是文本生成还是对话型应用,Dify都提供了好看的WebApp界面。就像是应用的脸,看起来得漂亮。

设置你的AI站点

  • • 点击WebApp卡片上的设置,可以弄一些东西,比如图标、名称、应用描述、界面语言、版权信息,还有隐私政策链接。这些都是最终用户会看到的。

嵌入你的AI站点

  • • Dify支持把你的AI应用嵌入到你的商业网站里。比如想做个AI客服或者问答系统,只要点击WebApp的嵌入按钮,复制那个嵌入代码,然后粘贴到你网站的合适位置。

  • • 用 iframe 标签,把代码放到网站的 <div><section> 这样的地方。

  • • 或者用 script 标签,复制代码到网站的 <head><body> 中。

比如说,你把script代码粘贴到官网的 <body> 里,这样就能有个官网AI机器人了。

基于 APIs 开发

Dify API基于“后端即服务”的理念,它让所有应用开发者都能轻松把大型语言模型的能力塞到前端应用里。想象一下,不用搞复杂的后端架构,直接在前端搞定一切。

这Dify API的好处多着呢:

  • • 直接在前端安全调用LLM,免去一堆后端开发麻烦。

  • • 设计应用时候,你看到的可视化界面,改啥都能实时反馈到所有客户端。

  • • 管理LLM供应商和密钥?都帮你封装得妥妥的,想换就换。

  • • 还有工具、插件、数据集持续更新,保证你的应用总是跟得上步伐。

怎么用呢?简单得很:

  1. 1. 在应用的左侧导航找到“API Access”。

  2. 2. 看看Dify提供的API文档,管理下你的API凭证。

想具体操作看看吗?比如你是开发部的,要用公司的数据库给终端用户提供AI能力,但你又不想外人摸清你的数据和AI逻辑。这时候,API密钥得后端调用,保证安全,防止被滥用。

搞文本生成型应用?调用 completion-messages 接口,输入点什么,文本结果就出来了。下面是个调用示例:

curl --location --request POST 'https://api.dify.ai/v1/completion-messages' \  
--header 'Authorization: Bearer ENTER-YOUR-SECRET-KEY' \  
--header 'Content-Type: application/json' \  
--data-raw '{  
    "inputs": {},  
    "response_mode": "streaming",  
    "user": "abc-123"  
}'

或者是对话型应用,采用一问一答模式,持续对话的那种。启动对话的API调用看这里:

curl --location --request POST 'https://api.dify.ai/v1/chat-messages' \  
--header 'Authorization: Bearer ENTER-YOUR-SECRET-KEY' \  
--header 'Content-Type: application/json' \  
--data-raw '{  
    "inputs": {},  
    "query": "eh",  
    "response_mode": "streaming",  
    "conversation_id": "1c7e55fb-1ba2-4e10-81b5-30addcea2276"  
    "user": "abc-123"  
}'

下面提供Dify官方的 文档介绍、相关资源、部署教程 等,进一步支撑你的行动,以提升本文的帮助力。

![](https://res.wx.qq.com/t/wx_fed/we-

emoji/res/v1.3.10/assets/newemoji/Party.png) 快速开始

Dify 是一个开源的 LLM 应用开发平台。其直观的界面结合了 AI 工作流、RAG
管道、Agent、模型管理、可观测性功能等,让您可以快速从原型到生产。以下是其核心功能列表:

1. 工作流 : 在画布上构建和测试功能强大的 AI 工作流程,利用以下所有功能以及更多功能。

https://github.com/langgenius/dify/assets/13230914/356df23e-1604-483d-80a6-9517ece318aa

2. 全面的模型支持 : 与数百种专有/开源 LLMs 以及数十种推理提供商和自托管解决方案无缝集成,涵盖 GPT、Mistral、Llama3
以及任何与 OpenAI API 兼容的模型。完整的支持模型提供商列表可在 此处 找到。

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 云服务]:(https://dify.ai),任何人都可以零设置尝试。它提供了自部署版本的所有功能,并在沙盒计划中包含 200
    次免费的 GPT-4 调用。

  • • **自托管 Dify 社区版
    ** 使用这个 入门指南 快速在您的环境中运行
    Dify。使用我们的[文档]:(https://docs.dify.ai)进行进一步的参考和更深入的说明。

  • • **面向企业/组织的 Dify
    ** 我们提供额外的面向企业的功能。 与我们安排会议 或 给我们发送电子邮件 讨论企业需求。

对于使用 AWS 的初创公司和中小型企业,请查看 AWS Marketplace 上的 Dify 高级版 ,并使用一键部署到您自己的 AWS
VPC。它是一个价格实惠的 AMI 产品,提供了使用自定义徽标和品牌创建应用程序的选项。

安装社区版

系统要求

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

  • • CPU >= 2 Core

  • • RAM >= 4GB

快速启动

启动 Dify 服务器的最简单方法是运行我们的 docker-compose.yml 文件。在运行安装命令之前,请确保您的机器上安装了 Docker
和 Docker Compose :

cd docker  
docker compose up -d

运行后,可以在浏览器上访问 http://localhost/install 进入 Dify 控制台并开始初始化安装操作。

使用 Helm Chart 部署

使用 Helm Chart 版本,可以在 Kubernetes 上部署 Dify。

  • • Helm Chart by @LeoQuote

  • • Helm Chart by @BorisPolonsky

配置

如果您需要自定义配置,请参考我们的 docker-compose.yml 文件中的注释,并手动设置环境配置。更改后,请再次运行 docker- compose up -d 。您可以在我们的 文档 中查看所有环境变量的完整列表。

参考链接:

[1] https://gi thub.com/langgenius/ dify/
[2] h ttps://cloud.dify.ai/apps
[3] https://docs.dify.ai/v/zh-hans/getting-started/

知音难求,自我修炼亦艰

抓住前沿技术的机遇,与我们一起成为创新的超级个体

(把握AIGC时代的个人力量)

**
**

** 点这里 👇 关注我,记得标星哦~ **

**
**

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

预览时标签不可点

微信扫一扫
关注该公众号

轻触阅读原文

AI进修生



  • 26
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
dify是一个开源的Python库,用于快速开发机器学习模型和部署机器学习服务。它提供了一系列的工具和接口,帮助开发者在机器学习项目中更高效地行数据处理、特征工程、模型训练和模型部署等任务。 dify的主要特点包括: 1. 简单易用:dify提供了简洁的API和丰富的功能,使得开发者可以快速上手并行高效的开发。 2. 模块设计:dify采用模块的设计,每个模块都有清晰的功能和接口,可以根据需求选择性地使用。 3. 数据处理和特征工程:dify提供了丰富的数据处理和特征工程工具,包括数据清洗、特征选择、特征变换等功能,帮助开发者更好地准备数据。 4. 模型训练和评估:dify支持多种常见的机器学习算法,并提供了模型训练和评估的接口,方便开发者行模型选择和性能评估。 5. 模型部署和服务dify支持将训练好的模型部署API服务,方便其他应用程序行调用和集成。 如果你想开发新模块,可以按照以下步骤行: 1. 确定模块的功能和接口:明确你的模块要解决的问题,并设计好相应的功能和接口。 2. 实现模块代码:使用Python编写你的模块代码,可以借助dify提供的工具和接口来简开发过程。 3. 测试和调试:对你的模块行测试和调试,确保其功能正常并符合预期。 4. 文档编写:编写清晰的文档,介绍你的模块的功能、使用方法和示例代码等。 5. 提交和分享:将你的模块提交到dify的开源社区,与其他开发者分享你的成果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Aitrainee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值