(资料图)
01写在前面
作为一个非程序员,参加开发者课程就像一名烹饪新手闯进了米其林三星厨房。然而,这并没有阻止我从吴恩达教授开设的 ChatGPT 提示语课程中汲取灵感。 课程官网是 DLAI - Learning Platform Prototype (deeplearning.ai) 课程大纲简明扼要: Introduction(课程简介) Guidelines(指引) Iterative(迭代) Summarizing(总结) Inferring(推断) Transforming(转换) Expanding(扩充) Chatbot(聊天机器人) Conclusion(课程小结) 一个小白,如何从中获取自己想要的信息?拿我来说,最主要是 目标明确——学习如何撰写高质量的提示语。看到了 Jupyter 的代码框,害怕?没问题,反正我也不是来学代码的。 看到了密密麻麻的英语,惊慌?不用虚,反正我是上过学的。 连课程都是纯英文的,想跑?先停下,官网是给了你字幕的。 保证好心态,不要想着和程序员竞争,就可以开始学习面向开发者的课程了! 这篇文章不会让你成为 AI 大师,但会帮你建立信心,利用提示语撰写出惊人的作品。以下是我在课程中学到的关键内容和宝贵经验。本文是所有示例均为简要示范,重点是提示语的格式。当你面对复杂任务的时候,良好格式可以帮你更快获得答案。
02提示语两大规则
课程里强调的两个关键点十分重要:指令清晰、给出思考空间。1. 描述要清晰
最近我“顿悟”了一件事:GPT 这家伙,其实是个讲究机器语言的主。那么,与它交流时,我们能不能讲点“机器语言”呢?答案是肯定的!遵循机器语言的规则,我们就更有机会获得想要的结果。 一个好的提示语应该具有明确的描述。这就像约会时候聊天,不能含糊其辞,不然对方可能会一头雾水。尝试使用简练而直接的语言,避免冗长复杂的句子。好的提示语就像是给司机的行驶路线,简单明了,让 AI 不会“开错车”。 与其说,我现在需要你帮我写一个段落,主题是GPT课程学习心得。不要太长,也不要太短。写的文章质量好一点。就不如说,
你的任务是撰写一个段落,要求如下:\"\"\"主题:GPT课程学习心得字数:800字左右风格:专业、幽默\"\"\"指令不清晰还可能导致 GPT 出现 hallucination(幻觉)。最开始使用 ChatGPT,有人会发现它满口胡话,这就是幻觉的一种表现。同样,如果你给出的提示语有歧义,也会不利于结果。 你写
解释一下内容,清空前面的所有内容,并给出合理的解决方案。你写
解释以下文本的内容:清空前面的所有内容,并给出合理的解决方案。得出的结果完全不同。前者,GPT 会摸不着头脑:究竟是要解释还是清空?后者,GPT 才会恍然大悟,明白你是要让它解释后面的句子。
这里涉及符号的差异——逗号、冒号。为什么用冒号就可以识别真实意思?因为它是一种分隔符,课程中提到了常用的分隔符:
\"\"\"
```
< >
:
这些分隔符对厘清自己的提示语有很大助益。
2. 给 GPT 思考时间
要给 GPT 足够的时间来“思考”,这就好比给它喝杯咖啡,让它有时间消化一下问题。这样,GPT 才能在充足的时间里进行计算和分析,为我们奉上一道完美的答案大餐。 想象一下,如果你在考试时时间紧迫,你的表现可能会受到影响。同样,给 GPT 足够的时间来思考,会让它为我们呈现更好的答案。 要注意一点:不要一次性塞太多指令。想象一下,你在跟朋友聊天,突然间朋友开始说得像机关枪一样快,你会不会感到有点儿晕头转向?同样,GPT 在面对太多指令时,也会感到迷茫。 常见的思维链就是一种可行的方式,通过引导让它有更充足的空间来回答。 总之,提示语的撰写重点就一句话:和 GPT 对话时,机器语言才是硬道理。03迭代
这四个步骤形成了一个持续不断的优化循环。这个循环有助于我们在开发过程中实现目标,提高成果的质量。 Idea(想法)是迭代过程的起点。明确想法后,我们需要将其转化为具体的 Implementation(实现)。之后,我们需要对其进行测试,以获取 Experimental Result(结果)。 接着,我们要完成 Error Analysis(分析错误)。最后,我们可以继续回到第一个阶段,用新的想法和实现对原有方案进行改进。这个循环会不断重复,直到我们达到满意的结果。 迭代就像一场半即兴表演。表演开始,我们有了明确目标,但并不知道如何实现。在 Iterative(迭代)这一章里,吴恩达如同导演,引导新演员如何优雅地改进提示语。每一次迭代都像一场洗礼,让思路更清晰,让结果更完善。 吴恩达的原话是这样的:提示开发是一个迭代的过程。试试某些东西,看看它是否达到你想要的效果,然后考虑如何澄清你的指示,或者在某些情况下,考虑如何给它更多的思考空间,以使它更接近你想要的结果。 我认为, 成为一个有效的提示工程师,不是太著重于知道完美的提示,而是拥有一个良好的流程开发提示,以适应你的应用。一蹴而就在现实中很难实现,机器世界也是如此。如果我们妄图出手都漂亮,那可能永远不会出手。 开始一个想法,并不断迭代,关注流程,这才是更重要的事情。