我们如何在不牺牲任务质量的情况下使AI编码更具成本效益

为什么较短的输出可能会花费更多,以及GitHub Copilot如何在整个编码任务中减少浪费的工作。我们如何在不牺牲任务质量的情况下使AI编码更具成本效益,这篇文章首先出现在GitHub博客上。

Erik Krogh Kristensen是位于人工智能、编码和安全交叉点的GitHub大楼的员工软件工程师。在过去的几年里,他在GitHub开发了各种各样的人工智能产品,如Copilot Autofix、Copilot Code Review和最近的Copilot CLI。他是如何让人工智能编码产品变得更好、更高效的可靠来源。

与AI编码代理合作时,输出质量很重要,但真正的效率来自快速、高效地完成工作,并具有正确的背景。这就是为什么仅凭个人交互的代币数量并不能有效地衡量效率。目标不应该是使用更少的令牌,而是利用适当数量的上下文来推进任务。

简洁的工具响应有时可能需要额外的电话或工作,如果遗漏了客服代表需要的信息,最终会使任务变得更慢、更昂贵。这就是为什么我们希望针对结果而不是工具调用进行优化。这篇文章探讨了GitHub Copilot中将这一原则付诸实践的四个变化:保留有用的上下文,同时减少重复输出。删除不会为任务增加值的格式。

在不改变有用行为的情况下缩短指令。无需额外的检索步骤即可交付已完成的后台工作。使用代理编码基准对可能的更改进行离线评估。最有希望的变化在发货前通过受控的在线实验进行验证。本文中的示例来自GitHub Copilot CLI。

其他多个Copilot产品,如GitHub Copilot应用程序和Copilot代码审查,使用相同的基础线束,并通过这些改进提高效率。图1:使用相同AI信用指标的四个独立A/B实验。这些片段一起显示以进行比较;它们的效果不一定严格地是相加的。