Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dify 是什么 #105

Open
QingyaFan opened this issue Jan 9, 2025 · 0 comments
Open

Dify 是什么 #105

QingyaFan opened this issue Jan 9, 2025 · 0 comments

Comments

@QingyaFan
Copy link
Owner

QingyaFan commented Jan 9, 2025

Dify 是什么

Dify 是 LLM应用开发平台,它融合了 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。非技术人员也能参与到 AI 应用的定义和数据运营中。1

什么是应用开发平台?

应用开发平台(Application Development Platform, ADP)是一种为开发者提供工具、框架、服务和环境的集成解决方案,旨在简化和加速应用程序的设计、开发、测试、部署和维护过程。它是构建、运行和管理软件应用程序的基础,广泛应用于现代软件开发中。

应用开发平台的意义?

  1. 提高开发效率:提供标准化的工具链和流程,减少重复工作
  2. 降低技术门槛:特别是低代码、无代码平台,适合业务人员快速搭建原型
  3. 支持快速迭代:与CICD工具集成,开发者可以快速测试和发布功能

那么什么是LLMOps?

LLMOps(Large Language Model Operations)是一个涵盖了 LLM 开发、部署、维护和优化的整套实践和流程。LLMOps 的目标是确保高效、可扩展和安全地使用这些强大的 AI 模型来构建和运行实际应用程序。它涉及到模型训练、部署、监控、更新、安全性和合规性等方面。2

总结起来就是,用LLMOps实践来做一个AI应用开发平台。那么,为什么要做AI应用开发平台?

Dify 的意义

如果不做AI应用开发平台,开发一个应用会是什么流程?

开发一个AI应用(如Agent)的过程可以分为需求分析、架构设计、模型开发、集成实现、测试与迭代、部署与运维等多个阶段。

有了AI应用开发平台,会有哪些改善?这些改善对用户有价值吗?

AI应用开发平台,应该要做哪些事情?

Dify 的设计

应用

在 Dify 中,“应用”指基于 LLM 构建的实际场景应用。通过创建应用,你可以将智能 AI 技术应用于特定的需求。它既包含了开发 AI 应用的工程范式,也包含了具体的交付物。3

Dify 提供了四种应用类型:

  1. 聊天助手:对话式交互助手
  2. 文本生成:文本生成类任务的助手,例如撰写故事、翻译等
  3. Agent:能够分解任务、推理思考、调用工具的对话式智能助手
  4. 工作流:基于流程编排的方式定义更加灵活的 LLM 工作流

1 和 2 的主要区别是一个有记忆,一个没有记忆,1 对应的是 /chat/completions api,2 对应的是 /completions api。

Dify 有哪些组件

  • nginx
  • api
  • worker
  • ssrf_proxy
  • sandbox
  • redis
  • weaviate
  • db
  • web

Footnotes

  1. https://docs.dify.ai/zh-hans

  2. https://docs.dify.ai/zh-hans/learn-more/extended-reading/what-is-llmops

  3. https://docs.dify.ai/zh-hans/guides/application-orchestrate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant