news 2026/7/7 16:26:01

【Agent智能体】12Python调用Dify

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Agent智能体】12Python调用Dify

章节十二:Python调用Dify

一、Dify API概述

了解Dify平台及其API调用方式。

Dify:一个开源的大语言模型应用开发平台,可以通过可视化界面搭建AI应用。Dify提供了标准的API接口,让开发者可以用代码调用搭建好的应用和工作流。

API Key:访问Dify API的身份凭证。每个应用都有独立的API Key,调用时需要放在请求头里进行身份验证。

Base URL:Dify API的服务地址。如果使用Dify官方云服务,地址是https://api.dify.ai/v1;如果是自己部署的,换成自己的服务器地址。

第一步:在Dify平台上创建应用并发布
第二步:在应用概览页面获取API Key
第三步:确定Base URL(官方服务或私有部署)
第四步:安装requests库,准备调用代码


二、调用工作流

掌握Python调用Dify工作流的方法。

工作流(Workflow):Dify中通过拖拽节点搭建的自动化流程。比如一个调研报告生成工作流可能包含:接收主题→搜索信息→大纲生成→内容填充→总结输出。

流式输出(Streaming):服务器一边生成内容一边推送,就像打字机效果,不用等全部内容生成完才显示。

阻塞式输出(Blocking):等所有内容生成完再一次性返回。适合执行时间较短的任务。

第一步:确定要调用的工作流和输入参数
第二步:设置请求头(包含Authorization和Content-Type)
第三步:拼接请求体(包含inputs、response_mode、user等字段)
第四步:发送POST请求到/workflows/run接口
第五步:解析响应数据,获取工作流执行结果

# 功能说明:Python调用Dify工作流# 核心操作:设置API Key → 拼接请求参数 → POST请求 → 解析响应

三、处理流式响应

掌握流式响应数据的处理方法。

SSE(Server-Sent Events):服务器向客户端推送实时数据的技术。Dify的流式输出就是基于SSE实现的,数据一行一行推送过来。

事件类型:流式响应中包含不同类型的事件,比如workflow_started(工作流开始)、node_started(节点开始执行)、node_finished(节点执行完成)、workflow_finished(工作流结束)。

第一步:发送请求时设置stream=True保持连接
第二步:逐行读取服务器推送的数据
第三步:去除SSE格式的"data: "前缀
第四步:解析JSON数据,根据事件类型分别处理
第五步:当收到workflow_finished事件时,提取最终输出结果

# 功能说明:处理Dify流式响应# 核心操作:stream=True → 逐行读取 → 解析JSON → 提取结果

四、查看执行日志

掌握在Dify后台查看工作流执行记录的方法。

日志追踪:Dify提供了可视化的日志页面,可以查看每次工作流调用的详细记录,包括每个节点的输入输出、执行时间、消耗token数等。

第一步:进入Dify工作空间,找到对应的应用
第二步:点击"日志与标注"菜单查看执行记录
第三步:点击某条记录查看详情,包括输入参数和输出结果
第四步:点击"追踪"查看工作流中每个节点的执行详情


五、工作空间管理

了解Dify工作空间的基本操作。

工作空间:Dify中项目管理的基本单位,一个工作空间可以包含多个应用(智能体、工作流、知识库等)。

成员管理:可以邀请团队成员加入工作空间,设置不同的权限角色(管理员、编辑者、查看者)。

第一步:创建工作空间或加入已有工作空间
第二步:在工作空间中创建应用
第三步:配置应用的模型、知识库、工具等资源
第四步:发布应用并获取API Key进行调用

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 16:24:23

3步解锁OpenWrt路由器极限性能:Turbo ACC网络加速终极指南

3步解锁OpenWrt路由器极限性能:Turbo ACC网络加速终极指南 【免费下载链接】turboacc 一个适用于官方openwrt(22.03/23.05/24.10) firewall4的turboacc 项目地址: https://gitcode.com/gh_mirrors/tu/turboacc 还在为家庭网络卡顿、游戏延迟高、视频缓冲慢而…

作者头像 李华
网站建设 2026/7/7 16:23:17

D2DX现代化补丁终极指南:让经典暗黑2在现代PC上焕发新生

D2DX现代化补丁终极指南:让经典暗黑2在现代PC上焕发新生 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 你是否还…

作者头像 李华
网站建设 2026/7/7 16:19:48

还在花钱买 TTS?这款免费工具直接“借用”微软 Edge 的高质量语音

还在花钱买 TTS?这款免费工具直接“借用”微软 Edge 的高质量语音 🔍 什么是 edge-tts? 🎯 核心优势 📦 安装与快速上手 安装方式 基础命令速览 🎛️ 高级用法与定制 更换发音人 调整语速、音量、音调 🐍 在 Python 项目中使用 基础用法 流式生成(低延迟场景) ✨…

作者头像 李华
网站建设 2026/7/7 16:18:38

Mac用户终极救星:3分钟搞定PDM文件查看,免费开源工具完整指南

Mac用户终极救星:3分钟搞定PDM文件查看,免费开源工具完整指南 【免费下载链接】ParsePDM Mac os 查看PDM文件 项目地址: https://gitcode.com/gh_mirrors/pa/ParsePDM 还在为Mac上无法查看PDM文件而烦恼吗?作为一名数据库设计师或开发…

作者头像 李华
网站建设 2026/7/7 16:15:36

LV30条码扫描器与PIC18F86J16嵌入式系统设计

1. LV30条码扫描器与PIC18F86J16的硬件选型解析在工业自动化和零售管理领域,条码识别系统的核心组件选型直接影响着整个系统的可靠性和适应性。LV30作为一款经典的激光条码扫描模块,其光学特性与PIC18F86J16微控制器的组合,构成了一个极具性价…

作者头像 李华