ChatGPT 不仅在编写方面具有真正的超能力,而且在生成代码方面也具有真正的超能力。ChatGPT 入门很简单,但如果您想充分利用它,那么您需要学习如何制作良好的提示。
提示是您为 ChatGPT AI 模型提供响应的说明或讨论主题。它可以是一个问题、陈述或您想要激发创造力、反思或参与的任何其他查询。
为了有效地使用 ChatGPT,您确实需要了解一些隐藏的提示和公式。在提示中实施这些公式并从 ChatGPT 获得最佳结果。
提示要具体
使用 ChatGPT 时,您希望避免过于简单的提示。此外,您的要求越具体越好。
您看待这个问题的方式并不是将 ChatGPT 视为这个自动售答机,您将代币放入其中,然后将答案吐给您。相反,您希望将 ChatGPT 视为您的个人助理(无论是用于生成内容还是代码)。
为了使您的查询尽可能详细和具体(并获得最佳答案),以下是您在创建提示时通常要使用的基本结构:
指定您要执行的操作(可以是编辑、撰写或批评)
接下来告诉 ChatGPT 您希望它输出什么格式(JSON、javascript、python 等)
应用条件和参数
角色或风格(这是可选的)
以下是包含上面指定的所有部分的查询示例:
// 在 JavaScript 中编写一个接受字符串的函数, // 然后返回前三个和最后三个字符。 // 该函数不应超过四行代码 // 使用最佳编码实践
因此,这里的操作是编写返回字符串中前三个字符和后三个字符的函数。我们希望它返回的格式是 javaScript。条件是我们希望它不超过三行。这里的风格是使用最佳编码实践。
这是 ChatGPT 吐出的内容:
1 function getFirstAndLastThreeCharacters(str) { 2 const firstThree = str.slice(0, 3); 3 const lastThree = str.slice(-3); 4 return `${firstThree}${lastThree}`; 5 }
实际截图如下:
因为我们在提示中要求的内容很具体,所以与我们要求更通用的内容相比,这对于我们想要的内容更加细致和具体。
使用 ChatGPT 生成代码的另一个好处是它还解释了代码。如果您是编程新手或不理解生成的代码,这将非常有用。
如果您对答案不满意,请单击“重新生成”按钮以生成不同的答案。如果有帮助,您还可以修改提示并使其更加具体。
指定基调、风格或受众
通常,您可能会为特定受众(例如初学者)生成代码(如果您正在编写与代码相关的教程,这种情况很常见)。也许您想要生成遵循特定编码风格或约定的代码(例如 EMCAscript 或 typescript)。
在这种情况下,您需要告知 ChatGPT 要采用的风格和语气,或者要针对的受众。为此,您通常需要在提示中添加以下语句:“以 X 语气编写”、“以 X 语言编写”或“为 X 受众编写”。
下面是一个查询示例,它告诉 ChatGPT 在生成代码时要遵循哪种语言:
// 严格使用 ES6 语言编写 JavaScript 无限循环
这将是输出:
1 const infiniteLoop = () => { 2 while (true) { 3 // Your code here 4 } 5 };
ChatGPT没有使用常规函数,而是根据我们的要求使用 ES6 箭头函数语法 ( () =>) 来定义函数。infiniteLoop您可以对其他编程语言、库和框架执行相同的操作。
引进专家
如果您还是编程新手,ChatGPT 可以为您扮演专家的角色。您可以要求它检查您的代码并提供有关如何改进代码的反馈。您将使用的提示符是:You are a (role). Do (action)。
例如:
// 您是一位专业的 JavaScript 开发人员。 // 检查我的代码并就我的方式提供反馈 // 可以改进一下,让它更简洁
然后,您将在查询下方粘贴您希望 ChatGPT 检查的代码,然后单击 Enter。作为回报,ChatGPT 将审查您的代码并提供有关如何改进代码的反馈。
我要求 ChatGPT 检查我的函数来检查字符串是否是回文。ChatGPT 给了我一个改进版本的代码作为回报:
1 function isPalindrome(string) { 2 const len = string.length; 3 for (let i = 0; i < Math.floor(len / 2); i++) { 4 if (string[i] !== string[len - 1 - i]) { 5 return false; 6 } 7 } 8 return true; 9 }
它还给了我一些提高其可读性和简洁性的建议:
通过此功能,您可以检查任何代码以确保其符合最佳编码标准。请记住,ChatGPT 可能会生成错误代码。因此,在将代码投入生产之前,您需要测试运行代码以确认它提供了预期的输出。
使用 ChatGPT 摆脱困境
作为一名软件开发人员,您在开发过程中必然会遇到问题。也许您的代码无法正常工作,但您不知道原因。或者您不确定如何创建执行特定任务的函数。
过去,寻找此类解决方案的最佳地点是 StackOverflow 和 Reddit 等论坛。但现在您可以使用 ChatGPT 来解决任何与编码相关的问题。
使用 ChatGPT 的最大好处是它是即时的,您无需浏览文章或解决方案即可找到您想要的内容。每个解决方案还附带深入的解释,这是您从 StackOverflow 或 Reddit 获得的答案中可能找不到的内容。
不断迭代
您可能不会立即得到您想要的东西,但这是预料之中的。准备好要求 ChatGPT 重写内容、重新生成代码块或对代码进行调整。或者,您可以简单地重做整个提示并从中获得全新的东西。
这里的关键是与 ChatGPT 进行来回的协作对话,而不是仅仅输入一个提示并期待一件事并再次尝试。
ChatGPT 真正酷的一点是,您可以与它进行连续对话,并且它会记住您之前的交互。它将能够记住在特定聊天中为您提供的其他答案的上下文。
结论
有效使用 ChatGPT 的关键是精心设计的提示。您的提示需要具体、简洁且尽可能详细。它应该包含一个操作、输出格式、一个或多个条件以及要使用的角色或样式(这是可选的)。
ChatGPT 不仅可以生成代码,还可以检查您自己的代码是否有错误并提供有关如何改进代码的反馈。如果正确使用,ChatGPT 可以帮助简化应用程序的开发过程。
发表评论