如何正确使用 ChatGPT 写程序? 好难啊

2023-06-14 15:54:20 +08:00
 ellermister

编写一个 PHP 函数, 实现把输入的文本中的英文、数字和中文混合连在一起文字部分的字符拆开增加间距(空格)并返回。

比如:

最终使得长篇文字看起来增加阅读体验,不会把中英文挤在一起。

以上是我对 chatgpt 提供的基础需求, 无论我怎么纠正修改,它反复修改就是没有理解我的意思,甚至写的代码都有报错的。 写的都是些啥- -.

我用的免费 3.5 ,方法不对吗? 还是我表达的不能够达到机器理解的程度。

2270 次点击
所在节点    程序员
15 条回复
crissx
2023-06-14 17:11:20 +08:00
可能你的表达是有问题,这处理前和处理后的字符串不都一模一样的吗
k0305916q
2023-06-14 17:19:02 +08:00
额,3.5 ,4 都试过~发现 4 ,不仅能给出更好的代码,还能告诉我题目所隐藏的条件。。。顺便纠正我的错误描述。并最终给出,若你坚持这么做的话,可以加个 if 来判断的最终代码。
所以我的结论是,若不想专精 prompt ,用 4 会更好。
usedTo404
2023-06-14 17:34:08 +08:00
@crissx V2EX 好像自动实现了 op 的需求
LeegoYih
2023-06-14 17:38:10 +08:00
我目前用 chatGPT 帮我生成大致思路,它写代码大概率运行不了或者瞎编的。
让他优化一个 BFS 代码,分析的头头是道,结果返回的代码狗屁不通。
ellermister
2023-06-14 18:28:34 +08:00
@crissx 是的刚发现,可能是 v2 自动格式化了。我原本是没空格的,中英文连接在一起的。
Puteulanus
2023-06-14 18:31:46 +08:00
https://chat.openai.com/share/e34ab9f8-cd66-43be-8ef8-4f8206c0fcc8
拿你例子里的几个跑了下好像还行,它那个正则就不想仔细 review 了。。
用的也是 3.5 ,它最后给出的运行结果是错的,实际运行输出“我爱 OpenAI2023”,符合描述的英文和数字不要隔开
zxfgds
2023-06-14 18:39:11 +08:00
3.5 不行的, 3.5 能做下面这种工作: 比如 你要定义 某种状态 ,包括: 部分状态的中文名....
然后, 我们告诉 gpt: 我需要给 *** 定义状态, 其中包括 *** ,*** , 你帮我完善所有`状态`, 并且生成对应的 `英文状态名`, `状态中文名` 和 `状态英文名` 由你来决定 ,要符合命名规范, 最后,帮我生成 映射 map 等等...

它做这个飞快.


假如想直接写代码, 还是要 4 的 , 并且 有时候他的思路并不行 , 你要引导它.
ellermister
2023-06-14 18:44:33 +08:00
@Puteulanus 你的这个答案确实可以用,看来还是需求描述不同导致的。
ellermister
2023-06-14 18:47:27 +08:00
@zxfgds 引导没用,很多时候很烦,每次纠正他,他都道歉,然后并没有修正错误。就像一个小孩,你要想从各个角度没有考虑到的东西,收集出来输出给他、教他。

就差把解题思路分解成一步步的,让他翻译成代码。

反复多了就很累,不如自己整理思路去做。
Puteulanus
2023-06-14 19:10:13 +08:00
@ellermister 我的经验是 3.5 必须把需求、步骤描述清楚,类似于对结对编程里的新手一样,比如我上次让它写跨俩表遍历查找的,最开始说“根据 A 表的信息从 B 表查询”,它居然写了个遍历 B 表的。我后来改成详细的告诉它过程,“遍历 A 表所有条目,以学号为唯一标识,查找 B 表中学生信息,如果 XX 信息为 XX 则。。”,生成出来的就对了

还有一旦它写错了,千万别让它改,除非真的只有一丁点很明显的错误,不然改起来绝对是无底洞。如果它写出的状况你描述的没想到,就直接改描述重新提交生成;如果它写的根本对不上描述,或者不能运行,就直接点按钮重新生成。AI 生成一份的效率很高,你让它多生成几份挑一份只有小错误的自己再改改,要比把它写得不能跑的改到能跑快得多
cloud2000
2023-06-14 19:18:57 +08:00
必须, 必须, 用 4.

和 3.5 较劲有时也能成功, 但是费那个功夫其实不如自己写了.
Alias4ck
2023-06-14 19:55:31 +08:00
xdygxh
2023-06-14 21:01:47 +08:00
说白了,3.5 只适用于,你自己有思路了,但是懒得动手,让他帮你写,而且你还要把详细的思路给他,这样不会出错。
eastphoton
2023-06-14 21:22:33 +08:00
跑去尝试了三次,
两次会话是只让他修复了一次就给出了正确代码,
一次会话是越改越歪。
chengyiqun
2023-06-16 15:35:01 +08:00
还不如用 bing 生成的代码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/948707

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX