技术速递|让每一个 Token 发挥更大价值:Copilot 如何优化上下文处理与模型路由
创始人
2026-07-08 03:08:39

作者:Joe Binder

排版:Alan Wang

GitHub Copilot 正在通过优化上下文管理与模型路由,让每次会话中的 Token 更多地投入到真正有价值的工作中,帮助你更高效地利用 GitHub AI Credits。

随着 Copilot 承担越来越多的智能体工作——从任务规划、代码编辑,到调试、代码审查,以及在长时间会话中调用各种工具——效率已不仅仅意味着“使用更少的 Token”,而是意味着更聪明地使用每一个 Token。

提升效率首先要减少 Copilot 在每一轮交互中重复发送的信息,包括上下文、工具定义以及缓存状态;其次,则是为当前任务选择最合适的模型。一次快速解释、一次针对性的代码修改,以及一次复杂的跨文件变更,并不应该采用完全相同的处理方式。

我们正在同时推进这两个方向:

  • 持续优化 Copilot 的运行框架,让每一次会话中的更多 Token 都真正用于完成任务本身;

  • 持续扩展 Auto 自动模型选择能力,让 Copilot 能够根据任务自动选择最合适的模型,而无需开发者每次手动决策。

本文将重点介绍 GitHub Copilot for VS Code 在运行框架方面的优化,以及 Auto 能力在更多 Copilot 产品中的持续扩展。

更高效的 Prompt 缓存与按需加载工具

在 GitHub Copilot for VS Code 的长时间会话中,运行框架需要为模型准备大量重复出现的信息,例如:系统指令、仓库上下文、对话历史、可用工具、当前任务状态。其中,有些信息每次都必须提供,而另一些则可以缓存、延迟加载,或仅在真正需要时再加载。

GitHub Copilot for VS Code 中,两项优化承担了绝大部分工作:

  • Prompt 缓存:让 Copilot 能够复用重复 Prompt 前缀对应的模型状态,而不是在每次请求时重新计算相同内容。

  • 工具搜索:让模型按需加载工具定义,而不是在每轮对话中都发送完整的工具 Schema。

随着智能体能够调用越来越多工具,这一点变得尤为重要。一个会话可能需要访问 MCP 工具、终端命令、文件操作、工作区搜索、各类产品专属操作。如果一开始就把所有工具定义全部发送给模型,那么无论当前任务是否真正需要这些工具,每轮请求都会产生固定的 Token 成本。借助 Tool Search,Copilot 能够保持丰富的工具能力,同时显著减少发送给模型的无关工具 Schema。

若想深入了解其技术实现,包括 Prompt 缓存、Cache-Control 缓存断点、面向不同模型提供商的工具搜索,以及这些改进如何在长时间运行的智能体会话中发挥作用,欢迎阅读 VS Code 技术深度解析

VS Code 技术深度解析

https://aka.ms/vscode/blog/token-efficiency/?wt.mc_id=3reg_webpage_reactor

GitHub Copilot Auto 自动模型选择的作用

Auto 解决的是一个非常实际的问题:对于当前任务,哪一个模型才是最佳选择?

在收到你的第一条 Prompt 后,Copilot 会结合任务意图以及当前模型运行状态,自动选择最适合完成该任务的模型。不同类型的工作——例如:快速解释、针对性的代码修改、跨多个文件的大规模变更,并不都需要同样等级的推理能力。因此,Auto 会自动完成这一判断,而无需开发者反复调整模型设置。

我们的评估结果表明,没有任何一个模型能够在所有任务中始终保持最佳表现。很多情况下,性能更高效、成本更低的模型,同样能够完成任务;而只有在需要深度推理时,更强大的模型才真正体现出优势。Auto 会不断学习:在哪些场景中,更强的推理能力能够真正提升结果。因此:当任务需要时,它会自动升级到能力更强的模型;当任务并不需要时,它则保持更高的执行效率。其目标并不是用质量换取成本,而是始终选择最适合当前任务的模型。

Auto 如何选择合适的模型

Auto 的模型选择主要基于两个信号:当前哪些模型健康、可用;当前 Copilot 正在执行什么类型的任务。

  • 实时模型健康状态:Auto 内置了一套动态调度引擎,持续监控模型的:可用性、利用率、响应速度、错误率、使用成本。即使某个模型具备完成任务的能力,也不意味着它在当前时刻就是最佳选择。Auto 会综合当前系统运行状态,确保 Copilot 将请求路由到一个既具备能力,又能够及时响应的模型。

  • 基于任务感知的 HyDRA路由:Auto 还引入了 HyDRA 路由模型,根据任务特点进行智能决策,包括:推理深度、代码复杂度、调试难度、工具编排需求。HyDRA 会首先筛选出能够满足当前任务质量要求的模型,再从这些候选模型中选择最合适的一个。

图 1: HyDRA 的三个运行配置展示了其可调优能力:(Peak)在节省 12.9% 成本的同时,性能超越 Sonnet;(Agg.)则在保持质量与性能平衡的前提下,实现了 72.5% 的成本节省。

图 2: HyDRA(Cons.)在问题解决率(70.8%)上与 OpenRouter Auto 持平,但成本节省达到其 3.3 倍。HyDRA(Agg.)则在成本与效果综合表现上超越了 Azure Foundry 的两种运行模式。

综合来看,这些能力使 Auto 能够摆脱“一刀切”的模型选择策略。它的目标并不是将所有任务都交给最大的模型,也不是一味选择成本最低的模型,而是根据任务特点,选择最适合的模型。

HyDRA

https://arxiv.org/pdf/2605.17106/?wt.mc_id=3reg_webpage_reactor

让 Auto 在真实开发场景中发挥作用

在评测中实现正确的模型路由,只解决了问题的一部分。要让 Auto 真正在开发者的实际工作流中发挥价值,我们还必须考虑开发者使用 Copilot 的真实方式:对话会越来越长、上下文会不断累积、任务会持续变化,而且开发者使用着多种不同的编程语言和自然语言。

  • 缓存感知路由。从表面上看,每一轮对话都切换到最合适的模型似乎更加灵活,但实际上,这反而可能降低整体效率。当一次对话始终使用同一个模型时,Prompt 前缀可以被缓存,并在后续轮次中重复利用。而如果在对话过程中切换模型,这部分缓存就会失效,其带来的额外开销甚至可能超过模型切换本身节省的成本。为此,Auto 会在自然的缓存边界进行模型路由,例如:首轮对话,此时还没有任何缓存可供复用;上下文压缩之后,Copilot 会对较早的对话内容进行总结,Prompt 前缀随之重置。在这两个时间点之间,Auto 会保持当前选定的模型不变,从而让缓存持续累积并发挥最大价值。

  • 跨语言路由。Copilot 服务于全球开发者,因此,模型路由不仅要适用于英语,也必须能够支持其他语言。为此,我们使用涵盖 16 个语系 的真实对话数据训练了路由模型,其中包括中日韩语系(CJK)、欧洲语系等多种语言。在评测中,不同语系的路由准确率与英语基线相比,误差均控制在 4 个百分点以内,且在模型输出质量上未观察到具有统计学意义的差异。

图 3: 智能路由在不同语言上的表现与英语基线相比,误差均控制在 4 个百分点以内。模型评测基于从 Visual Studio Code Chat 生产环境遥测数据中抽样构建的独立测试集,覆盖 19 种语言,包括英语、欧洲语系、中日韩语系(CJK)以及其他文字体系。

  • 学会判断何时需要升级模型。我们并没有简单地将任务划分为“简单”或“困难”,而是训练路由模型去学习不同模型真正产生能力差异的场景。对于训练集中的每一个查询,我们都会分别使用能力较弱的模型和能力更强的模型生成回答,并从多个质量维度进行评分。路由模型据此学习:何时更强的模型能够带来明显价值;何时更高效、更低成本的模型也能产生同样优秀的结果。对于长时间运行的智能体会话中依赖上下文的消息,路由模型则基于完整的多轮对话进行训练,其中包括用户最初的意图、最近几轮助手回复以及对话元数据。

基于任务意图的 Auto 正在不断扩展

如今,基于任务意图的 Auto 已正式应用于 Visual Studio Code、GitHub.com 和移动端。它能够根据你当前正在进行的工作——例如编写代码、调试、规划任务或调用工具——获取更多关于任务类型的信号,从而为当前任务选择更合适的模型。

接下来,我们将持续把这一能力扩展到更多 Copilot 使用场景,并提供更多方式,帮助团队将 Auto 设置为默认模型选择策略。未来更新包括:

  • Copilot CLI、GitHub App 以及更多 IDE 将支持基于任务意图的 Auto。

  • Copilot Free 与 Student 计划将进一步简化,仅保留 Auto 作为唯一的模型选择方式。

  • 管理员将能够通过组织级策略,将 Auto 设置为默认模型,或强制所有成员仅使用 Auto。

让 AI Credits 发挥更大价值

Copilot 默认已经变得更加高效,但以下几个使用习惯可以帮助你的 AI Credits 用得更久。

  • 从 Auto 开始。对于大多数任务来说,Auto 都是最佳默认选择。它会根据你正在执行的工作自动选择最合适的模型,而无需你每次都手动切换。

  • 保持上下文聚焦。切换任务时开启新的会话;对于持续时间较长的会话,在需要时进行上下文压缩;如果你已经知道相关代码所在位置,可以直接告诉 Copilot 需要参考哪些文件。减少无关上下文,意味着更多上下文空间能够真正用于完成当前任务。

  • 不要在会话过程中频繁修改模型或配置。切换模型、推理级别、上下文大小或工具配置,都可能导致缓存无法复用,使 Copilot 重新构建上下文。建议在开始时配置好会话,并尽量将相关工作集中在同一个会话中完成。

  • 并行之前,先做好规划。面对大型任务时,先让 Copilot 制定计划。只有当任务确实能够拆分时,并行智能体才更有价值。但需要注意,并行智能体会同时消耗 AI Credits,因此应按需使用,而非默认开启。

  • 只启用真正需要的工具。工具以及 MCP Server 功能十分强大,但过多的工具也会增加额外上下文。只启用当前任务需要的工具,关闭暂时不用的部分。你还可以使用 GitHub Copilot Agent Finder 来帮助精简工具使用。

  • 关注你的使用情况。AI Usage 页面可以帮助你了解不同功能和模型分别消耗了多少 AI Credits。在 Copilot CLI 中,会话级别的使用统计也能帮助你及时发现成本较高的使用模式。

完整指南请参阅 《如何充分利用你的 AI 积分额度》。

GitHub Copilot Agent Finder

https://aka.ms/agent-finder/changelog/?wt.mc_id=3reg_webpage_reactor

如何充分利用你的 AI 积分额度

相关内容

热门资讯

陪诊师“走红” 如何规范发展 陪诊师“走红” 如何规范发展 助医宝居家医疗服务中心负责人王中原在医院进行陪诊服务。新华社记者 白...
技术速递|让每一个 Token... 作者:Joe Binder 排版:Alan Wang GitHub Copilot 正在通过优化上下...
原创 被... 2026年7月6日,江苏省常州市中级人民法院对杨有林案进行一审公开宣判。法院以受贿罪判处其死刑,剥夺...
易法通近20年法务积淀,如何成... 引言 在当今复杂多变的商业环境中,法律风险防控已成为企业可持续发展的基石。然而,对于广大中小企业而言...
看世界杯上咪咕视频,绝不仅仅是... 什么?这多年的世界杯,全都白看了? 你敢信?! 过去,球迷们观看世界杯,无外乎三种:看现场、看电视、...