Dify 核心功能有哪些?主要解决什么场景?
Dify 是开源 LLM 应用开发平台(GitHub 10万+ Star),核心解决 AI 应用从原型到生产的工程化难题,将 LLM 能力封装为可视化低代码服务。
核心功能
模型管理:统一接入 OpenAI、Anthropic、Gemini、智谱、Mistral 等主流模型及 Ollama 本地模型,通过模型仓库实现版本控制和灰度发布。
工作流编排:拖拽式画布构建 AI 工作流,支持 LLM、条件分支、知识检索、代码执行、HTTP 请求等节点,条件路由实现动态分支,v1.14.0 新增多人实时协作编辑。
RAG 引擎:端到端检索增强管道,支持 PDF、Word、Markdown、CSV 等文档自动解析与向量化,Agentic RAG 将检索嵌入推理循环实现动态优化。
Agent 框架:支持 Function Calling 和 ReAct 两种模式,内置 50+ 工具,原生支持 MCP 双向集成,Agent 节点封装意图分析、工具编排和重试逻辑。
可观测性:日志追踪、Token 监控、TTFT 报表,集成 Langfuse,支持生产环境质量与成本双管控。
解决场景
智能客服:RAG 对接企业知识库,处理咨询和工单分类,响应从秒级降至亚秒级,支持 Human-in-the-Loop 人工审批。
内容生成:自动生成摘要和结构化输出(JSON),支持定时批量处理,减少人工编辑量。
流程自动化:工作流嵌入现有系统,Webhook 和 RESTful API 实现事件驱动自动化。
企业平台:SSO、访问控制、租户隔离、Docker + K8s 部署,Billing 系统追踪各团队用量。
代码示例
pythonimport os, requests API_KEY = os.getenv("DIFY_API_KEY") def call_dify_workflow(user_input: str, user_id: str = "user-001"): url = "https://api.dify.ai/v1/workflows/run" headers = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"} payload = {"inputs": {"query": user_input}, "response_mode": "blocking", "user": user_id} return requests.post(url, headers=headers, json=payload).json() result = call_dify_workflow("查询最近7天的订单状态") print(result)
追问
Q1: RAG 如何处理多格式文档? 自动解析 PDF、Word、Markdown、CSV 等,分段加向量化建立索引,可配置相似度阈值。Agentic RAG 模式能在推理中动态调整检索策略。
Q2: 工作流和 LangChain 有什么区别? Dify 提供可视化编排和内置 RAG、Agent、可观测性,偏平台化快速交付;LangChain 是代码级框架,灵活性高需更多编码,偏工具链定制。
Q3: MCP 支持意味着什么? MCP 双向集成:既可作为 Client 调用外部工具服务,也可将工作流发布为 MCP Server 供其他客户端调用,v1.14.0 已原生支持无需插件中转。
Q4: Function Calling 和 ReAct 怎么选? 工具调用明确且流程可预定义用 Function Calling,效率高消耗低;需多轮推理和动态决策的复杂任务用 ReAct。
Q5: 企业部署注意什么? 租户隔离(v1.14.2 加固)、API Key 限流、HTTPS 加密、Docker 加 K8s 部署配合 Prometheus 监控,密钥通过环境变量管理。