# Dify 低代码-AI智能体-开发平台 **Repository Path**: liwenhao-K8S/dify ## Basic Information - **Project Name**: Dify 低代码-AI智能体-开发平台 - **Description**: 这个是https://github.com/langgenius/dify.git 的镜像分支dify-main和1.11.2 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://github.com/langgenius/dify.git - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-01-09 - **Last Updated**: 2026-04-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Dity - 开源 LLM 应用开发平台 运营工作流举例 ![ ## 运营工作流举例 ](https://gitee.com/liwenhao-K8S/dity/raw/%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E+%E5%B7%A5%E4%BD%9C%E6%B5%81%E6%A8%A1%E7%89%88+%E4%BD%BF%E7%94%A8langfuse%E9%93%BE%E8%B7%AF%E8%BF%BD%E8%B8%AA%E7%9B%91%E6%8E%A7dity%E5%A4%9A%E4%B8%AA%E6%99%BA%E8%83%BD%E4%BD%93/%E5%B7%A5%E4%BD%9C%E6%B5%81%E5%9B%BE%E7%89%87%E4%B8%BE%E4%BE%8B.png) ## 项目简介 Dity 是一个用于开发大语言模型(LLM)应用的开源平台。其直观的界面结合了智能 AI 工作流、RAG 管道、智能体能力、模型管理、可观测性等功能,让您能够快速从原型过渡到生产环境。 作为一款企业级的 AI 应用开发平台,Dity 提供了完整的工具链,帮助开发者构建、部署和管理基于大语言模型的应用程序。无论是简单的聊天机器人,还是复杂的多步骤工作流,Dity 都能提供强大的支持。 ## 核心功能 ### 1. AI 工作流 在可视化画布上构建和测试强大的 AI 工作流,支持多种节点类型和复杂的流程控制。通过直观的拖拽界面,您可以轻松设计从简单到复杂的 AI 业务流程,实现复杂的业务逻辑。 ### 2. 全面的模型支持 与来自数十家推理提供商和自托管解决方案的数百种专有/开源 LLM 无缝集成,涵盖 GPT、Mistral、Llama3 以及任何与 OpenAI API 兼容的模型。平台支持模型热切换、负载均衡和统一的调用接口。 ### 3. 提示词 IDE 用于制作提示词、比较模型性能以及为基于聊天的应用添加文本转语音等附加功能的直观界面。提供实时预览、性能对比和一键优化功能。 ### 4. RAG 管道 广泛的 RAG(检索增强生成)功能,涵盖从文档摄取到检索的所有环节,支持从 PDF、PPT 和其他常见文档格式中提取文本。支持多种向量数据库,提供高效的语义检索能力。 ### 5. 智能体能力 可以根据 LLM 函数调用或 ReAct 定义智能体,并为智能体添加预构建或自定义工具。支持多智能体协作、工具扩展和复杂的推理策略。 ### 6. LLMOps 随时间监控和分析应用程序日志和性能,可以根据生产数据和标注持续改进提示词、数据集和模型。提供详细的执行追踪、性能指标和成本分析功能。 ### 7. 后端即服务 所有功能都配有相应的 API,便于将 Dity 集成到自己的业务逻辑中。支持三种 API 类型:Console API(管理控制台)、Service API(服务 API)和 Web API(Web 应用 API)。 ## 技术架构 ### 后端架构 后端采用 Flask 作为应用框架,提供 RESTful API 服务。主要技术栈包括: - **Flask**:轻量级 Web 应用框架,提供 API 路由和请求处理 - **SQLAlchemy**:ORM 工具,处理数据库操作和模型管理 - **Celery**:分布式任务队列,处理异步任务和定时任务 - **Pydantic**:数据验证库,确保请求和响应数据的正确性 ### 核心模块 - **Agent 智能体模块**:实现多种智能体策略,包括 CoT(思维链)、Function Calling(函数调用)等 - **Workflow 工作流模块**:可视化工作流引擎,支持条件分支、循环和并行执行 - **Dataset 数据集模块**:RAG 文档管理和语义检索功能 - **Model 模型管理模块**:多模型提供商集成和统一的模型调用接口 ### 部署架构 - **Docker 容器化**:完整的 Docker 配置文件,支持快速部署 - **Kubernetes 支持**:可用于生产环境的高可用部署配置 - **多存储支持**:PostgreSQL、Redis 以及多种向量数据库(Milvus、Weaviate、Qdrant 等) ## 快速开始 ### 环境要求 - CPU:至少 2 核 - RAM:至少 4 GiB - Docker 和 Docker Compose(推荐) ### Docker 部署(推荐) ```bash # 克隆项目 git clone https://gitee.com/liwenhao-K8S/dity.git cd dity # 进入 docker 目录 cd docker # 复制环境配置文件 cp .env.example .env # 编辑 .env 文件,配置必要的参数 # 主要包括数据库连接、Redis 配置、模型 API 密钥等 # 启动服务 docker compose up -d # 查看服务状态 docker compose ps ``` 启动后,访问 `http://localhost:3000` 开始初始化配置。 ### 手动部署 对于需要自定义部署的环境,可以按照以下步骤操作: 1. 创建 Python 虚拟环境并安装依赖 2. 配置数据库(PostgreSQL)和 Redis 3. 设置环境变量 4. 运行数据库迁移 5. 启动 API 服务和 Celery worker ## 项目结构 ``` dity/ ├── api/ # 后端 API 服务 │ ├── agents/ # 智能体相关实现 │ ├── controllers/ # API 控制器 │ ├── core/ # 核心业务逻辑 │ ├── extensions/ # 扩展机制 │ ├── models/ # 数据模型 │ ├── services/ # 业务服务层 │ └── configs/ # 配置文件 ├── web/ # 前端应用 │ ├── src/ # React 源代码 │ ├── public/ # 静态资源 │ └── package.json # 前端依赖配置 ├── docker/ # Docker 配置文件 │ ├── Dockerfile # API 服务镜像 │ └── docker-compose.yml ├── kubernetes/ # Kubernetes 部署配置 ├── scripts/ # 辅助脚本 └── README.md # 项目说明文档 ``` ### 目录说明 - **api/agents/**:智能体相关的核心逻辑实现 - **api/controllers/**:API 端点定义和请求处理 - **api/core/**:核心业务逻辑,包括工作流引擎、智能体执行器等 - **api/models/**:SQLAlchemy 数据模型定义 - **api/services/**:业务逻辑层,封装具体的业务操作 - **web/src/**:前端 React 组件、状态管理和样式 ## 配置说明 ### 环境变量 主要配置项在 `docker/.env` 文件中,包括: - **数据库配置**:PostgreSQL 连接信息(主机、端口、用户名、密码、数据库名) - **Redis 配置**:缓存和消息队列连接信息 - **模型提供商**:各模型提供商的 API 密钥和端点配置 - **存储配置**:文件存储后端配置(本地存储或云存储) - **Celery 配置**:异步任务队列配置 ### 关键配置项 ```bash # 数据库配置 DB_USERNAME=postgres DB_PASSWORD=password DB_HOST=localhost DB_PORT=5432 DB_DATABASE=dify # Redis 配置 REDIS_HOST=localhost REDIS_PORT=6379 # 模型 API 配置 OPENAI_API_KEY=your-api-key ``` ### 自定义配置 如需自定义配置,请参考 `docker/.env.example` 文件中的详细注释进行修改。平台支持通过远程配置源(Apollo、Nacos)进行配置管理。 ## API 文档 Dity 提供三类 API: 1. **Console API**:管理控制台 API,用于应用管理、用户管理等 2. **Service API**:服务 API,面向终端用户的应用调用 3. **Web API**:Web 应用 API,支持直接嵌入网页 详细 API 文档可在启动服务后访问 `/api/docs` 获取 Swagger UI 文档。 ### 主要 API 端点 - **应用管理**:`/apps` - 应用的创建、查询、更新和删除 - **对话管理**:`/chat-messages` - 聊天消息的处理 - **工作流**:`/workflows` - 工作流的创建和执行 - **数据集**:`/datasets` - 知识库和文档管理 - **文件上传**:`/files/upload` - 文件上传和管理 ## 贡献指南 我们欢迎社区贡献代码!请遵循以下步骤: 1. **Fork 本项目**:点击项目页面右上角的 Fork 按钮 2. **创建特性分支**: ```bash git checkout -b feature/AmazingFeature ``` 3. **提交更改**: ```bash git commit -m 'Add some AmazingFeature' ``` 4. **推送到分支**: ```bash git push origin feature/AmazingFeature ``` 5. **创建 Pull Request**:在 Gitee 上创建 Pull Request 等待审核 ### 提交规范 - 确保代码符合项目的编码规范 - 所有提交需要通过 CI/CD 流程 - 提交信息应清晰描述变更内容 - 对于重大更改,请先创建 Issue 讨论 ## 社区与支持 - **问题反馈**:https://gitee.com/liwenhao-K8S/dity/issues - **文档资源**:项目内置帮助文档和在线文档 - **功能建议**:欢迎在 Issue 中提出改进建议 ## 许可证 本项目遵循 **Apache License 2.0** 许可证。您可以自由使用、修改和分发本项目,但需要遵守许可证的相关条款。 ## 注意事项 本 README 基于项目代码结构生成,具体功能以实际部署后的系统为准。由于项目持续开发,部分功能可能会有所变化。 --- **Dity** - 让 AI 应用开发更简单、更高效。