AI辅助编程:常用的7种Prompt模式

简介: DevGPT数据集收录了使用ChatGPT进行辅助编程的2万余条提示语及回答;基于该数据集的总结发现了7种常用的提示语模式

“ChatGPT共享链接”(ChatGPT Shared Links)是ChatGPT支持的一个功能,用来为用户的ChatGPT对话生成URL,便于用户分享对话记录,比使用截屏更便捷。GitHub和Hacker News上的不少用户通过“ChatGPT共享链接”来分享与ChatGPT的交互及结果。下图就是一个在GitHub的Pull Request中使用“ChatGPT共享链接”的示例。

Figure_1B.jpg

DevGPT数据集[1]的数据就来源于GitHub和Hacker News上大量的“ChatGPT共享链接”[2]。该数据集包含了2万余条用户输入的ChatGPT提示语(Prompt)及对应的对话内容。

Title_1.jpg

DevGPT数据集的作者们希望通过该数据集,来促进AI辅助编程领域的研究。作者们列举了AI辅助编程领域若干有待研究的问题[2],例如:

  • 开发人员常向ChatGPT提问哪类问题(排错、编程、理论问题等)?
  • 开发人员向ChatGPT提问时,使用的提示语有哪些模式?使用这些模式与所提问题得到解决有什么关系?
  • 与ChatGPT对话的典型结构是什么样的?提问的问题得到解决平均需要多少轮问答?
  • 如果ChatGPT生成的代码被开发人员采用,有关的代码在使用前需要开发人员做多大程度的修改?修改有哪些常见类型?
  • ChatGPT生成的代码与Stack Overflow等网上找到的代码相比,有什么特点?
  • ChatGPT生成的代码,常见的质量问题有哪些?
  • 根据开始的提示语以及上下文情况,能否准确地预测出与ChatGPT对话的长度?
  • 根据开始的ChatGPT对话,能否准确地预测出所提问题是否会被解决?

提示语的7种常用模式

自DevGPT数据集发布以来,基于该数据集开展的研究成果不少,其中,近期发布的一篇论文[3]基于有关文献以及DevGPT数据集,总结出了AI辅助编程常用的7种提示语模式。

Title_2.jpg

提示语模式在概念上有些类似于软件设计模式,但主要用于与大语言模型(LLM)的交互。以下是这7种常用的提示语模式[3]。

Persona模式

采用该模式时,开发人员为AI定义一个角色或身份,让AI以这个角色或身份来生成信息或结果。该模式常采用“你是....”、“假设你是....”等词语。

提示语示例:“你是一个XX专家....你的任务是创建一个....”

Recipe模式

采用该模式时,开发人员为AI列出一步步的指示,用于指导AI完成一个多步骤的过程,或者进行一系列操作。

提示语示例:“写一个名为XX的函数,该函数首先....,然后....”

Template模式

采用该模式时,开发人员为AI的输出描述一个模板、结构或格式,要求AI按照描述的模板、结构或格式进行回答。

提示语示例:“....回答时采用....格式,分隔符采用....符号,各个标题分别采用....”

Output Automator模式

采用该模式时,开发人员指示AI以代码、脚本、配置文件等机器可读的形式生成结果,以避免AI为答案中的多个步骤生成较长的语言描述。

提示语示例:“....生成一个Dockerfile....”

Instructions-Based模式

又称为Simple Instruction模式——开发人员仅向AI提出指示或命令,无需提供背景知识、角色定义等。该模式常采用“解释....”、“描述....”、“告诉我....”、“为我提供....”等词语。

提示语示例:“帮我解释一下....”

Context and Instructions模式

采用该模式时,开发人员既提出指示或命令,又描述背景知识。该模式中可能会出现“根据....”、“....基于这一信息....”等词语。

提示语示例:“我正在使用XX库来实现....功能。当触发了'开始'之后,XX库一直显示....,直到运行完成为止。我想修改一下这个XX库,使得在触发了'开始'之后,显示变成....”

Question模式

采用该模式时,开发人员围绕感兴趣的信息或解释,直接向AI提问,无需提供背景知识、输出模板、输出风格等。该模式常采用“为什么....”、“在哪里....”、“什么时候....”、“谁....”、“怎样....”等词语。

提示语示例:“如何让XX平台的通知在YY程序运行时显示?”

小结

以上仅为AI辅助编程中常用的一些提示语模式。多个提示语模式可以相互组合,同时出现在一个提示语中。

其它关于提示语模式的总结

美国范德比尔特大学(Vanderbilt University)的研究人员曾经在一篇论文[4]中详细列举并讨论了16种提示语模式。该大学的研究人员在另外一篇论文[5]中列举并讨论了更多的提示语模式,用于软件工程中的代码改进、需求征集、代码重构、系统设计等场景。

参考资料

[1] https://github.com/NAIST-SE/DevGPT

[2] DevGPT: Studying Developer-ChatGPT Conversations

https://arxiv.org/abs/2309.03914

使用许可协议:CC BY

https://creativecommons.org/licenses/by/4.0/

[3] Exploring Prompt Patterns in AI-Assisted Code Generation: Towards Faster and More Effective Developer-AI Collaboration

https://arxiv.org/abs/2506.01604

[4] A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT

https://arxiv.org/abs/2302.11382

[5] ChatGPT Prompt Patterns for Improving Code Quality, Refactoring, Requirements Elicitation, and Software Design

https://arxiv.org/abs/2303.07839


封面图:Kindel Media、Pexels

目录
相关文章
|
27天前
|
人工智能 数据可视化 定位技术
不会编程也能体验的 AI 魔法,外滩大会代码原生地等你解锁
不会编程也能体验的 AI 魔法,外滩大会代码原生地等你解锁
323 39
|
21天前
|
存储 消息中间件 人工智能
【03】AI辅助编程完整的安卓二次商业实战-本地构建运行并且调试-二次开发改注册登陆按钮颜色以及整体资源结构熟悉-优雅草伊凡
【03】AI辅助编程完整的安卓二次商业实战-本地构建运行并且调试-二次开发改注册登陆按钮颜色以及整体资源结构熟悉-优雅草伊凡
56 3
|
1月前
|
人工智能 运维 监控
让天下没有难查的故障:2025 阿里云 AI 原生编程挑战赛正式启动
本次大赛由阿里云主办,云原生应用平台承办,聚焦 Operation Intelligence 的智能运维(AIOps)赛道,为热爱 AI 技术的开发者提供发挥创意和想象力的舞台,借助 LLM 强大的推理能力与标准化整合的多源可观测数据,找到 AI 应用在智能运维(AIOps)场景上的新方式。
279 32
|
9天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
410 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
28天前
|
人工智能 算法 小程序
再见 Cursor,Qoder 真香!这波要改写 AI 编程格局
真心建议大家去使用一下这段时间最新推出的一款 AI 编程工具:Qoder 。真的是太好用了,一点也不比 Cursor 差。
549 10
|
2月前
|
人工智能 自然语言处理 搜索推荐
AI Compass前沿速览:Qoder Agentic编程、vivo Vision头显、AIRI桌面伴侣、RM-Gallery奖励模型平台
AI Compass前沿速览:Qoder Agentic编程、vivo Vision头显、AIRI桌面伴侣、RM-Gallery奖励模型平台
AI Compass前沿速览:Qoder Agentic编程、vivo Vision头显、AIRI桌面伴侣、RM-Gallery奖励模型平台
|
27天前
|
人工智能 JSON 前端开发
Agentic AI崛起:九大核心技术定义未来人机交互模式​
本文系统梳理AI智能体架构设计的九大核心技术,涵盖智能体基础、多智能体协作、知识增强、模型优化、工具调用、协议标准化及人机交互等关键领域,助力构建高效、智能、协同的AI应用体系。建议点赞收藏,持续关注AI架构前沿技术。
380 1
|
2月前
|
人工智能 算法 前端开发
超越Prompt Engineering:揭秘高并发AI系统的上下文工程实践
本文系统解析AI工程范式从Prompt Engineering到Context Engineering的演进路径,深入探讨RAG、向量数据库、上下文压缩等关键技术,并结合LangGraph与智能体系统架构,助力开发者构建高可靠AI应用。
250 1
|
21天前
|
存储 消息中间件 人工智能
【08】AI辅助编程完整的安卓二次商业实战-修改消息聊天框背景色-触发聊天让程序异常终止bug牵涉更多聊天消息发送优化处理-优雅草卓伊凡
【08】AI辅助编程完整的安卓二次商业实战-修改消息聊天框背景色-触发聊天让程序异常终止bug牵涉更多聊天消息发送优化处理-优雅草卓伊凡
106 10
【08】AI辅助编程完整的安卓二次商业实战-修改消息聊天框背景色-触发聊天让程序异常终止bug牵涉更多聊天消息发送优化处理-优雅草卓伊凡
|
21天前
|
存储 消息中间件 人工智能
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
66 11
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡

热门文章

最新文章