工具教程

Dify零基础完全使用教程:拖拽搭出你的第一个AI智能体,本地部署+DeepSeek接入+每日资讯摘要Agent实战

AI执行官

昨天你可能还在为”接不上 AI 大模型”发愁——今天 GitHub Trending 榜首给了一个答案:Dify。这是一个完全开源、本地部署、拖拽就能搭出 AI 智能体的可视化工作台。不需要写代码,不需要懂 Python,把模型、知识库、工具、流程像搭积木一样粘起来,就能做出”输入问题自动查资料 + 调用工具 + 输出结果”的 AI 应用。

这篇文章用一个”AI 每日资讯摘要 Agent”的实战案例,从零带你跑通 Dify 整个流程。读完后,你能在自己电脑上做一个真正能用的 AI 智能体——而不是只停留在”听说 Dify 是个低代码平台”的阶段。

什么是 Dify?3句话讲清楚

  • Dify 是个”搭 AI 应用的可视化工作台”:不用写很多代码,拖拖拽拽就能做出能回答问题、能查资料、能调用工具的 AI 应用
  • 它是开源的、可完全本地部署:你的数据可以不出本机,隐私绝对安全
  • 它把 LLM 应用从原型到生产的工程链路全部收敛到一个平台:模型接入、RAG、工作流、Agent、可观测、多渠道发布——都在一个界面里完成

Dify 解决的核心问题:模型层和应用层之间,必须有一个”应用编排层”来把模型、知识、工具、流程粘合起来。2023 年 a16z 提出”可组合 AI 技术栈”的判断之后,行业共识已经清晰——Dify 正是这个层里社区最活跃的开源实现(GitHub 仓库 langgenius/dify)。

你用 Dify 能做什么?

  • 企业知识库问答 Bot:把公司的产品手册、规章制度上传到 Dify,做一个内部员工问答助手
  • 每日资讯摘要 Agent:自动抓取 10 个 RSS 源、调用 AI 总结、推送到微信
  • AI 简历筛选助手:上传 100 份简历,AI 自动按 JD 评估、生成飞书评估表
  • AI 短文案生成器:输入主题,AI 自动生成 5 版小红书/抖音文案
  • AI 客服分流:根据用户问题自动分类,转给对应的人工客服

今天这篇文章,我们要做”每日资讯摘要 Agent”——每天早上自动从几个 RSS 源抓取 AI 行业新闻,AI 自动总结成 200 字摘要,输出到指定位置。

第一步:部署 Dify(10分钟,本地 WSL 2)

Dify 部署在 Docker 上,最简单的方式是在 Windows 上用 WSL 2 跑(Mac 直接用 Docker Desktop)。

方法 A:Mac 用户(推荐)

  1. 安装 Docker Desktop:访问 docker.com/products/docker-desktop 下载 Apple Silicon 版
  2. 下载 Dify 源码:git clone https://github.com/langgenius/dify.git
  3. 进入目录:cd dify/docker
  4. 复制环境配置:cp .env.example .env
  5. 启动服务:docker compose up -d
  6. 等待 1-3 分钟,看到所有容器显示 “Up” 即启动成功

方法 B:Windows 用户(WSL 2)

  1. 在 Microsoft Store 搜索安装 Ubuntu 22.04 LTS(启用 WSL 功能后)
  2. 在 Ubuntu 中安装 Docker:sudo apt install docker.io docker-compose
  3. 下载 Dify:git clone https://github.com/langgenius/dify.git
  4. 后续步骤同 Mac

启动成功后,浏览器访问 http://localhost/install 进入初始化设置:

  1. 设置管理员邮箱和密码
  2. 进入主界面,看到”探索 / 工作室 / 知识库 / 工具”四个标签页

小贴士:

  • 首次启动可能需要 5 分钟拉镜像,耐心等
  • 如果 80 端口被占用,编辑 .env 把 EXPOSE_NGINX_PORT 改成 8080
  • 建议给 Docker 至少分配 4GB 内存(在 Docker Desktop → Settings → Resources)

第二步:接入大模型(5分钟,DeepSeek 性价比首选)

Dify 默认不绑定模型,需要你接入至少一个 LLM 才能用。最推荐 DeepSeek——国产、价格便宜、中文能力强。

  1. 访问 platform.deepseek.com,注册账号、开通 API、复制 API Key
  2. 在 Dify 主界面右上角点击”头像” → “设置” → “模型供应商”
  3. 找到 DeepSeek,点击”安装”
  4. 把 API Key 粘贴到 “API Key” 字段,保存

如果想完全本地、不用联网:可以装 Ollama(ollama.com)跑本地模型,但普通笔记本建议至少 16GB 内存。

接好模型后,可以在”工作室 → 创建空白应用”中选一个 Chatbot 类型,测试一下”你好”看是否能正常回复——能回复就说明模型接通了。

第三步:搭”每日资讯摘要 Agent”工作流(15分钟)

这一步是核心。我们要做的工作流是:每天早上 9 点,从 5 个 RSS 源抓取最新 20 条新闻,调用 AI 总结成 200 字摘要,输出到指定位置。

  1. 创建工作流应用

    在”工作室”页面,点击 “创建空白应用” → 选 “工作流”(Workflow)类型 → 命名”每日资讯摘要 Agent” → 创建。
  2. 添加”开始”节点

    系统会自动生成 START 节点。我们配置定时触发:

    • 触发方式:定时(Schedule)
    • 执行时间:每天 09:00
    • 输入参数:rss_urls(数组类型)、max_items(数字,默认 20)
  3. 添加”HTTP 请求”节点:抓取 RSS 内容

    在 START 节点后面添加 HTTP 请求节点:

    • 方法:GET
    • URL:{$start.rss_urls}(用循环节点会处理每条)
    • 超时:30 秒
  4. 添加”代码执行”节点:解析 XML

    RSS 返回的是 XML,需要解析提取每篇文章的标题、链接、发布时间。

    • 语言:Python
    • 输入:xml_content(字符串)
    • 代码示例(核心逻辑):
      import feedparser
      import json
      feed = feedparser.parse(xml_content)
      items = [{
          "title": e.title,
          "link": e.link,
          "published": e.published
      } for e in feed.entries[:20]]
      return {"items": items}
      
  5. 添加”循环”节点:处理每篇文章

    从解析结果中逐条处理:

    • 遍历:{$parse.items}
    • 循环体里添加 “LLM 节点” 调用 AI 总结
  6. 添加”LLM 节点”:AI 总结

    在循环体里配置:

    • 模型:deepseek-chat(你之前接好的)
    • 系统提示词:
      你是一个 AI 行业资讯编辑。请用中文将以下新闻标题和摘要压缩成 50-80 字的简洁摘要。
      要求:1. 突出技术亮点 2. 标注对普通人的影响 3. 不超过 80 字。
      
    • 用户输入:{$loop.item.title}\n{$loop.item.summary}
  7. 添加”代码节点”:合并结果

    把循环生成的每条摘要合并成一段:

    summary = "\n\n".join([item['summary'] for item in $loop.output])
    return {"full_summary": summary}
    
  8. 添加”结束”节点

    输出 full_summary 字段。

整个工作流的形状:START → 抓 RSS → 解析 XML → 循环处理每条 → 合并输出 → END。所有节点之间的连线都可以拖拽。

第四步:调试和发布(5分钟)

1. 测试运行:在右上角点击”运行”按钮,传入测试参数:

{
  "rss_urls": ["https://www.aibreakingwire.com/rss", "https://example.com/feed.xml"],
  "max_items": 20
}

2. 查看运行结果:每个节点会显示输入、输出、耗时,能直接看出哪里出问题。

3. 发布为 API:点击”发布” → “发布更新” → “API 访问”。Dify 会生成一个调用 URL:

POST http://localhost/v1/workflows/run
Headers: Authorization: Bearer YOUR_API_KEY
Body: {"inputs": {...}, "response_mode": "blocking"}

4. 对接定时任务:用系统 cron(Mac/Linux)或 Windows 任务计划,每天 9 点调用这个 API:

curl -X POST http://localhost/v1/workflows/run \
  -H "Authorization: Bearer app-xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"inputs": {"rss_urls": [...], "max_items": 20}, "response_mode": "blocking"}'

5. 推送结果到微信:在工作流末尾再加一个 HTTP 节点,调用企业微信或 Server酱的 webhook,把摘要推送到你手机上。

进阶玩法:把 Dify 接到自己的产品里

如果你有自己的网站或 App,想接入 AI 能力但不想从头开发,Dify 提供了标准 API:

// JavaScript 示例
const response = await fetch('http://your-dify/v1/chat-messages', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    inputs: {},
    query: '帮我写一份产品介绍',
    user: 'user-001',
    response_mode: 'streaming'
  })
});

可以做:

  • 网站智能客服
  • App 内的 AI 助手
  • 微信小程序里的”AI 问答”功能
  • Notion / 飞书 / Slack 内的 AI 命令

常见的 3 个坑和解决方法

坑 1:HTTP 节点超时

RSS 源响应慢会导致整个工作流卡住。解决方法:在 HTTP 节点设置超时 30 秒,并勾选”出错时继续”——单条失败不影响整批。

坑 2:循环节点变量引用

循环体内引用变量要用 {$loop.item.xxx} 的格式,不能直接用 {$xxx}。新手最容易在这里卡住——记住:循环里的变量都要带 loop. 前缀。

坑 3:AI 输出不稳定

同一个 prompt 多次运行可能输出格式不一样。解决方法:在提示词里明确”输出必须是 JSON 格式” + 启用 Dify 的”输出变量自动解析 JSON”功能。如果还是不稳,可以在 LLM 节点后加一个”代码节点”做兜底解析。

总结:Dify 适合谁?

Dify 适合:

  • 想搭一个 AI 应用但不会写代码的运营/产品/业务人员
  • 想做企业内部知识库问答的行政/HR/技术支持
  • 想给自己或客户做 AI 客服、AI 助手的独立开发者
  • 想搭 Agent 但不想从 0 写 LangChain 的程序员

Dify 不适合:

  • 需要高并发(>100 QPS)的生产服务(建议直接用 Python/Node 调 API)
  • 需要复杂的多模态工作流(Dify 的多模态节点还在完善中)
  • 需要严格的权限控制和审计(Dify Enterprise 版才有完整功能)

如果只是想体验,开通 dify.ai 云服务(每月免费 200 次调用)就能直接用;想完全本地化、零成本,就按本文方法用 Docker 部署。

下一步可以做什么:把你公司的产品手册上传到 Dify 知识库,做一个”AI 客服 Bot”;或者把今天的这篇文章扔进 Dify,让它每天自动总结成 200 字摘要发到你的微信。试试看,你也能在半小时内做出自己的第一个 AI 智能体。

分享给朋友