当前位置: 首页 > news >正文

Dify工作流实战:输入接口名,自动生成带源码的Markdown API文档(附完整Prompt)

1:dify工作流介绍

第一节:工作流流程如下

一共四个节点:

第一个节点:允许用户上传文件和一个可输入的文本框

第二个节点:文档提取节点

第三个节点:大语言模型节点

提示词如下:

你需要使用Dify的工作流,根据用户输入的接口名称,从上传的Java类中的众多方法的注释(注释格式为/***/)里,找到匹配度最高的一个接口方法,最终生成该方法的API文档(使用markdown格式),并输出匹配到的方法源码。

以下是上传的Java类代码:

<java_class_code>

}

</java_class_code>

以下是用户输入的接口名称:

<interface_name>

}

</interface_name>

查找匹配接口方法时,请按以下步骤进行:

1. 仔细扫描Java类中的所有方法,提取每个方法注释中的关键信息。

2. 将每个方法注释中的关键信息与用户输入的接口名称进行对比。

3. 从对比中找出匹配度最高的一个接口方法。

生成API文档时,请确保包含以下内容:

1. 接口名称

2. 接口描述(从方法注释中提取)

3. 请求方式(如果注释中有提及)

4. 请求URL(如果注释中有提及)

5. 请求参数(如果注释中有提及)

6. 返回值(如果注释中有提及)

7. 异常处理(如果注释中有提及)

请先在<思考>标签中详细说明你查找和匹配接口方法的推理过程。然后在<api_document>标签中输出API文档,确保使用markdown格式。最后在<method_source_code>标签中输出匹配到的方法源码。

<思考>

[在此详细说明查找和匹配接口方法的推理过程]

</思考>

<api_document>

[在此输出API文档,使用markdown格式]

</api_document>

<method_source_code>

[在此输出匹配到的方法源码]

</method_source_code>

第四个节点:结果展示节点

2:测试java类


import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import java.util.Date;@Slf4j
@RestController
public class UserTestController {/*** 使用用戶名和密码登录* @param userName 用户名* @param pwd 密码* @return*/@PostMapping("/user/login")public String userLogin(@RequestParam(name = "userName") String userName,@RequestParam(name = "pwd") String pwd) {return "success";}/*** 获取用户生日* @param userId 用户ID* @param otherParam 其他参数* @return*/@PostMapping("/user/birthday")public Date getUserBirthday(@RequestParam(name = "userId") String userId,@RequestParam(name = "otherParam",required = false) String otherParam) {return new Date();}@PostMapping("/user/modifyPwd")public String modifyPwd(@RequestParam(name = "userName") String userName,@RequestParam(name = "oldPwd") String oldPwd,@RequestParam(name = "newPwd") String newPwd,@RequestParam(name = "againNewPwd",required = false)String againNewPwd) {return "success";}
}

3:测试结果

第一:方法名称和参数有完整说明情况

第二:方法名称和参数没有任何说明情况

第三:方法名称和参数有说明,入参可选情况

第四:无命中情况

http://www.dtcms.com/a/268801.html

相关文章:

  • Linux 文件系统与日志分析(补充)
  • 报错 400 和405解决方案
  • 海外短剧系统开发:PC端与H5端的全栈实践与深度解析
  • Day07- 管理并发和并行挑战:竞争条件和死锁
  • 在bash shell 函数传递数组的问题2
  • 【DeepSeek实战】17、MCP地图服务集成全景指南:高德、百度、腾讯三大平台接入实战
  • PCIE Ack/Nak机制详解
  • Unity 实现与 Ollama API 交互的实时流式响应处理
  • ES 压缩包安装
  • socket接口api的深度探究
  • 初识Neo4j之Cypher
  • 【Unity笔记】Unity 粒子系统 Triggers 使用解析:监听粒子进入与离开区域并触发事件
  • 在 macOS 上安装和测试 LibreOffice
  • 深入解析TCP:可靠传输的核心机制与实现逻辑(三次握手、四次挥手、流量控制、滑动窗口、拥塞控制、慢启动、延时应答、面向字节流、粘包问题)
  • 借助HarmonyOS SDK,《NBA巅峰对决》实现“分钟级启动”到“秒级进场”
  • 【7】PostgreSQL 事务
  • SRAM与三级缓存(L1/L2/L3 Cache)的关系
  • 芯谷科技--高性能双运算放大器D358
  • 第二届云计算与大数据国际学术会议(ICCBD 2025)
  • 火山引擎Data Agent全面上线售卖!以企业级数据智能体,重构数据应用范式
  • PostgreSQL中的HASH分区:原理、实现与最佳实践
  • 查看WPS Ofice是64位还是32位
  • 腾讯云 CDN 不支持 WebSocket 的现状与华为云 CDN 的替代方案-优雅草卓伊凡
  • 缺乏项目进度追踪工具,如何选择适合的工具
  • 中电金信 :十问高质量数据集:金融大模型价值重塑有“据”可循
  • 案例分享:应用VIC-3D High-Speed FFT进行吉他拨弦振动的工作变形ODS测量
  • QML中的Item
  • 【银行测试】手机银行APP专项项目+测试点汇总(二)
  • RESTful API概念和设计原则
  • C++之string类的实现代码及其详解(中)