Github Copilot学习笔记

(一)Prompt Engineering

  • 利用AI工具生成prompt
  • 设计好的prompt结构
  • 使用MarkDown语法,按Role, Skills, Constrains, Background, Requirements和Demo这几个维度描述需求。然后收输入提示词:作为 [Role], 拥有 [Skills], 严格遵守 [Constrains],根据[Background]和[Requirements], 参考[Demo]开始工作.

1.Specific Persona 明确Copilot的身份

  • 好的例子

1.你是一个Senior的Typescript Developer,非常注重代码质量、抽象度、稳定性和代码执行效率

2.Break Down 任务拆解

  • 原则

1.AI最了解AI自己,与AI聊天,合作完成任务的拆解

2.不要试图在一次对话或者一个文件中让AI全部扫描,让它自己做拆分逐个学习和理解,反复提问

3.Specific Requirements with Constrain 明确需求,包括输入输出和实现标准及约束条件

目的明确

确定约束条件

用什么语言或格式输出

可以提供示例

4.Keep the context Relevant保持上下文关联

  • 原则

1.让AI逐个理解你的输入,询问它的疑惑点或者询问其是否对项目有了进一步的了解,check它理解的正确性,并考察它几个重要的概念,纠正它的错误理解,并最终让它编写"学习笔记",形成Knowledge Bases的Local MD文件

2.在具体功能细节上使用注释和函数作用声明

3.在Setttings中声明Instructions,文件内包含了对Copilot的各种规范、规则、和期望

4.由于GitHub Copilot 的Search能力,除了自带的Github Search之外,得基于第三方Participant(比如Bing),所以结合ChatGPT的Search能力帮助其进行竞品分析,这也是一个获取其他相关材料来投喂的一种方式

5.可以主动询问AI一次可以分析多少条case

6.当AI无法分析PDF或DOC等文件时,可以让它提供代码,转化成文本文件,然后作为AI的输入

(二)Reviewing and Redifining Suggestions

  • 原则

1.Check and then Accept, check的过程中如果发现AI理解或者建议错误,不要盲目接受,而是直接指出错误的地方,让它重新调整后再给出建议,不断的沟通和要求其调整,直到满意后才Accept

  • 好的例子

1.明确告知AI你给的是A,而我想要B,避免机械地重复给我B

2.先对其认知,询问它对需求的理解是什么,问它有什么困惑,并给予逐一回答并再三确认,先给予再要求输出

3.直接重开一个Chat

(三)Efficient Collaboration

  • 原则

从Chat到Edit到Inline,是一个从Overview到Detail,从整体到细节的过程,从High Level的讨论 (用Chat),到执行(Edit), 再到微调(Inline Suggestion)。这个流程下来,自己不用动手写一行代码,全程在指挥(聊天)

  • 好的例子

1.GitHub Copilot其实在代码相关的功能方面表现比较有优势,比如代码、命令行、注释、数据库查询生成;API与框架设计;代码解释、Debugging;以及IaC方面的建议生成等。 结合VSCode,可以直接进行文件编辑,比如测试用例编写。
ChatGPT 则能够在代码之外给出更多更详细的建议,有趣的是,我跟ChatGPT了解该如何用好GitHub Copilot,它倒是给出了不少有效的建议。

(四)Improvement

相关推荐
QT 小鲜肉几秒前
【QT/C++】Qt网络编程进阶:TCP网络编程的基本原理和实际应用(超详细)
c语言·开发语言·网络·c++·qt·学习·tcp/ip
YuanDaima20484 分钟前
安全协议设计入门:原理与分析
人工智能·笔记·安全·网络安全·密码学·安全协议·课程
浮游本尊21 分钟前
React 18.x 学习计划 - 第六天:React路由和导航
前端·学习·react.js
yuxb731 小时前
Zabbix企业级分布式监控系统(上)
笔记·学习·zabbix
现在,此刻1 小时前
李沐深度学习笔记D1-什么是深度学习
人工智能·笔记·深度学习
猿来是你_L3 小时前
UGUI笔记——3D坐标转换成UGUI坐标
笔记·3d
崎岖Qiu8 小时前
【设计模式笔记17】:单例模式1-模式分析
java·笔记·单例模式·设计模式
Chloeis Syntax9 小时前
MySQL初阶学习日记(1)--- 数据库的基本操作
数据库·学习·mysql
lkbhua莱克瓦249 小时前
Java练习-正则表达式 1
java·笔记·正则表达式·github
musenh9 小时前
css样式学习
css·学习·css3