想要更好的 AI 输出?试试上下文工程。
Source: GitHub Blog
什么是上下文工程?
上下文工程是提示工程的进化。它不再侧重于巧妙的措辞,而是正如 Braintrust CEO Ankur Goyal 所说,侧重于 “把正确的信息(以正确的格式)提供给大语言模型(LLM)”。
在 GitHub Universe 去年秋季,Harald Kirschner——微软的首席产品经理、长期从事 VS Code 和 GitHub Copilot 的专家——概述了开发者今天可以采用的三种实用的上下文工程方法:
- 自定义指令
- 可复用提示
- 自定义代理
每种技术都能让 Copilot 获得更多信息,从而生成符合你的期望、架构和团队标准的代码。
1. 自定义指令:为 Copilot 设定遵循的规则
自定义指令文件 帮助 Copilot 理解你的:
- 编码约定
- 语言偏好
- 命名规范
- 文档风格
你可以使用:
- 全局规则:
\.github/copilot-instructions.md - 任务特定规则:
\.github/instructions/*.instructions.md
例如,你可以定义 React 组件的结构、Node 服务的错误处理方式,或是 API 文档的格式。Copilot 在工作时会自动应用这些规则。
2. 可复用提示:标准化常见工作流
可复用提示文件让你把频繁的任务——如代码审查、搭建组件、生成测试或初始化项目——转化为可以即时、统一调用的提示。
使用方式:
- 提示文件:
\.github/prompts/*.prompts.md - 斜杠命令 如
/create-react-form来触发结构化任务
这有助于团队保持一致性、加速新人上手,并以相同的方式执行可重复的工作流。
3. 自定义代理:创建任务专属的 AI 角色
自定义代理让你构建具有明确职责和范围的专用 AI 助手。例如:
- 用于审查接口的 API 设计代理
- 执行静态分析任务的 安全代理
- 重写注释或生成示例的 文档代理
代理可以拥有自己的工具、指令、约束和行为模型,并且可以在更复杂的工作流中实现代理之间的交接。
为什么上下文工程很重要
目标不仅是获得更好的输出,而是让 Copilot 更好地理解。当你提供更清晰的上下文时,你可以:
- 获得更准确、可靠的代码
- 减少来回提示的次数
- 提高文件和仓库之间的一致性
- 更长时间保持开发流畅,而不是反复重写或纠正结果
通过实验上下文工程,你会发现它对开发体验的深远影响。