玩了一个多月chatgpt的总结
zying / April 2023
最近chatGPT非常火,对新科技充满好奇的我自然是抵不住如此巨大的诱惑,试了国内镜像和一些公众号,不是每天限制使用就是需要付费使用,不甘于被困墙里,找了解决教程成功用上了官方的chatGPT,并尝试了几个不错的插件,解决了国内网络总是报错的问题,终于可以流畅的和GPT对话了。用到的教程和插件链接如下:
虚拟SMS激活指南: 申请虚拟手机号用于Open AI的注册
KeepChatGPT: 解决国内网络总是报错问题的油猴插件,得先装油猴
联网检索的Google chrome 插件:https://chrome.google.com/webstore/detail/webchatgpt-chatgpt-with-i/lpfemeioodjbpieminkklglpmhlngfcn?hl=en-US
chatGPT proofread 插件: https://chrome.google.com/webstore/detail/editgpt/mognjodfeldknhobgbnkoomipkmlnnhk?hl=en-US
GPT强大的文字处理和代码编写能力让很多人担心会被替代,其实这只是一种直观感受,它的工作依然是依赖于人的。尽管GPT的出现冲击现有的一些行业工作模式,但同很多的新技术一样也带来了非常多的机遇。通过国内外的一些相关视频和推文,以及我自己的使用体验,体会到给GPT的指令很重要。而指令看似就像我们平时说话一样的命令GPT去做一些事情,但很快就会发现日常说话的方式并不能够使GPT很好的工作,甚至也有很多人在网上说指导GPT工作是一件非常痛苦的事情。
近期越来越多的文章提出指令工程(prompt engineering)的重要性,简单说就是通过不断试验修正指令优化GPT给出最理想的反馈,并记录形成指令库。这就像是我们得到了一个黑盒大致知道这个东西有什么用,但又不清楚具体输入和输出是怎么对应的,prompt engineering就是将输入和输出通过不断的试验对在一起,写过代码的人很快就会发现通过不断尝试修正最后可能就形成了一个用自然语言写的“代码块”或者“函数”,其实就也成了一个编程的过程。由于GPT已经同我们的日常语言几乎一致,又保留了代码的逻辑,在不断优化指令的过程中使用者的交流能力也被打磨提高了,开始习惯用简洁清晰的语句描述需求。由于GPT给出的结果不一定正确或者准确,给了不同指令得到同一个问题的多个结果之后需要比对,找出错误,选择更优的方案,无形之中能够养成批判性的思维习惯。总结来说:1)使用者和GPT是共同成长的;2)GPT的出现替代了繁琐重复的工作,统一了编程语言和自然语音,留下了大量的时间让人们关注问题的本质逻辑链以及思考如何清晰表达;3)这就对未来生活在到处都是LLM的人们提出了新的要求(关注问题本质逻辑,培养创造力,锻炼用某一种自然语言清晰表达想法的能力)
因为准备8月份考雅思,最近用到最多的就是让GPT辅助我学习雅思。这个过程中跟GPT的沟通我觉得确实也是体现了以上所讨论的内容,简单用这个来举例。
刚开始尝试GPT的时候网上教程也不多,我就自己尝试跟GPT发“rewrite the passage:” 把所写的作文粘在冒号后面,确实基本按原来文章的意思修改了,但我最开始作文写的逻辑有问题,论点也很匮乏,GPT的rewrite仅仅就是修改了拼写,语法,换个词和短语。后来受到B站一个视频的启发说在后面加in XXX style, 于是就试了一堆“ in native speaker style”,”in schoolar style”, “in college writing style”…确实改写了不同的风格版本。但是花里胡哨,不认识的词和句子给了我一堆,还是没有解决我作文论点和论据不足的问题。接着又尝试了”expand and rewrite the passage from more different angles or aspects”这类的限定语句,GPT开始给我作文扩写,甚至还添加一些故事作为证明。于是我就每次批改让GPT就作文主题直接给我列举一些可讨论的方向,这确实让我收获还挺大的。
前面提到的尝试是在还没安装KeepChatGPT之前,跟GPT的对话都不能称之为对话,基本就是一次性问答。后来让GPT给我按雅思标准打分,在这种一次性问答下分数给我笑死了,同一篇作文2-15分都给我打过,十分迷惑15分是什么鬼,总分不是9分吗,于是限定“total 9”,总算没有>9这么离谱的了。在安装KeepChatGPT之后,就能真正进行对话了,在开启一个新的对话的时候给GPT这样一个指令:“Now, you play a patient and carefull IELTS expert examiner and teacher” 它就会把雅思作文的评分标准说一遍,之后打出来的分数就非常稳定了
今天看到吴恩达和OpenAI的开发者lza Fulford合作做的技术教程《ChatGPT提示工程》 (非常推荐有时间可以看看)原来指令还可以像代码一样拆分步骤,描述输入标识符,还能按JSON这样结构化输出。
.png)
我尝试将我的雅思作文批改指令进行优化:
.png)
.png)
本来打分修改写在一起的,但对话模式不能像用Python调用API 能处理多个步骤,于是我一步一步提交指令。第一步ChatGPT相对稳定的给了我打分(试了好多次都打分偏差都不大)
.png)
第二步我不希望GPT只是给我修改后的内容,我想能有个表格每句话修改前修改后进行对比,并且解释为什么这么修改,修改了十几个版本的指令,基本实现了这个想法。需要提一下在网页版的GPT上输出内容是有限的,我开始直接让它把修改内容全部输出,发现尽管插件让它能输出更多内容了,但仍然不能完整输出,连带着提供的解释也非常简短。于是我添加限定条件把输入的作文分三部分进行修改输出,最终指令如下:
.png)
.png)
之后同一个对话追加:
.png)
GPT就接着上面修改输出的内容继续第二部分的修改了。我之后还会给一些就这个话题拓展观点,然后让它按观点给我提供范文,完全可以量身定制,在修改指令的过程中我发现我英文表达也有所提高,最近这种练习确实让我写作提高了些,也让我深刻体会到了prompts的重要,相信随着各种GPT prompt社群的增多,以后会激发出更多好的prompts让GPT更好的服务于我们的日常学习工作,也暗示了大家这是一个科技发展趋势,就如同计算机和智能手机的出现,不是它能替代人,而是提出来新的机遇和挑战,能很快适应并用其提高自己学习和工作效率的人自然是和它共同成长而不会被替代的。
期待GPT能带来一个更加有意思的世界!