ChatGPT生成接口文档实践案例(二)

不难发现,两个方案都出色地完成了接口文档的生成,但笔者更喜欢Response 2的表达,因为其描述更加全面。

还可以让ChatGPT生成符合OpenAPI 3.0规范的接口文档,以便于项目相关成员阅读,如图5-13所示。

为什么要生成OpenAPI 3.0规范的接口文档呢?下面简单介绍一下OpenAPI 3.0。OpenAPI 3.0(又称为OpenAPI Specification 3.0或OAS 3.0)是一种规范,专门用于描述RESTful API(Application Programming Interface,应用程序接口)。它是OpenAPI 2.0(之前称为Swagger)的升级版。OpenAPI 3.0的目标是提供更丰富的API文档和规范,以便开发人员更好地理解和使用API。这一规范采用JSON(JavaScript Object Notation,JS对象简谱)或YAML(YAML Ain't a Markup Language,YAML不是标记语言)格式,因此易于阅读和编写。开发人员可以利用各种工具生成API文档,以更轻松地构建和维护API文档。这有助于提高API的可互操作性,促进不同开发团队之间的合作。

图5-13 ChatGPT生成的符合OpenAPI 3.0规范的接口文档(部分)

ChatGPT生成的符合OpenAPI 3.0规范的接口文档如下所示。

ChatGPT 生成的符合 OpenAPI 3.0 规范的接口文档

以下是用户注册接口的 OpenAPI 3.0.0 格式文档:

openapi: 3.0.0

info:

title: 飞机订票系统

description: 飞机订票系统用户注册接口文档

version: 1.0.0

paths:

/cgi-bin/login.pl:

post:

summary: 新用户注册接口

description: 新用户注册接口,用户可以通过此接口进行注册。注册信息包括用户名、密码、确认密码、名字、姓氏、街道地址和城市邮编等。

requestBody:

required: true

content:

application/x-www-form-urlencoded:

schema:

type: object

properties:

username:

type: string

description: 用户名

password:

type: string

description: 密码

passwordConfirm:

type: string

description: 确认密码

firstName:

type: string

description: 名字

lastName:

type: string

description: 姓氏

address1:

type: string

description: 街道地址

address2:

type: string

description: 城市邮编

register.x:

type: number

description: 注册x坐标

register.y:

type: number

description: 注册y坐标

responses:

'200':

description: 注册成功

content:

text/html:

schema:

type: string

example: 'Thank you, <b>{username}</b>'

'400':

description: 注册失败

content:

text/html:

schema:

type: string

example: 'Registration failed. Please check your input and try again'

这是 OpenAPI 3.0.0 格式的用户注册接口文档,您可以将其用于API文档工具或生成可视化文档以方便阅读和理解。希望这对您有所帮助!

ChatGPT很快就生成了符合OpenAPI 3.0规范的关于飞机订票系统的用户注册接口文档,它还告诉我们该如何使用这段YAML格式的代码,是不是非常贴心?将这段代码复制到Swagger Editor中,可以正常显示,如图5-14所示。

图5-14 Swagger Editor中显示用户注册接口文档

可以按照前面笔者提供的方法继续生成其他接口文档,这里不赘述。

无论使用哪种编程语言和开发框架,生成符合Swagger或OpenAPI 3.0规范的接口文档的关键都在于选择合适的工具和注解来描述API。

接口文档的生成过程并不是最重要的,最重要的是确保生成的接口文档内容准确无误、简明清晰,能够让项目相关人员容易理解。在实际工作中,研发人员有时可能会修改API的代码,这可能导致接口参数、返回值等内容发生变化。在这种情况下,研发人员应该及时更新相关接口文档,以确保其准确性。

一些企业可能存在没有接口文档的情况,这会给测试人员的接口测试工作带来困难。测试人员不仅需要分析接口的输入和输出,还需要负责编写接口文档,这容易导致漏测情况的发生。因此,笔者建议接口文档的编写和维护工作由研发人员来负责,特别是在有了ChatGPT的辅助之后。有一些企业还开发了一些工具或平台,通过调用OpenAI提供的相关API来自动生成接口文档并发布,这极大地提高了研发及测试的效率。

  • 进行多轮提问修正

事实上,我们在使用ChatGPT生成接口文档时可能不会"一气呵成",有时可能需要同ChatGPT进行多轮会话,才能生成最终的接口文档。在操作时我们可以根据实际情况来调整ChatGPT的提示词,提供更多的细节信息,例如参数的数据类型、取值范围、输入示例等,从而获得满意的接口文档。

相关推荐
AndrewHZ20 小时前
【图像处理基石】如何使用大模型进行图像处理工作?
图像处理·人工智能·深度学习·算法·llm·stablediffusion·可控性
T***160721 小时前
DeepSeek在文本生成中的ChatGPT
chatgpt
mwq3012321 小时前
LLM 推理的“显存墙”与“通信墙”:从显存分布到部署原则
llm
rgb2gray1 天前
增强城市数据分析:多密度区域的自适应分区框架
大数据·python·机器学习·语言模型·数据挖掘·数据分析·llm
中國龍在廣州1 天前
现在人工智能的研究路径可能走反了
人工智能·算法·搜索引擎·chatgpt·机器人
Seal软件1 天前
GPUStack v2:推理加速释放算力潜能,开源重塑大模型推理下半场
llm·gpu
信也科技布道师FTE1 天前
当AMIS遇见AI智能体:如何为低代码开发装上“智慧大脑”?
人工智能·低代码·llm
智泊AI1 天前
建议所有初学者都这样去微调大模型!
llm
七宝大爷1 天前
基于人类反馈的强化学习(RLHF):ChatGPT“对齐”人类的秘密武器
人工智能·chatgpt
shayudiandian1 天前
ChatGPT风格对话机器人搭建教程
人工智能·chatgpt·机器人