您当前的位置:首页 > 电脑百科 > 程序开发 > 编程百科

如何用ChatGPT设计出可控制的代码?

时间:2023-06-08 10:56:33  来源:CSDN  作者:

【编者按】如何训练 ChatGPT 实现自己想要的代码与功能,秘诀就是编写更具交互性和前瞻性的设计提示,本文作者分享了如何利用 ChatGPT 设计出可控制的代码步骤。

原文链接:https://www.friendlyskies.NET/maybe/a-quick-way-to-get-more-creative-coding-control-with-chatgpt

作者 | Marc Carson

译者 | 弯月

出品 | CSDN(ID:CSDNnews)

你想通过 ChatGPT 更好地控制代码的实现吗?你希望 ChatGPT 的使用更加有趣,或者进一步激发灵感吗?

如果你的答案是肯定,请尝试使用更具交互性、前瞻性的设计提示,它可以提供各种想法,比如下面这个例子(粗体是我想强调的部分):

Write a bash with three functions: Allow a user to select how many dice to roll, roll the dice, and announce the results graphically. For each function, allow me to pick from three different ways of creating the function.

编写一个 bash 脚本,其中包含三个功能:允许用户选择掷多少个骰子、掷骰子,并以图形方式宣布结果。 对于每个函数,请提供三种不同的函数创建方式,让我从中进行选择

得到的代码如下:

#!/bin/bash # Function 1: Allowing the user to select how many dice to roll # Option 1: Read input from user select_dice_count_1{ read-p "Enter the number of dice to roll: "dice_count echo$dice_count } # Option 2: Using command-line arguments select_dice_count_2{ dice_count= $1 echo$dice_count } # Option 3: Using a default value select_dice_count_3{ dice_count=1 echo$dice_count } # Function 2: Rolling the dice # Option 1: Using the $RANDOM variable roll_dice_1{ echo$((RANDOM % 6 + 1)) } # Option 2: Using the shuf command roll_dice_2{ shuf -i 1-6 -n 1 } # Option 3: Using an array to represent the dice faces roll_dice_3{ dice_faces=( "1""2""3""4""5""6") index=$((RANDOM % 6)) echo" ${dice_faces[$index]}" } # Function 3: Announcing the results graphically # Option 1: Using a for loop and printf announce_results_1{ for((i = 1; i <= $1; i++)); do printf"[Dice $i] - $2n" done } # Option 2: Using echo and a separator line announce_results_2{ for((i = 1; i <= $1; i++)); do echo"Dice $i: $2" done echo"-----------------" } # Option 3: Using ASCII art for graphical representation announce_results_3{ for((i = 1; i <= $1; i++)); do echo"╔═══╗" echo"║ $2║" echo"╚═══╝" done } # MAIn # Selecting dice count dice_count=$(select_dice_count_1) # Change the function name to select_dice_count_2 or select_dice_count_3 for different options # Rolling the dice results= "" for((i = 1; i <= dice_count; i++)); do result=$(roll_dice_1) # Change the function name to roll_dice_2 or roll_dice_3 for different options results+= " $result" done # Announcing the results announce_results_1 $dice_count" $results" # Change the function name to announce_results_2 or announce_results_3 for different options

接下来,你只需要修改函数名称(ChatGPT 在注释中指出了这些位置)。

你是否注意到,现在实际上你面临着软件设计问题,而不仅仅是“如何编写代码”的问题?

这表明,使用 ChatGPT 编写代码的时候,你还可以进行一些设计,而不仅仅是简单地获取代码。

不要止步于此

随着创意源泉的涌现,你可以而且应该继续寻求更多有创意或有趣的想法。例如,后续的提示可以这么写:

Give 3 more creative options for the display of the result.

提供三个有创意的显示结果的方式。

ChatGPT 生成的代码提供了如下三种方式:

1)用点表示的 ASCII 骰子;

2)ANSI 彩色骰子图形;

3)表情符骰子。

你还可以进一步,比如我要求 ChatGPT 给出三个更有创意的选项,然后它提供了一种播放掷骰子音效的方法,还有两种制作掷骰子动画的方法。

看到音效选项,我非常惊讶,我不禁在想这是一个无聊的脚本,还是一个更具创意的有趣脚本?

为设计增加一些灵活性

这个简单的技巧可以给你提供更多方向性,以作者的身份控制脚本或程序的初始风格、感觉和功能。

你可以快速审查各种不同的设计选择,更快地开发出更好的结果。

此外,开发完成后,将来再修改会变得更加困难,主要受限于个人的记忆力和耐心,因此这种更具交互性的设计会更有优势。

请注意,你需要根据脚本或编程的风格来修改代码。请务必利用 ChatGPT 可以使用的额外提示来指定你希望查看的代码类型的详细信息。

ChatGPT 也可用于编程之外的工作

这个技巧还可用于向 ChatGPT 询问与代码无关的技巧和其他查询。

例如,在询问有关指定主题的技巧时,你可以添加如下内容:

Present the tips in three different styles, only presenting the first tip of each style at first. Allow me to choose which style I like best before continuing with the rest of the tips.

以三种不同的方式呈现技巧,首先呈现每种风格的第一个技巧。在显示后续技巧前,请允许我选择我最喜欢的风格。

ChatGPT 的输出可以给你更多启发,让你更清楚地思考使用这些信息的方式。这意味着,在与 ChatGPT 合作设计的时候,你可以运用概念化技能,以获得更好的结果。

你会发现,这样得到的结果更有创意。至少,不会感觉自己只是在做复制粘贴。

总结和一些最终想法

这种编写提示的小技巧不仅可以增加工作的乐趣,而且在我看来,还可以让你更好地了解 ChatGPT 的众多功能。

大多数人在寻求编程方面的帮助时,只注重一个单一的“好”结果。但其实,在与 ChatGPT 交互时,注重拓宽思路,有利于获得更好的结果。



Tags:ChatGPT   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
ChatGPT官宣免注册,全球互联网变天!OpenAI将取代谷歌搜索?
新智元报道编辑:编辑部【新智元导读】OpenAI这份愚人节礼物,实在是太大了:今天起,ChatGPT不用注册,可以直接使用。用户狂欢,竞品颤抖,我们仿佛已经听到,谷歌搜索引擎这位巨人轰然倒...【详细内容】
2024-04-02  Search: ChatGPT  点击:(9)  评论:(0)  加入收藏
无需注册!OpenAI宣布放开ChatGPT使用限制
工智能初创公司OpenAI宣布,即日起用户无须注册即可开始使用ChatGPT的功能。OpenAI在最新公告中写道:“让ChatGPT等工具广泛可用,让人们能够体验到人工智能的好处,这是我们使命的...【详细内容】
2024-04-02  Search: ChatGPT  点击:(7)  评论:(0)  加入收藏
ChatGPT 突然放开了账户限制,面向所有人开放
大门终于打开。奥特曼 OpenAI 的旗舰产品 ChatGPT 突然宣布:将面向所有人开放,无论你有没有注册账户。从今天开始,访问 Chat.openai.com 将不再要求用户登录,用户将直接进入与 C...【详细内容】
2024-04-02  Search: ChatGPT  点击:(3)  评论:(0)  加入收藏
今天起,ChatGPT无需注册就能用了!
 来源:量子位    金磊 克雷西 发自 凹非寺  就在刚刚,OpenAI狠狠地open了一把:从今天起,ChatGPT打开即用,无需再注册帐号和登录了!  像这样,直接登录网站,然后就可以开启对...【详细内容】
2024-04-02  Search: ChatGPT  点击:(8)  评论:(0)  加入收藏
ChatGPT之父Altman两小时对谈,首聊GPT-5何时发布、llya去哪里了、Q*究竟是什么
Altman做客油管博主Lex Fridman科技博客 ,被追问了一个又一个辛辣的问题。长达两个小时的对谈,奥特曼从OpenAI宫斗、马斯克诉讼、Sora,一直聊到AGI与外星文明!本文重点梳理了长...【详细内容】
2024-03-20  Search: ChatGPT  点击:(8)  评论:(0)  加入收藏
ChatGPT主管最新访谈:未来AI和人类如何共处?
Peter Deng在最新访谈中表示:AI不会取代生产力,人类和AI只有合作才能释放真正潜力,ChatGPT比已知的更强大、最大的挑战在于理解用户需求。当地时间3月13日,OpenAI 消费产品副总...【详细内容】
2024-03-19  Search: ChatGPT  点击:(11)  评论:(0)  加入收藏
ChatGPT日耗电超50万度,大模型或带来“电荒”
未来两年内将由“缺硅”变为“缺电”,马斯克的预言可能正在变成现实。据《纽约客》杂志报道,OpenAI的热门聊天机器人ChatGPT每天可能要消耗超过50万千瓦时的电力,以响应用户的...【详细内容】
2024-03-11  Search: ChatGPT  点击:(32)  评论:(0)  加入收藏
OpenAI新功能:ChatGPT可调用自定义机器人,对话更高效!
近日,知名科技公司OpenAI推出了一项新的功能&mdash;&mdash;“对话中调用(@)自定义聊天机器人”,让用户在对话中无缝切换不同领域的机器人。这一功能的出现,为用户带来了极大的便...【详细内容】
2024-02-02  Search: ChatGPT  点击:(53)  评论:(0)  加入收藏
ChatGPT元年之后,AI重塑世界,人类如何与其“智慧共生”?
过去一年,人工智能(AI)凭借大语言模型的爆火迅速进入大众视野。它比以往任何时候都更强大,也更具亲和力。这不仅给未来生活带来了新希望,也在人们心中蒙上了一层担忧&mdash;&mdas...【详细内容】
2024-01-26  Search: ChatGPT  点击:(77)  评论:(0)  加入收藏
年度最热AI应用TOP 50,除了ChatGPT还有这么多宝藏
量子位 | 公众号 QbitAI百模齐发、AI工具乱杀的一年里,谁是真正赢家?ChatGPT访问量遥遥领先位居第一,但单次使用时长没超过平均线。Midjourney访问量年度第四,但下滑量位居第二...【详细内容】
2024-01-02  Search: ChatGPT  点击:(54)  评论:(0)  加入收藏
▌简易百科推荐
即将过时的 5 种软件开发技能!
作者 | Eran Yahav编译 | 言征出品 | 51CTO技术栈(微信号:blog51cto) 时至今日,AI编码工具已经进化到足够强大了吗?这未必好回答,但从2023 年 Stack Overflow 上的调查数据来看,44%...【详细内容】
2024-04-03    51CTO  Tags:软件开发   点击:(6)  评论:(0)  加入收藏
跳转链接代码怎么写?
在网页开发中,跳转链接是一项常见的功能。然而,对于非技术人员来说,编写跳转链接代码可能会显得有些困难。不用担心!我们可以借助外链平台来简化操作,即使没有编程经验,也能轻松实...【详细内容】
2024-03-27  蓝色天纪    Tags:跳转链接   点击:(13)  评论:(0)  加入收藏
中台亡了,问题到底出在哪里?
曾几何时,中台一度被当做“变革灵药”,嫁接在“前台作战单元”和“后台资源部门”之间,实现企业各业务线的“打通”和全域业务能力集成,提高开发和服务效率。但在中台如火如荼之...【详细内容】
2024-03-27  dbaplus社群    Tags:中台   点击:(9)  评论:(0)  加入收藏
员工写了个比删库更可怕的Bug!
想必大家都听说过删库跑路吧,我之前一直把它当一个段子来看。可万万没想到,就在昨天,我们公司的某位员工,竟然写了一个比删库更可怕的 Bug!给大家分享一下(不是公开处刑),希望朋友们...【详细内容】
2024-03-26  dbaplus社群    Tags:Bug   点击:(5)  评论:(0)  加入收藏
我们一起聊聊什么是正向代理和反向代理
从字面意思上看,代理就是代替处理的意思,一个对象有能力代替另一个对象处理某一件事。代理,这个词在我们的日常生活中也不陌生,比如在购物、旅游等场景中,我们经常会委托别人代替...【详细内容】
2024-03-26  萤火架构  微信公众号  Tags:正向代理   点击:(11)  评论:(0)  加入收藏
看一遍就理解:IO模型详解
前言大家好,我是程序员田螺。今天我们一起来学习IO模型。在本文开始前呢,先问问大家几个问题哈~什么是IO呢?什么是阻塞非阻塞IO?什么是同步异步IO?什么是IO多路复用?select/epoll...【详细内容】
2024-03-26  捡田螺的小男孩  微信公众号  Tags:IO模型   点击:(9)  评论:(0)  加入收藏
为什么都说 HashMap 是线程不安全的?
做Java开发的人,应该都用过 HashMap 这种集合。今天就和大家来聊聊,为什么 HashMap 是线程不安全的。1.HashMap 数据结构简单来说,HashMap 基于哈希表实现。它使用键的哈希码来...【详细内容】
2024-03-22  Java技术指北  微信公众号  Tags:HashMap   点击:(11)  评论:(0)  加入收藏
如何从头开始编写LoRA代码,这有一份教程
选自 lightning.ai作者:Sebastian Raschka机器之心编译编辑:陈萍作者表示:在各种有效的 LLM 微调方法中,LoRA 仍然是他的首选。LoRA(Low-Rank Adaptation)作为一种用于微调 LLM(大...【详细内容】
2024-03-21  机器之心Pro    Tags:LoRA   点击:(12)  评论:(0)  加入收藏
这样搭建日志中心,传统的ELK就扔了吧!
最近客户有个新需求,就是想查看网站的访问情况。由于网站没有做google的统计和百度的统计,所以访问情况,只能通过日志查看,通过脚本的形式给客户导出也不太实际,给客户写个简单的...【详细内容】
2024-03-20  dbaplus社群    Tags:日志   点击:(4)  评论:(0)  加入收藏
Kubernetes 究竟有没有 LTS?
从一个有趣的问题引出很多人都在关注的 Kubernetes LTS 的问题。有趣的问题2019 年,一个名为 apiserver LoopbackClient Server cert expired after 1 year[1] 的 issue 中提...【详细内容】
2024-03-15  云原生散修  微信公众号  Tags:Kubernetes   点击:(6)  评论:(0)  加入收藏
站内最新
站内热门
站内头条