更大的上下文窗口并不等同于企业上下文
每隔几个月,AI 市场就会出现关于更大模型上下文窗口(context window)的头条新闻。听起来很简单:如果一个模型能容纳更多 token(词元),它就应该能理解你的更多代码库。添加更多仓库文件、文档、工单、API 规范以及策略文档,Agent(代理)最终应该能获得它所需的上下文。
对于企业级软件开发来说,这个思路是错误的。在 Tabnine,我们相信企业上下文问题并不是通过给 AI 更多文本来解决的,而是通过给 AI 代理提供一个结构化、持续更新的理解——你的组织是如何构建软件的。
更大的上下文窗口可以暴露更多的素材。但它们不会自动告诉你:哪个服务拥有哪个 API,哪个依赖在事故后被禁用,哪种架构模式适用于某个业务单元,或者哪个内部网关必须用于服务间认证。这些不是孤立的事实,而是代码、文档、团队、策略、历史记录和系统之间的关系。
模型提供智能,代理提供行动,但企业需要理解。上下文(Context)是缺失的层级,它让 AI 在企业开发环境中变得可靠、安全且有效。
更多的输入不等于更多的理解
上下文窗口(context window)是一个容器。它决定了模型一次能考虑多少信息。检索增强生成(retrieval-augmented generation)可以帮助为这个容器选择材料。这两种能力都很有用,但单独任何一种都不能自动创造企业理解。
企业理解需要一个关于软件组织的动态模型。这个模型需要知道:仓库如何关联到服务,服务如何关联到 API,API 如何关联到消费者,依赖如何关联到风险,策略如何约束决策,以及所有权如何影响评审。
Tabnine Context Engine 正是为此而构建的——它持续分析和建模仓库、服务、依赖、API、文档以及架构关系。
| 方法 | 给智能体提供的内容 | 在企业中失效的原因 |
|---|---|---|
| 更大的上下文窗口 | 单个提示中可用的 token 更多 | 模型可能看到更多内容,但不知道哪些关系、规则和历史是重要的。 |
| 基础 RAG | 检索与查询相关的文档或代码片段 | 检索可以获取文本,但常常遗漏架构、所有权、依赖性和策略关系。 |
| 静态文档 | 人工编写的系统和标准说明 | 文档会过时、遗漏隐含实践,并且很少反映实时系统状态。 |
| Tabnine Context Engine | 组织上下文的结构化、持续更新的表示 | 它赋予智能体在企业系统内部行动所需的关系和约束。 |
更多的 token 可以暴露更多材料,但结构化的企业上下文告诉智能体哪些关系、策略和所有权边界是重要的。
这种区别很重要,因为企业开发是关系性的。一个仓库中的变更可能会影响服务边界、下游 API 契约、合规规则、安全标准以及另一个团队的路线图。一个看到文件和相关文档的模型可能仍然遗漏影响范围。而能够查询结构化上下文层的智能体可以在变更实际运行的环境中对其进行推理。
为什么企业上下文必须是结构化的
在小型代码库中,上下文可以是隐式的。开发者知道谁拥有什么。他们记得哪些模式已被弃用。他们可以询问旁边的人为什么旧的认证路径仍然存在。而在企业代码库中,这些知识分布在仓库、维基、工单、API 规范、事件复盘、聊天记录以及资深工程师的头脑中。
AI 智能体不会通过渗透吸收组织记忆。如果没有结构化的上下文层,它们只能从通用训练数据、本地文件和提示中恰好包含的内容进行生成。结果可能编译通过,但对组织而言仍然是错误的。