Dify实战指南:从零构建AI应用,可视化编排工作流与智能体
最近在尝试将大模型能力集成到业务系统中时你是否也遇到过这样的困境调用API接口复杂、提示词工程难以调试、不同模型切换成本高、构建一个带知识库的问答机器人更是无从下手这些问题在AI应用开发初期尤为突出往往让开发者陷入技术细节的泥潭而忽略了业务逻辑本身。Dify的出现正是为了解决这些痛点。它并非另一个大模型而是一个开源的AI应用开发平台旨在让开发者能够像搭积木一样快速构建和部署基于大模型的应用程序。无论你是想创建一个智能客服、一个文档分析助手还是一个复杂的自动化工作流Dify都提供了可视化的编排工具和统一的API层极大地降低了开发门槛。本文将为你带来一份从零开始的Dify实战指南。我们将从核心概念讲起手把手带你完成本地部署并深入探索其两大核心功能——应用编排与工作流最终构建一个专属的智能体。无论你是零基础的AI爱好者还是希望将AI能力落地的开发者都能从本文中找到清晰的路径和可复现的代码。1. Dify 核心概念与架构解析在深入实操之前理解Dify是什么、能做什么以及它的设计哲学至关重要。这能帮助你在后续使用中做出更合理的技术选型和架构设计。1.1 Dify 是什么不是什么Dify 是什么Dify 是一个开源的 LLM大语言模型应用开发平台。它的核心目标是“标准化”AI应用开发流程。你可以把它理解为一个“连接器”和“编排器”连接器它统一对接了众多主流的大模型API如 OpenAI GPT系列、 Anthropic Claude、国内的通义千问、文心一言等。开发者无需关心每个API的细微差异。编排器它提供了可视化界面让你可以通过拖拽组件的方式设计应用的逻辑流包括提示词模板、条件判断、知识库检索、代码执行等。Dify 不是什么它不是一个大模型Dify本身不提供模型能力它依赖后端连接的大模型服务。它不是一个聊天界面虽然它能生成Web聊天界面但其核心价值在于背后的应用编排和工作流引擎。它不是唯一的选项同类产品还有 LangChain代码库、LlamaIndex侧重检索、Coze、扣子等。Dify的优势在于开箱即用的可视化与一体化部署。1.2 Dify 的核心组件与架构理解Dify的架构有助于后续的部署和问题排查。其核心主要由以下服务构成API Server (后端服务)提供核心的RESTful API处理所有应用逻辑、工作流执行、知识库管理等。这是Dify的大脑。Web Frontend (前端界面)提供用户操作的可视化控制台包括应用创建、工作流编排、对话测试、日志查看等。Worker (异步任务队列)处理耗时任务例如知识库文档的索引生成、嵌入向量化、工作流中的异步节点执行等。通常使用Celery或类似技术。向量数据库 (Vector Database)用于存储知识库文档经过嵌入模型处理后的向量数据支持高效的语义检索。Dify支持多种向量数据库如Milvus、PGVector、Weaviate等。关系型数据库 (Relational Database)用于存储用户、应用、对话记录、工作流定义等元数据。通常使用PostgreSQL或MySQL。这些组件通常通过Docker容器进行部署和通信共同协作完成一个AI应用的完整生命周期从配置、编排、测试到最终发布为API。1.3 关键概念应用、工作流与智能体在Dify中有三个核心概念贯穿始终应用 (Application)这是你构建的最终产物。一个应用可以是一个聊天机器人、一个文本生成工具或一个复杂的数据处理管道。每个应用都有独立的配置、提示词和访问方式API或Web界面。工作流 (Workflow)这是构建复杂应用的核心工具。工作流允许你将多个处理步骤节点连接起来形成一个有向无环图。每个节点可以执行特定功能如“LLM调用”、“知识库检索”、“条件判断”、“HTTP请求”等。工作流使得多步骤、带逻辑判断的AI应用成为可能。智能体 (Agent)在Dify语境下智能体通常指具备自主规划和使用工具能力的AI应用。通过在工作流中集成“代码执行”或“工具调用”节点你可以构建出能联网搜索、查询数据库、执行计算的智能体而不仅仅是简单的问答。2. 环境准备与本地部署我们将采用最主流且易于管理的方式——Docker Compose进行部署。这种方式能一键拉起所有依赖服务非常适合学习和生产环境。2.1 系统要求与前置条件操作系统Linux (Ubuntu 20.04/22.04, CentOS 7), macOS, 或 Windows (需安装WSL2)。本文以 Ubuntu 22.04 为例。Docker版本 20.10.0 或更高。确保Docker服务已启动。Docker Compose版本 v2.0.0 或更高。通常随Docker Desktop安装Linux需单独安装。硬件建议至少4核CPU8GB内存20GB可用磁盘空间。运行向量模型和嵌入模型对内存有一定要求。网络能够访问 Docker Hub 和所需的大模型API如OpenAI或本地模型。首先更新系统并安装必要的工具# 更新软件包列表 sudo apt-get update # 安装常用工具 sudo apt-get install -y curl wget git2.2 使用 Docker Compose 一键部署这是官方推荐的最简单部署方式。我们通过克隆仓库并修改配置文件来完成。克隆 Dify 代码仓库# 克隆最新版本的 Dify 代码 git clone https://github.com/langgenius/dify.git cd dify进入目录后你会看到docker文件夹里面包含了部署所需的所有文件。配置环境变量 部署的核心是配置docker/.env文件。它决定了Dify将使用哪些服务。# 进入docker配置目录 cd docker # 复制环境变量示例文件 cp .env.example .env现在用文本编辑器如vim或nano打开.env文件我们需要关注几个关键配置# 编辑 .env 文件 vim .env找到并修改以下部分根据你的实际情况# 设置一个安全的密钥用于加密。可以使用 openssl rand -base64 32 生成。 SECRET_KEYyour_very_strong_secret_key_here # 数据库配置使用内置的 PostgreSQL 还是外部数据库 # 对于初次部署建议使用内置的。 DB_USERNAMEpostgres DB_PASSWORDdifyai123456 # 请务必修改为强密码 DB_HOSTdb DB_PORT5432 DB_DATABASEdify # 向量数据库配置这里我们选择使用内置的 Weaviate默认也可以改为 Milvus 或 PGVector。 # 保持默认即可开始。 VECTOR_STOREweaviate WEAVIATE_ENDPOINThttp://weaviate:8080 # 大模型配置这是必填项你需要至少配置一个LLM供应商。 # 例如使用 OpenAI (你需要有自己的API Key) OPENAI_API_KEYsk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # 或者如果你使用 Azure OpenAI AZURE_OPENAI_API_KEYyour_azure_key AZURE_OPENAI_ENDPOINThttps://your-resource.openai.azure.com/ # 也可以配置国内模型如通义千问、文心一言等需在高级设置中启用相应供应商。 # 外部访问地址用于构建正确的回调URL。如果是本地访问可以是 CONSOLE_API_URLhttp://localhost:5001 CONSOLE_WEB_URLhttp://localhost:3000 APP_API_URLhttp://localhost:5001 API_BASE_URLhttp://localhost:5001重要OPENAI_API_KEY是你从OpenAI平台获取的密钥。如果没有你可以暂时注释掉但后续创建应用时将无法使用GPT模型。你也可以配置其他支持的模型。启动 Dify 服务 配置完成后使用 Docker Compose 启动所有服务。# 在 docker 目录下执行 docker-compose up -d这个命令会拉取所需的镜像包括PostgreSQL, Weaviate, Redis, Nginx等并在后台启动它们。首次运行可能需要几分钟时间下载镜像。验证部署 等待所有容器启动完毕。你可以使用以下命令查看状态docker-compose ps当所有服务的状态均为Up时表示部署成功。 现在你可以在浏览器中打开 Dify 控制台控制台地址http://localhost:3000首次打开会进入初始化页面创建第一个管理员账户。2.3 常见部署问题排查部署过程中可能会遇到一些问题这里列出几个常见的问题现象可能原因解决思路访问localhost:3000连接被拒绝容器尚未完全启动成功端口被占用。1. 运行docker-compose logs -f web查看前端日志等待启动完成。2. 运行netstat -tlnp | grep :3000检查端口是否被其他进程占用修改.env中的端口映射。启动时数据库连接失败数据库容器启动慢于后端服务.env中数据库密码错误。1. 重启服务docker-compose restart api worker。2. 检查docker-compose logs db确认数据库日志并核对.env中的DB_PASSWORD。控制台能打开但创建应用时提示“模型不可用”未正确配置大模型API Key网络无法访问模型服务商。1. 检查.env中OPENAI_API_KEY等配置是否正确且未过期。2. 在控制台“模型供应商”设置中检查对应供应商是否已启用并配置正确。知识库文档处理一直“索引中”Worker 服务异常向量数据库连接问题。1. 检查 Worker 日志docker-compose logs -f worker。2. 确认向量数据库如Weaviate容器是否正常运行docker-compose ps | grep weaviate。3. Dify 控制台初探与基础应用创建成功登录 Dify 控制台后让我们熟悉一下界面并创建第一个简单的 AI 应用。3.1 控制台界面导览Dify 控制台主要分为以下几个区域顶部导航栏包含工作空间切换、通知、用户设置等。左侧主菜单应用创建和管理你的AI应用核心区域。工作流可视化编排复杂逻辑企业版功能更全。知识库上传和管理文档构建专属知识库。工具管理自定义的API工具供智能体调用。日志与标注查看应用运行日志并对结果进行人工标注以优化模型。设置系统设置、模型供应商配置、成员管理等。3.2 创建你的第一个对话型应用我们将创建一个简单的、基于提示词的对话机器人。点击“创建应用”在“应用”页面点击右上角“创建应用”按钮。选择应用类型选择“对话型应用”。给它起个名字例如“我的第一个AI助手”并添加描述。进入应用编排界面创建后会进入该应用的编排界面。核心是中间的“提示词编排”区域。编写系统提示词在“系统提示词”框中输入定义AI角色和能力的指令。例如你是一个乐于助人且专业的AI助手。你的回答应该清晰、准确、友好。如果用户的问题超出你的知识范围请诚实地告知而不是编造信息。配置模型与参数模型在右侧“模型”区域选择一个已配置的模型例如gpt-3.5-turbo。参数可以调整温度控制创造性越高越随机、最大生成长度等。初次使用可保持默认。预览与调试点击右上角“预览”按钮会在右侧打开一个聊天窗口。输入“你好介绍一下你自己”测试AI是否按照系统提示词回应。发布应用测试无误后点击顶部“发布”按钮。发布后你可以通过两种方式访问该应用Web 访问获得一个独立的网页聊天链接。API 集成获得 API 端点Endpoint和密钥App Key可以在你自己的代码或系统中调用。3.3 通过 API 调用你的应用发布应用后Dify 提供了标准的 API 接口。以下是一个使用 Pythonrequests库调用对话应用的示例# 文件call_dify_app.py import requests import json # 替换为你的实际信息 API_KEY app-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # 在应用发布页面获取的 App Key ENDPOINT https://api.dify.ai/v1/chat-messages # 如果你的Dify是本地部署地址可能是 http://localhost:5001/v1/chat-messages headers { Authorization: fBearer {API_KEY}, Content-Type: application/json } # 构建请求体 payload { inputs: {}, # 传入的变量如果提示词中有 {{variable}}可以在这里赋值 query: 你好今天天气怎么样, # 用户输入的问题 response_mode: blocking, # 响应模式blocking同步, streaming流式 conversation_id: , # 会话ID用于多轮对话留空则创建新会话 user: test_user_001 # 用户标识用于区分不同用户 } try: response requests.post(ENDPOINT, headersheaders, datajson.dumps(payload)) response.raise_for_status() # 检查请求是否成功 result response.json() # 打印AI的回复 print(AI回复, result.get(answer, 未收到回复)) # 打印完整的响应包含对话ID等元数据 print(完整响应, json.dumps(result, indent2, ensure_asciiFalse)) except requests.exceptions.RequestException as e: print(f请求出错{e}) except json.JSONDecodeError as e: print(f解析响应出错{e})运行这个脚本你将获得与在Web预览中相同的AI回复。这证明了你的应用已经成功通过API对外提供服务。4. 构建复杂应用工作流与智能体实战基础对话应用只是开始。Dify 真正的威力在于其工作流功能它允许你构建多步骤、带逻辑判断的复杂AI应用即所谓的“智能体”。4.1 工作流核心概念与节点在工作流中每个步骤都是一个“节点”。Dify 提供了多种类型的节点开始节点工作流的入口。LLM节点调用大模型。知识库节点从已上传的知识库中检索相关信息。代码节点执行 Python 或 JavaScript 代码。工具节点调用预定义的工具如HTTP请求、数据库查询。判断节点根据条件决定流程走向。回答节点输出最终结果。节点之间通过“边”连接数据从前一个节点的输出流向下一个节点的输入。4.2 实战案例构建一个“天气查询穿衣建议”智能体我们将创建一个工作流它首先根据用户输入的城市查询天气模拟然后根据天气情况调用大模型生成穿衣建议。步骤 1创建新的工作流应用在“应用”页面点击“创建应用”这次选择“工作流”类型命名为“智能天气穿衣助手”。进入工作流编排画布。步骤 2添加并配置节点我们将依次添加以下节点并连线开始节点自动存在是流程的起点。LLM节点提取城市从画布左侧拖拽一个“LLM”节点到画布。将其连接到“开始”节点。配置该节点模型选择一个快速便宜的模型如gpt-3.5-turbo。系统提示词你是一个信息提取助手。请从用户的输入中提取出城市名称。如果输入中没有明确城市则输出“未知”。只输出城市名不要有其他内容。用户输入点击变量选择器选择{{#sys.query#}}这是系统自动传入的用户问题变量。输出变量将本节点的输出命名为extracted_city。这样提取出的城市名就可以被后续节点使用。代码节点模拟天气查询拖拽一个“代码”节点到画布连接到上一步的LLM节点。配置该节点语言选择Python。代码输入以下模拟逻辑。在实际项目中这里可以替换为调用真实天气API如和风天气、OpenWeatherMap的代码。# 输入来自上一个节点的 extracted_city city inputs[extracted_city] # 一个简单的模拟天气数据字典 weather_mock_data { 北京: {condition: 晴, temp_high: 25, temp_low: 15}, 上海: {condition: 多云, temp_high: 28, temp_low: 20}, 广州: {condition: 雨, temp_high: 32, temp_low: 26}, 深圳: {condition: 阴, temp_high: 30, temp_low: 24}, 未知: {condition: 未知, temp_high: 20, temp_low: 10} } # 获取天气如果城市不在字典中返回默认值 weather_info weather_mock_data.get(city, {condition: 数据暂缺, temp_high: 0, temp_low: 0}) # 构建一个格式化的天气描述字符串作为本节点的输出 weather_description f{city}的天气是{weather_info[condition]}最高气温{weather_info[temp_high]}°C最低气温{weather_info[temp_low]}°C。 # 输出 print(f模拟查询城市 [{city}] 的天气完成。) outputs { weather_desc: weather_description, condition: weather_info[condition], temp_high: weather_info[temp_high], temp_low: weather_info[temp_low] }输出变量代码中定义的outputs字典的键会自动成为输出变量。我们将主要使用weather_desc。LLM节点生成穿衣建议再拖拽一个“LLM”节点连接到代码节点。配置该节点模型选择一个更擅长分析的模型如gpt-4。系统提示词你是一个贴心的生活助手。请根据提供的天气信息给出详细、实用的穿衣建议。建议应包含上下装、外套、配饰等并说明理由。语气亲切自然。用户输入我们需要构建一个包含天气信息的提示词。可以这样写请根据以下天气情况为我提供穿衣建议 天气信息{{#weather_desc#}}这里{{#weather_desc#}}就是引用上一个代码节点的输出变量。回答节点拖拽一个“回答”节点连接到最后一个LLM节点。配置该节点这个节点很简单它将上游LLM节点的输出即穿衣建议作为最终回复返回给用户。通常无需额外配置。步骤 3运行测试点击画布右上角的“预览”按钮。在右侧聊天框输入“今天北京天气怎么样我该穿什么”观察工作流的执行过程。你可以看到数据流经每个节点并在“运行跟踪”中查看每个节点的输入和输出。最终你应该会收到一个结合了模拟天气数据和GPT生成的穿衣建议的回复。通过这个案例你看到了工作流如何将信息提取、外部数据获取模拟、逻辑判断可扩展和智能生成串联起来形成一个功能完整的智能体。4.3 进阶集成真实工具与知识库要让智能体更强大需要集成真实世界的工具和数据。集成真实天气API 在上述工作流的“代码节点”中将模拟代码替换为调用真实API的代码。你需要先到天气API服务商注册获取Key。import requests # 示例使用和风天气API需要注册并替换YOUR_KEY def get_real_weather(city): api_key YOUR_HEFENG_API_KEY location_url fhttps://geoapi.qweather.com/v2/city/lookup?key{api_key}location{city} # 先获取城市ID loc_resp requests.get(location_url).json() if loc_resp[code] ! 200: return f无法找到城市{city}。 city_id loc_resp[location][0][id] # 再获取天气 weather_url fhttps://devapi.qweather.com/v7/weather/now?key{api_key}location{city_id} weather_resp requests.get(weather_url).json() # ... 解析响应构建 weather_description ... return weather_description # 在代码节点中调用此函数接入知识库 如果你的智能体需要基于公司文档、产品手册等内部知识回答问题可以创建知识库。在“知识库”页面创建新知识库上传PDF、Word、TXT等文档。在工作流中在“开始节点”后添加一个“知识库检索”节点。配置该节点选择你创建的知识库并将用户问题{{#sys.query#}}作为查询输入。检索到的相关文档片段会作为变量输出你可以将其拼接到后续LLM节点的提示词中让模型基于这些文档进行回答。这是构建企业级问答机器人的核心。5. 最佳实践与工程建议将Dify用于实际项目时遵循一些最佳实践可以提升应用的稳定性、安全性和可维护性。5.1 提示词工程优化清晰的角色与指令系统提示词要明确AI的角色、任务范围和回答格式。例如“你是一个只回答编程问题的助手对于非技术问题请礼貌拒绝。”结构化输出要求如果需要JSON、XML或特定格式在提示词中明确说明。例如“请以JSON格式输出包含summary和keywords两个字段。”少样本示例Few-Shot在提示词中提供1-3个输入输出的例子能显著提升模型在复杂任务上的表现。变量使用善用Dify的上下文变量如{{#variable#}}使提示词模板化提高复用性。5.2 工作流设计原则模块化将复杂流程拆分成多个子工作流或可复用的节点组。例如将“数据清洗”和“报告生成”做成独立模块。错误处理在工作流中关键节点后考虑添加“判断节点”来检查上一步的输出是否有效。无效时可以跳转到错误处理分支或直接返回友好提示。日志与调试充分利用Dify提供的“运行跟踪”功能。在关键节点的输出中可以添加print语句代码节点或通过变量传递状态信息便于排查问题。性能考量LLM节点通常是瓶颈。对于长文本处理考虑先使用“文本分割”节点再并行或分批处理。避免在循环中频繁调用昂贵模型如GPT-4。5.3 生产环境部署与运维配置分离不要将API密钥等敏感信息硬编码在提示词或代码节点中。使用Dify的“工具”功能或环境变量来管理。数据库与向量库对于生产环境强烈建议使用外部高可用的PostgreSQL/MySQL和向量数据库如Milvus集群、PGVector而不是Docker Compose中的内置服务。版本控制Dify应用和工作流的配置可以导出为JSON文件。建议将这些文件纳入Git版本控制实现配置即代码Configuration as Code。监控与告警监控API调用量、响应时间、错误率。Dify提供了基本的日志但可以集成到ELK、Prometheus等监控体系中。关注Token消耗以控制成本。权限管理合理使用Dify的企业版团队协作功能为不同成员分配应用、知识库的查看、编辑、运营权限。5.4 安全与合规输入输出过滤对用户输入进行必要的清洗和过滤防止提示词注入攻击。对模型的输出特别是当它用于影响外部系统时要进行验证和沙箱隔离。数据隐私如果处理敏感数据如客户信息、内部文档确保知识库的访问权限严格控制。考虑对数据进行脱敏处理后再存入知识库。审计日志开启并定期检查Dify的操作日志和对话日志以满足合规性要求。6. 常见问题与深度排查指南即使遵循了最佳实践在实际开发中仍会遇到各种问题。这里提供一个深度排查框架。6.1 应用层面问题问题AI回复质量差、答非所问或胡言乱语。排查步骤检查提示词回顾系统提示词和用户输入是否清晰、无歧义。尝试在OpenAI Playground等原生界面测试相同提示词。检查上下文如果是多轮对话确认对话历史是否正确传递。检查conversation_id是否在API调用中保持一致。检查模型参数过高的“温度”可能导致随机性太强。尝试调低温度如0.2以获得更确定性的回答。检查知识库检索如果使用了知识库检查检索到的文档片段是否相关。可以调整知识库的检索模式相似度阈值、检索数量和分块策略。查看完整日志在Dify的“日志与标注”中查看该次请求的详细日志包括每个节点的输入输出定位问题发生在哪个环节。问题工作流执行失败卡在某个节点。排查步骤查看节点状态在“运行跟踪”中查看失败节点的状态和错误信息。检查节点配置确认节点的输入变量名是否正确引用。变量名区分大小写且必须完全匹配。检查代码节点如果是代码节点出错查看其打印的日志。确保代码语法正确且正确处理了边界情况如空输入。检查外部依赖如果节点调用了外部API或数据库检查网络连通性、API密钥有效性、服务可用性。6.2 部署与系统层面问题问题Dify服务运行缓慢处理请求超时。排查步骤资源监控使用docker stats或top命令查看CPU、内存使用率。Worker服务处理知识库索引时资源消耗较大。数据库性能检查关系数据库和向量数据库的负载。知识库文档量大时向量检索可能变慢。考虑优化索引或升级硬件。模型API延迟大模型API尤其是GPT-4的响应时间可能很长。考虑使用超时设置或在工作流中使用异步调用。队列堆积检查Celery Worker是否有积压的任务。可以增加Worker实例数。问题无法上传文件到知识库或索引一直不成功。排查步骤文件格式与大小确认文件格式在支持列表中.txt, .pdf, .docx, .md等且未超过大小限制。Worker日志运行docker-compose logs -f worker查看具体的索引错误信息。常见问题包括文本编码错误、PDF解析库缺失等。向量库连接确认向量数据库如Weaviate容器运行正常且网络可通。嵌入模型检查嵌入模型如text-embedding-ada-002的API调用是否正常。如果使用本地嵌入模型确认其服务已启动。6.3 成本与优化Token消耗分析在Dify企业版或通过模型供应商后台分析各应用的Token使用情况。优化提示词减少不必要的上下文长度。模型选型非核心任务使用性价比更高的模型如GPT-3.5-Turbo关键任务再使用GPT-4等高级模型。缓存策略对于常见、结果变化不频繁的查询可以考虑在应用层或使用Dify的变量功能实现简单的缓存避免重复调用LLM。从理解Dify作为LLM应用开发“操作系统”的定位到成功在本地部署全套服务从创建第一个简单的对话应用到设计出包含逻辑判断和外部工具调用的智能体工作流我们完成了一次完整的入门到进阶的实践。Dify的价值在于它抽象了底层复杂性让开发者能聚焦于业务逻辑和用户体验的设计。掌握Dify后你可以快速将想法原型化。无论是构建一个智能客服、一个合同分析工具还是一个自动化的内容生成流水线Dify提供的可视化编排和一体化管理能力都能大幅提升开发效率。建议你接下来可以深入探索其知识库的高级功能如混合检索、重排序、工具市场的集成并结合具体的业务场景设计出真正解决实际问题的AI应用。

相关新闻

Dify AI应用UI定制全攻略:从主题换肤到独立前端开发

Dify AI应用UI定制全攻略:从主题换肤到独立前端开发

如果你正在用 Dify 构建 AI 应用,是否曾有过这样的困惑:为什么我的应用界面看起来和别人的一模一样?当我想把 AI 能力嵌入到自己的产品、官网或内部系统时,那个标准的 Dify 聊天窗口,总显得格格不入。这恰恰是很多开发…

2026/7/1 3:22:07阅读更多 →
政企视频会议私有化:数据主权与合规审计的必答题

政企视频会议私有化:数据主权与合规审计的必答题

政企视频会议的真实痛点:数据主权失控与审计黑洞如何同时出现 一次看似常规的远程会议,可能成为政务、金融单位最隐秘的合规风险敞口。会议中讨论的未公开政策细节、内部敏感数据、甚至屏幕上共享的机密文件,如果经由公有云服务器中转或存储&…

2026/7/1 3:22:07阅读更多 →
Dify私有化部署UI深度定制指南:从主题色到自定义组件

Dify私有化部署UI深度定制指南:从主题色到自定义组件

这次我们来看一个对开发者、产品经理和AI应用构建者都非常实用的主题:如何个性化自定义Dify应用的UI界面。Dify作为一个开源的AI应用开发平台,其核心价值在于让用户无需编写复杂代码,就能通过可视化工作流快速构建和部署AI应用。然而&#xf…

2026/7/1 3:22:07阅读更多 →
WebRTC远程屏幕共享:浏览器直连桌面的终极解决方案

WebRTC远程屏幕共享:浏览器直连桌面的终极解决方案

WebRTC远程屏幕共享:浏览器直连桌面的终极解决方案 【免费下载链接】webrtc-remote-screen Stream a remote desktop screen directly to your browser 项目地址: https://gitcode.com/gh_mirrors/we/webrtc-remote-screen 还在为复杂的远程协助工具而烦恼吗…

2026/7/1 4:32:20阅读更多 →
02构建Agent的主流框架工具

02构建Agent的主流框架工具

随着大模型能力的增强,AI Agent(智能体) 已成为连接模型与现实任务的关键桥梁。Agent 框架通过集成规划(Planning)、记忆(Memory)、工具调用(Tool Use)和多智能体协作&am…

2026/7/1 4:32:20阅读更多 →
Claroty 是如何保障 半导体产线 工控系统网络安全 与 合规落地?

Claroty 是如何保障 半导体产线 工控系统网络安全 与 合规落地?

盘点 OT 资产:半导体产线有大量来自不同供应商的PLC、SCADA、各类专用工业主机等。Claroty 可解析 600 种工业通信协议,包括:半导体专有协议SECS/GEM。在不影响产线 7x24 小时连续性的前提下,精准识别并盘点所有连接在网络中的 OT…

2026/7/1 4:32:20阅读更多 →
公园景观改造首选智能雾森系统 四季可用打造常态化唯美雾景

公园景观改造首选智能雾森系统 四季可用打造常态化唯美雾景

公园景观的改造和升级是提升城市环境和居民生活质量的重要手段。在众多景观改造方案中,智能雾森系统因其独特的功能和美观效果,成为了许多公园和景区的首选。本文将详细介绍美彦驱蚊系统的独特优势及其在公园景观改造中的应用。一、美彦驱蚊系统简介美彦…

2026/7/1 4:32:20阅读更多 →
VCap Downloader 终身授权

VCap Downloader 终身授权

链接:https://pan.quark.cn/s/80fe53de6339VCap Downloader (VCapDL) 是一款通用的视频/音频下载工具,拥有标准的浏览器界面。它旨在从各种互联网网站捕获和下载视频和音频。

2026/7/1 4:32:20阅读更多 →
龙门剪刀片厂家考量方式一览

龙门剪刀片厂家考量方式一览

在废金属回收、塑料再生及木材加工等行业中,龙门剪刀片作为剪切设备的核心耗材,其品质直接决定了生产线效率与运维成本。面对市场上纷繁复杂的供应商信息,许多采购者常陷入“找对厂家难、选准刀片难、控制成本难”的困境。本文从行业痛点出发…

2026/7/1 4:27:20阅读更多 →
AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

6个月前的2025年12月,Boris Cherny 公开宣布自己卸载了 IDE。一时间,Vibe Coding 成了全行业最热的话题。6个月后,当我们回过头来拉一份真实账本,发现事情远没有"一句话生成一个App"那么浪漫。本文从产品经理和研发两个…

2026/6/30 4:03:30阅读更多 →
审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

引言:审计结束三个月了,审计员的权限还没关某城商行每年按照监管要求开展至少一次数据安全审计。审计期间,内审部门需要抽样检查各类业务数据——交易流水、客户信息、员工操作日志、权限配置记录。这些数据分布在不同系统中,审计…

2026/6/30 4:36:27阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/1 0:01:44阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/1 0:01:44阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/1 0:01:44阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/1 0:01:44阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/1 0:01:44阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/1 0:01:44阅读更多 →