程序员提示工程手册
开发者们正越来越依赖AI编程助手来加速我们的日常工作流程。这些工具可以自动补全函数、建议错误修复,甚至生成整个模块或MVP。然而,正如我们许多人所了解的,AI输出的质量很大程度上取决于你提供的提示质量。换句话说,提示工程已经成为一项必备技能。措辞不当的请求可能产生无关或通用的答案,而精心制作的提示可以产生深思熟虑、准确甚至有创意的代码解决方案。本文从实践角度探讨如何系统性地为常见开发任务制作有效的提示。
AI配对程序员很强大但并非魔法——除了你告诉它们或作为上下文包含的内容外,它们对你的特定项目或意图一无所知。你提供的信息越多,输出就越好。我们将提炼关键的提示模式、可重复的框架和与开发者产生共鸣的难忘示例。你将看到好提示与坏提示的并列比较以及实际的AI响应,还有解释为什么一个成功而另一个失败的评论。这里有一个备忘单来开始:
有效代码提示的基础
向AI编程工具提示有点像与一个非常字面化、有时知识渊博的合作者交流。为了获得有用的结果,你需要清楚地设定场景并指导AI想要什么和如何想要它。
以下是支撑本手册中所有示例的基础原则:
-
提供丰富的上下文。 始终假设AI除了你提供的内容外对你的项目一无所知。包含相关细节,如编程语言、框架和库,以及讨论中的特定函数或代码片段。如果有错误,提供确切的错误消息并描述代码应该做什么。具体性和上下文是模糊建议和精确、可操作解决方案之间的区别。在实践中,这意味着你的提示可能包含简短的设置,如:"我有一个使用Express和Mongoose的Node.js函数,应该通过ID获取用户,但它抛出TypeError。这是代码和错误..."。你给出的设置越多,AI需要猜测的就越少。
-
对你的目标或问题要具体。 模糊的查询导致模糊的答案。与其问"为什么我的代码不工作?"这样的问题,不如指出你需要什么见解。例如:"这个JavaScript函数返回undefined而不是预期的结果。给定下面的代码,你能帮助识别原因和如何修复吗?"更有可能产生有用的答案。调试的一个提示公式是:"它预期做[预期行为]但相反它在给定[示例输入]时做[当前行为]。bug在哪里?"。同样,如果你想要优化,要求特定类型的优化(例如*"如何提高这个排序函数处理1万个项目的运行时性能?"*)。具体性引导AI的焦点。
-
分解复杂任务。 当实现新功能或处理多步骤问题时,不要在一个巨大的提示中输入整个问题。将工作拆分为较小的块并迭代通常更有效。例如,*"首先,为产品列表页面生成一个React组件骨架。接下来,我们将添加状态管理。然后,我们将集成API调用。"*每个提示都建立在前一个的基础上。通常不建议一次性要求整个大功能;相反,从高级目标开始,然后迭代地请求每一部分。这种方法不

最低0.47元/天 解锁文章
824

被折叠的 条评论
为什么被折叠?



