软件测试/测试开发丨学会与 AI 对话,高效提升学习效率

news2024/11/29 13:41:15

点此获取更多相关资料

简介

ChatGPT 的主要优点之一是它能够理解和响应自然语言输入。在日常生活中,沟通本来就是很重要的一门课程,沟通的过程中表达越清晰,给到的信息越多,那么沟通就越顺畅

和 ChatGPT 沟通也是同样的道理,如果想要ChatGPT给到的信息越准确,越清晰,和它的沟通就至关重要。

如何和 ChatGPT 建立一个良好的沟通方式呢?其实就是靠提示词 Prompt 。

价值

可能很多同学疑惑的点在于,提示词还需要另外去学吗?这个看起来貌似有手就行的操作,只要会打字就能够立刻上手吧?

但是会和用得好是两回事。我们可以把ChatGPT想象成孙悟空的金箍棒,本身它是一个非常强大的法器,但是如果不会使用,它也不过是一根铁棍而已。提示词用得越好,ChatGPT就越强大。

而且对于有编程基础的人来说,后续如果想要基于 LLM 或大语言模型快速构建、开发一些应用软件或者功能。不掌握 Prompt 的基本原理和使用技巧,是无法达到很好的效果的。

提示词的原则与技巧

而写一个好的提示词,有以下的技巧可以使用。

1.写清楚需求:GPT 模型无法读懂你的想法,因此在提供需求时尽可能具体是很重要的。这包括在你的查询中包含详细信息,要求模型采用角色,以及使用定界符清楚地指示输入的不同部分。

2.提供参考文本:如果可以,请提供与你希望模型生成的内容相似的参考文本。这将有助于模型了解你要查找的内容并生成更准确的结果。

3.将复杂的任务拆分为更简单的子任务:如果你试图让模型做一些复杂的事情,将任务分解为更小、更易于管理的子任务会很有帮助。这将使模型更容易理解你的要求并生成更准确的结果。

4.角色扮演:这个技巧的作用是告诉ChatGPT在对话中扮演一个特定的角色或人物。这对于创造更有吸引力和沉浸感的对话,或模拟真实世界的场景特别有用。

5.系统的测试变化: 对需求或参考文本进行更改时,重要的是系统的测试结果以了解它们如何影响模型的输出。这将帮助你确定对改进结果最有效的更改。

写清楚需求

编写有效的ChatGPT的难点之一是表达含糊不清。为了避免这个问题,有以下几个问题需要注意:

  1. 定义任何专业术语或技术术语。
  2. 避免使用模棱两可的语言。
  3. 使用清晰或简明的语言
  • 错误的案例:“你是我的哈基米吗?”

哈基米属于网络用语,而且诞生在2023年,ChatGPT是无法理解这个词的语意的。

  • 好的案例:“请帮我提供在深圳市宝安区所有的咖啡馆”

简明扼要说清楚自己的需求,无需多言,ChatGPT便很好理解了。

提供参考文本

  1. 对于文本比较短的引用,可以直接贴到提问里面即可:如果你有一段法律条款,并希望使用这段条款来解释某个概念,你可以这样提问:“根据以下的法律条款,什么是知识产权?”然后附上法律条款的内容。
  2. 网页链接的引用:也可以直接将网页链接里面的内容提供给 GPT 来作为引用文本。比如可以直接给它一个链接地址,让它总结文章内的内容。(注意这个功能需要使用web插件)

拆解复杂任务

作为一个厨师,在做饭的时候需要完成这些步骤:准备食材、清理食材、处理食材、开始烹饪、摆盘。

在这个过程中,其实厨师就是把一个复杂的任务,拆解成了多个简单的任务。其实在编程的过程中,也是同样的道理。也会把一个复杂需求,拆解为N个简单的子需求。

如果需要ChatGPT帮助我们完成一个复杂的任务,那么,我们需要预先帮它把任务拆分。这样做的优点是:

  1. 更好理解每一个操作步骤。
  2. 不被上下文限制影响。
  3. 方便调整。

例如我们提出了一个如下的复杂任务:

  • 提示词:作为一个测试工程师,我即将进行述职答辩,我想编写一个述职报告,述职报告需要包含我今年的成绩、我明年的目标、以及我在今年的工作过程中碰到的问题

ChatGPT 虽然给到了相应的回复,但是还有问题:

  1. 工作成绩没有清晰的数据也没有说服力,看着比较干瘪。报告内容没有图表。
  2. 内容太过简单空洞。
  3. 格式不够优雅。

如果我们把提问的方式做进一步优化,把这个复杂问题一步步进行拆解,并给ChatGPT一定的修改反馈,则产生的内容会更加符合我们的需求,比如我们可以把问题分解为:

  • 提示词:作为一个测试工程师,我即将进行述职答辩,我想编写一个述职报告。述职报告需要包含我今年的成绩,我今年带领测试团队将bug的逃逸率降低了10%的比例。并且我希望有一个通过echarts绘制的折线图。请将我的述职报告做进一步优化。

当然我们从这张图片中可以看出折线图无法展示,我们可以进一步给GPT提示信息,让它直接给到报表的源码。

  • 提示词:echarts 折线图没有展示出来

然后GPT就会解释原因,并且给到解决方案。由此可见,将问题拆解,我们可以随时调整GPT的返回信息,让其更加贴近我们的需求。

借助外部工具

作为一个大语言生成模型,GPT4 并不擅长各种数学计算。比如下面的问题(来自官方 GPT 最佳指南中的示例问题):

  • 提示词:查找以下多项式的所有实值根:3x^5 - 5x^4 - 3x^3 - 7x - 10

如果直接提问的话,通常没法直接给出答案,如下图所示,虽然借助Python,给出了运算过程,但是其实ChatGPT无法像人类数学家一样,给出直接的推导过程:

所以可以将提示词改为:

  • 提示词:查找以下多项式的所有实值根:3x^5 - 5x^4 - 3x^3 - 7x - 10 ,使用Python 实现

在后续碰到ChatGPT无法直接解决的问题时,不妨继续尝试这种曲线救国的方式。

角色扮演

角色扮演的过程就更为简单了,我们在编写提示词的时候,只需要给它加上一些角色的设定。

比如这个例子:

  • 提示词:请用鲁迅的口吻,写一篇文章,叫做我的妈妈,要求字数在800字以内。

除了扮演其他作家之外,ChatGPT甚至可以扮演领导,面试官,浏览器的console插件等各种各样我们可以想象到的角色:

  • 提示词:我希望你作为一个 javascript 控制台。我将输入命令,你回复javascript 控制台应显示的内容。我希望您只在一个唯一的代码块内回复终端输出,而不是其他任何内容。不要写解释。我的第一个命令是 console.log(“Hello World”);

系统的测试变化

正如人在回复信息的时候,也无法保证所有的回复都是正确的,ChatGPT 也无法保证每次给到的信息都是“靠谱的”或者是满足需求的。

所以ChatGPT的每一次回复,在确认没有问题之后,再使用。如果有问题的话,可以进一步进行提问,ChatGPT会根据提示词不停地纠正回复。以达到一个满意的效果。

比如这个示例:

  • 提示词:请问 App 的产品在测试的过程中需要注意什么
在测试一个 App 产品的过程中,有一些重要的注意事项可以帮助确保产品质量和用户体验。以下是一些你应该注意的方面:

1. **功能性测试:** 确保所有的功能都能正常工作,包括用户界面、交互和后台操作。测试每个功能的不同用例和场景,以确保没有错误或异常情况。

2. **兼容性测试:** 测试 App 在不同设备、操作系统版本和屏幕尺寸上的兼容性。这有助于确保用户在各种环境中都能正常使用 App。

3. **性能测试:** 测试 App 的性能,包括加载速度、响应时间和资源占用等。确保 App 在各种条件下都能保持良好的性能。

...省略...

11. **更新和升级测试:** 在发布新版本或更新时,确保之前的功能仍然正常,没有引入新的问题。

12. **法律和隐私合规性:** 确保 App 遵守相关的法律法规和隐私政策,特别是涉及用户数据和隐私的方面。

总之,测试是确保你的 App 产品质量和用户满意度的关键步骤。细致的测试流程和综合的测试策略可以帮助你尽早发现和解决问题,提供优秀的用户体验。
  • 提示词:请针对兼容性测试再做一些补充。
当进行兼容性测试时,你需要关注不同设备、操作系统版本、浏览器以及屏幕尺寸之间的兼容性。以下是一些针对兼容性测试的补充建议:

1. **设备兼容性测试:** 确保你的 App 在各种不同品牌、型号和操作系统的移动设备上都能正常运行。考虑测试不同的手机和平板设备。

2. **操作系统版本兼容性测试:** 测试 App 在不同操作系统版本上的兼容性,包括最新版本和一些较旧的版本。一些用户可能还在使用较老的操作系统。

...省略...

11. **更新和升级兼容性测试:** 当你发布新版本或更新时,确保之前的功能仍然正常,没有引入新的兼容性问题。

12. **错误处理和提示信息:** 在不兼容的设备或环境下,确保 App 能够提供适当的错误提示,引导用户解决问题。

通过兼容性测试,你可以确保你的 App 在不同的环境中都能够提供一致的用户体验,减少用户因设备或环境不同而遇到的问题,从而提高用户满意度。

通过不停地测试以及纠正 ChatGPT 的回复,即可最终获得一个满意的回复。

总结

在学习 AIGC 的过程中,需要打破往常的认知不能再将AI作为简单的程序看待,反而要把它当作一个“人”来看待。

就像和人沟通一样,需要注意措辞、语气、沟通方式,才能够真正做到学会与AI对话,发挥它强大的作用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/986978.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

方向介绍:基于深度学习的轨迹预测

方向介绍:基于深度学习的轨迹预测 文章目录 方向介绍:基于深度学习的轨迹预测问题定义典型方法挑战未来展望参考 基于深度学习的轨迹预测是一种利用神经网络模型来预测移动物体的未来位置和运动状态的技术。这种技术在许多领域都有重要的应用&#xff0c…

Jetpack Compose 入门教程之Text

这个文本显示组件应该是我们最常用的组件,下面会非常细 归纳 实例 下面一一演示这些属性与控制逻辑 文本的展示 Text组件 所有构造方法都是text:String,要想用string.xml里面的字符串资源 得使用 stringResource方法,其相似方法如下/** Copyright 2019 The Android Open Sou…

如何挑选低值易耗品管理系统?优化企业管理效率与成本控制

在现代企业管理中,低值易耗品的管理是一个容易被忽视但却十分重要的环节。低值易耗品包括办公用品、耗材、工具等,它们虽然单价不高,但数量庞大且频繁使用,对企业的日常运营和成本控制有着重要影响。为了提高管理效率、降低成本&a…

Linux与shell命令行学习

文章目录 走进shell基本的bash shell命令2.1 遍历目录 cd2.2 查看文件和目录列表 ls2.3 创建文件 touch2.4 复制文件 cp2.5 自动补全 tab2.6 链接文件 ln2.7 文件重命名 mv2.8 删除文件 rm2.9 创建目录 mkdir2.10 删除目录 rmdir2.11 查看文件类型 file2.12 查看整个文件 cat、…

flume1.11.0安装部署

1、准备安装包apache-flume-1.11.0-bin.tar.gz; 上传; 2、安装flume-1.11.0; 解压; tar -zxvf apache-flume-1.11.0-bin.tar.gz -C /opt/server 进入conf目录,修改flume-env.sh,配置JAVA_HOME&#xff1b…

docker 生成镜像的几个问题

docker 生成镜像的几个问题 根据jdk8.tar.gz 打包Jdk8 镜像失败运行镜像报错差不多是网络ip错误,在网上说重启docker即可解决运行mysql5.7.25 镜像失败向daemon.json文件添加内容导致docker重启失败docker run 命令常用参数根据jdk8.tar.gz 打包Jdk8 镜像失败 首选做准备工作…

有向图和无向图的表示方式(邻接矩阵,邻接表)

目录 一.邻接矩阵 1.无向图​编辑 2.有向图 补充:网(有权图)的邻接矩阵表示法 二.邻接表 1.无向图 2.有向图 三.邻接矩阵与邻接表的关系 一.邻接矩阵 1.无向图 (1)对角线上是每一个顶点与自身之间的关系&…

智慧能源方案:TSINGSEE青犀AI算法中台在能源行业的应用

一、方案背景 互联网、物联网、人工智能等新一代信息技术引领新一轮产业革命,加快能源革命步伐。尤其是随着人工智能技术的不断发展,AI智能检测与识别技术在能源行业的应用也越来越广泛。与此同时,国家出台多项政策,将智慧能源纳…

【HTML5高级第三篇】drag拖拽、音频视频、defer/async属性、dialog应用

文章目录 一、拖拽事件1.1 拖拽事件1.2 案例:拖拽丢弃图片 二、音频和视频三、defer 与 async 属性3.1 概述3.2 示例一:3.3 示例二: 四、dialog 元素 一、拖拽事件 原生JavaScipt案例合集 JavaScript DOM基础 JavaScript 基础到高级 Canvas…

LabVIEW利用局部放电分析高压电气设备状态诊断

LabVIEW利用局部放电分析高压电气设备状态诊断 目前,高压电气设备状态的监控系统解决了早期故障检测的问题。局部放电起源于电力电气装置的绝缘。局部放电会导致绝缘层逐渐磨损和加速老化,因此可能导致绝缘完全击穿。因此,局部放电检测及其特…

gitLab(git)误提交命令

1.先使用下面命令查看一下分支上已提交的信息 git log 2.回退到之前的版本 git reset —hard 你要删除的提交哈希码(一般是离这个命令最近的一串数字) 3.覆盖掉远端的版本信息,使远端的仓库也回退到相应的版本 注意:切换到你提…

安装K8s基础环境软件(二)

所有节点执行 1、安装docker sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.reposudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin systemctl…

解决报错之org.aspectj.lang不存在

一、IDEA在使用时,可能会遇到maven依赖包明明存在,但是build或者启动时,报找不存在。 解决办法:第一时间检查Setting->Maven-Runner红圈中的√有没有选上。 二、有时候,明明依赖包存在,但是Maven页签中…

SI3262 低功耗 SOC +13.56mhz刷卡+触摸三合一芯片,适用于智能锁方案

Si3262 是一款高度集成的低功耗 SOC 芯片,其集成了基于 RISC-V 核的低功耗MCU 和工作在 13.56MHz 的非接触式读写器模块。 MCU 模块具有低功耗、Low Pin Count、宽电压工作范围,集成了13/14/15/16 位精度的 ADC、LVD、UART、SPI、I2C、TIMER、WUP、IWDG、…

【FAQ】安防视频监控/视频汇聚平台EasyCVR服务重启,海康SDK设备无法上线的原因排查

TSINGSEE青犀视频监控汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。旭帆科技平台既具备传统安防视频监控…

将目标检测项目移植到linux上出现OSERROR

在windows上运行项目正常,但是在centos9上运行出现找到资源,第一次遇到这个问题,通过代码回找,一步一步发现,读取数据没问题,但是在预测的时候无法读取,查到的资料 说明显示字体问题&#xff0c…

Maven中导入jQuery,前端页面中引用jQuery

第一步pom文件中,配置maven坐标。 第二步,在前端页面中引用jQuery 注:该前端页面需要在web根目录即webapp目录下。可认为在maven中导入jQuery后,jquery.min.js文件放在目录webapp/webjars/jquery/3.3.1下。

大模型扫盲之小白入门手记

本篇内容来自小米集团数据科学部负责人刘汉武老师的数据特训营笔记。不涉及深入的知识,仅在扫盲。 首先一个问题:大模型和大语言模型的区别是什么? 有人说大模型像是连接数据的星辰,能给我们提供前所未有的见解和洞察。现有的大模…

【精读Uboot】its文件语法

前面我们分析了SPL汇编的执行过程,在SPL之后就要进入另一个loader加载镜像了。在正式分析跳转流程之前,我们需要搞清楚在我们平时下载的imx-boot-xxx这个镜像是如何组成的。 在编译完Uboot、optee和ATF之后,会产生u-boot-spl.bin&#xff0c…

element-plus 踩的坑

原来node版本是16.17.0,装element-plus死活装不上,结果要把node版本升级到18以上,真坑呀,也没人告诉我要这么干