值得收藏的ChatGPT辅助编程技巧
在我们开始之前,你必须先了解编程语言,然后才能相信 ChatGPT 抛给你的任何东西。 我必须明确这一点,因为许多误入歧途的绵羊被告知 ChatGPT 是新的圣杯,开发人员将被淘汰。
推荐:用 NSDT场景设计器快速搭建3D场景。
使用 ChatGPT 或任何 LLM 不会自动让你成为大师,也不会自动让你更有效率。
一味的复制粘贴代码对任何人都没有好处; 这只是懒惰。 它可能会导致意想不到的后果,当你添加不理解的代码时,这可能会直接或间接地损害你的项目。
你需要承认 ChatGPT 已经使用 2021 年之前的公开数据进行了训练。结果可能有偏见、容易出错并且缺乏引用。 因此,最好始终牢记这一点,因为它提供准确和最新答案的能力并不比其训练数据集的准确性和相关性更好。 随着 OpenAI 弄清楚如何持续确保模型是最新的,这可能会随着时间的推移而改变。
如上所述,“提示”可能会生成答案或代码片段,这些答案或代码片段可能会引用较旧的框架版本或具有安全缺陷或错误的已弃用功能。
现在我们已经解决了这个问题,让我们进入并查看一些有价值的提示,这些提示将帮助你增强使用 ChatGPT 的方式。
1、避免丢失上下文
ChatGPT 是上下文感知的。
ChatGPT 有文本输出限制,但可以通过键入“continue”或“继续”轻松绕过这一限制。
如果“继续”返回的解决方案略有不同,你可能需要返回并修复变量名称或更改函数参数的顺序。
如果你在聊天中问太多问题,它最终会失去上下文,因为每次你问一个新问题时它只会延续之前对话的有限部分。
要解决这个问题并保留上下文,可以编辑之前的问题并提出一个完全不同的问题。 ChatGPT 仍将保留更早之前的上下文,这对于询问有关同一应用程序中不同文件的编码问题很有用。
另一个提示是提示“Rewrite for ”让 ChatGPT 修改其答案。 具体说明你想要的输出样式。 “Teach me about code…”、“Write code on…”都会给出不同风格的答案,这可能与点击重新生成的响应不同。
2、保持提示简短准确
有时,冗长、复杂的提示可能会产生相反的效果,因此保持简短和精确总是好的。 如果你给它太多的任务或者答案需要大量的文字,它可能只是拒绝回答/帮助。
最好描述程序,然后分别询问每个功能,同时指定与先前代码兼容的提示。 一旦你这样做了,你就可以得到想要的效果。
3、明确提示输出样式
将关键字“list”添加到你的提示中可以更改 ChatGPT 的输出方式。例如,下面的第二个提示要求chatgpt列出最大的银行:
由于 ChatGPT 是基于文本的,你可以使用关键字“markdown”作为提示的一部分。例如:
这是另一种要求代码输出的变体。 下面的键/值需要反过来,但是我们不清楚如何定义哈希表:
由于我们现在知道 ChatGPT 是上下文感知的,我们可以继续根据之前的输出请求进一步的更改:
此外,我们可以继续这个上下文感知之旅,并通过根据之前的提示编写更复杂的逻辑来进一步操纵输出:
4、生成代码文档
ChatGPT 可以帮助你为代码编写清晰简洁的文档,包括项目的 README.md 文件。 通过为模型提供有关你的代码的信息,它可以生成详细的文档来解释它的工作原理和使用方法。
采取的步骤包括:
提供带有你希望记录的代码功能片段的提示。 确保添加足够的上下文
如果需要,请提供更多详细信息
重复打磨
5、辅助完成代码
通过粘贴代码片段并提示建议,ChatGPT 可以帮助完成代码。 这为不同的问题解决技术提供了机会。 通过不断的提示,可以建立一个反馈循环来澄清特定的代码行,这有助于理解和深入了解你可以进行的潜在增强。
6、对输入保密代码保持警惕
鉴于 ChatGPT 使用的是 Large Language Model (LLM),即 Generative Pretrained Transformer,其中“生成”是指模型生成新内容的能力,该模型的底层基础是将大型训练数据集转换为数学 结构。 然后,它会学习该模式并使用它一次迭代地预测一个词,从而为给定的提示创建最佳响应。 这意味着你添加到其中的任何内容都可能用于未来的迭代训练。
在某些真实情况下,为了调查目的而插入代码片段是有意义的。 例如,交叉检查已经在公共领域的开源代码中的错误或不直接或间接披露专有公司机密的代码片段。