NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

GitHub 工程师分享将 Copilot 引入工程实践的方法

  • 2023-08-31
    北京
  • 本文字数:1097 字

    阅读完需:约 4 分钟

GitHub工程师分享将 Copilot 引入工程实践的方法

GitHub 工程师 Albert Ziegler 和 John Berryman 表示,不需要拥有机器学习或生成式 AI 博士学位就可以创建有效的基于 LLM 的应用程序,提示词工程是关键。他们还分享了他们在开发GitHub Copilot过程中所积累的经验

 

LLM 的崛起为那些希望在应用程序中利用生成式 AI 的从业者创造了一个全新的领域。这个领域被称为提示词工程,专注于如何指导 LLM 产生不属于其预训练部分内容的输出。人们可以通过提示词工程定义包含足够多上下文信息的提示词,让 LLM 产生可能最佳的输出。

 

上下文信息存在于用户领域,并且应该与任务规范一起被包含在提示词中,而任务规范存在于不确定的文档领域,在那里,LLM 只是一种可以预测下一个标记的预测器。如果这两个领域之间没有被正确映射,例如,没有在提示词中告知响应应该被作为“一个有用的 IT 专家”生成的内容返回,那么返回的响应可能会很一般。

 

Ziegler 和 Berryman 表示,对于 Copilot 来说,有用的上下文信息可能包括语言、文件路径、光标上方的文本、光标下方的文本、其他文件中的文本,等等。

 

用户领域和文档领域之间的转换正是提示词工程所覆盖的领域——由于我们已经在 GitHub Copilot 项目上工作了两年多,所以在这个过程中发现了一些模式。

 

总的来说,他们建议的方法是基于一系列步骤的。首先,你需要收集所有相关上下文(也就是上下文收集),可能包含所有的源文件。在大多数情况下,这些上下文信息的量将超出可用的 LLM 窗口,因此你需要通过将其分割成较小不重叠的块。接下来的两个阶段是找到一种自然的方式将上下文信息注入到 LLM 文档中,例如,对于 Copilot 来说就是使用代码注释,并根据其相关性确定要包含的片段的优先级。如果你有多个 LLM 模型可选择,那么另一个阶段是决定使用哪个模型进行推理。最后一步是定义一个停止标准,让 LLM 知道何时完成,例如,当输出换行符时。

 

实现提示词工程有很多种方法。最近,微软开源了LMOps工具包,其中包含了Promptist(一种用于优化用户文本输入以生成图像的工具)和结构化提示词(一种用于在少量学习提示词中包含更多样本来生成文本的技术)。

 

尽管我们可以推测 LLM 将发展到不再需要提示词工程的地步,但 OpenAI 工程师 Sherwin Wu 在上一次纽约 QCon 大会的“生产环境中的 LLM”小组讨论会上指出,至少在未来五年内仍然可能需要它

 

如果你对 GitHub 在提示词工程方面所采用的方法感兴趣,请不要错过这篇完整的文章,它涵盖了比本文更多的细节内容。

 

原文链接

https://www.infoq.com/news/2023/07/copilot-prompt-engineering/


相关阅读:

Copilot Chat 推出公开测试版,GitHub:花费数月的单元测试成为过去

集成 GPT-4 的编程神器来了,GitHub 发布 Copilot X:编程 30 年,突然就不需要手敲代码了?

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2023-08-31 08:005121

评论

发布
暂无评论
发现更多内容

架构设计文档

talen

食堂就餐卡系统设计

莫莫大人

第一课 架构师的自我修养

Geek_bobo

链改,改的是什么?

CECBC

区块链技术 不可篡改 链改 上链 Token

架构师训练营-第1周学习总结

红了哟

程序员需要学会画UML图

张瑞浩

01周学习总结

dao

极客大学架构师训练营

关于架构师

莫莫大人

极客时间架构课Week01-作业二:学习总结

yulyulcl

食堂就餐卡系统架构设计

嘻哈

餐卡系统设计

YY

架构方法学习小结

梅子黄时雨

极客大学架构师训练营

食堂就餐卡系统架构设计文档

呆呆栋

架构师训练营第 1 周 _ 食堂就餐卡系统设计

方舟勇士

课程练习

一周信创舆情观察(6.1~6.7)

统小信uos

大数据 网络安全 新基建

架构师入门之架构方法

知识乞丐

极客大学架构师训练营

架构师训练营第一周总结

皓首不倦

第一周作业:食堂就餐卡系统设计

尔东雨田

极客大学架构师训练营

架构师训练营第0期第1周学习总结

upupup

极客大学架构师训练营

作业一:食堂就餐卡系统设计

丿淡忘

食堂就餐卡系统设计

架构设计 极客大学架构师训练营

架构师训练营 - 第一周学习总结

牛牛

学习 极客大学架构师训练营

技术管理者标准管理模板

Mr.RowKey

架构师训-总结

leis

架构师训练营第一周学习总结

阿德

架构师训练营第一周作业 - 食堂就餐卡系统设计

阿德

第一周作业

Geek_2b3614

食堂就餐卡系统设计

upupup

极客大学架构师训练营

第一周学习笔记

丿淡忘

极客大学架构师训练营

什么是架构师?

呆呆栋

食堂就餐卡系统设计方案-week01

老A

架构 架构师 极客大学架构师训练营 架构文档

GitHub工程师分享将 Copilot 引入工程实践的方法_生成式 AI_Sergio De Simone_InfoQ精选文章