产品
解决方案
公司
企业
登录创建你的网络
topology · routing · configuration

自我路由的拓扑

从网络到社区到房间,平台在有任何东西回答之前就把请求路由到正确位置。地理成为上下文,配置取代代码。

自我路由的拓扑

一条请求抵达。在任何模型开口之前,平台已经把它安放到位——放进正确的网络、正确的社区、正确的房间——仅凭地理与语义。这种安放就是路由,而在 Everythink 上,它是空间的一个属性,而不是事后拧到聊天机器人上的补丁。执行这件事的引擎自 2016 年起就在生产中运行。

2026 年,ByteByteGo 指出,生产级 agent 系统对模型的依赖远比其 demo 所暗示的要少——大多数行为跑在确定性代码里,模型只在少数几个决策点被调用(ByteByteGo,"Best Practices for Building AI Agents That Work in Production",2026 年 7 月)。路由是这些点里影响最深远的一个,而恰恰是它,行业一再把它交还给模型。这篇文章讲的,是当你把它从模型手里拿走、放进拓扑时,会发生什么变化。

The Honest Architect 的要点

  • 决定请求落在哪里的,是拓扑而不是模型——Organization → Network → Community → Room,每一级都是地图上一个真实的多边形(自 2016 年起在生产中运行)。
  • 地理成为路由上下文:World Monitor 按 geohash 前缀路由,无需 PostGIS,于是视口查询是一次前缀匹配,而不是空间连接。
  • 配置取代代码:在一个房间里激活某个模块是一项设置,而不是一个 sprint。

为什么拓扑就是你早就拥有的路由层?

拓扑在任何东西回答之前就路由了一条请求,因为从 Organization 到 Network 到 Community 到 Room 的路径本身,就是路由决策。Everythink 把每个组织建模为一个地理空间拓扑,其中每一级都是地图上一个真实的多边形,而一条请求在与模型商议之前,就已凭地理与语义被安放进正确的房间。机制是层级;模型是迟到的参与者。

[UNIQUE INSIGHT] "空间即路由器"的重新框定:一个聊天机器人在回答;一个 AI 操作系统在路由。大多数 agent 栈把路由当作模型在运行时解决的分类问题——分类意图、挑选处理器、祈祷它是对的。Everythink 把路由当作一种结构性属性,在请求抵达时就已经解决,因为请求携带了自己在拓扑中的位置。模型从不必问"这是给哪个房间的?"——房间已被选中。

这正是 ByteByteGo 在 workflow 与 agent 之间划出的区别:在一个 workflow 里,步骤和路径在设计时就被决定,在模型看到输入之前,而如今大多数构建在 LLM 之上的生产系统都是 workflow——可预测、可调试,比全功能 agent 更便宜(ByteByteGo,"The Agent Loop: How AI Goes From Answering Questions to Doing Things",2026 年 7 月)。拓扑路由是一项被永久固化在数据里的 workflow 决策。它不会每次调用都重新分类。它不会花一个 token 去决定 geohash 已经说清的事。

路由步骤在推理时零成本。没有分类器调用,没有路由模型的延迟,没有花在"这个该去哪?"上的 token。拓扑是一次查找,而查找不会幻觉。在一个 95% 单步可靠率会在二十个链式步骤里跌到大约三分之一的系统里(ByteByteGo,"Best Practices for Building AI Agents That Work in Production",2026 年 7 月),从链中移除一步,是能拿到的最便宜的可靠性收益。

地理如何在没有空间数据库的情况下成为上下文?

地理成为上下文的方式,是把地图变成一等数据结构,而不是对空间数据库的一次查询。Everythink 的 World Monitor 按 geohash 前缀路由——经纬度的短字符串编码——于是视口查询是对索引列的一次前缀匹配,而不是 PostGIS 的空间连接。没有 PostGIS。没有 GIS 扩展。没有空间索引重建。瓦片键是 geohash,而前缀就是多边形。

[ORIGINAL DATA] 平台背后的 21 篇论文学术系列把这正式化:一个 GeoSignal 的标识符是确定性的 uuidv5(source, native_id),于是重新摄入上游 feed 会更新既有记录,而不是产生重复。确定性 ID 把地理缓存变成 upsert 目标,而 geohash 前缀把缓存变成路由表。一个客户端按 geohash 瓦片订阅广播频道,只接收其视口瓦片的 delta——不是在客户端过滤的全局大水喉。

这是"地理即上下文"背后的机制。一条来自布宜诺斯艾利斯上空视口的请求,会解析为一组 geohash 前缀;这些前缀选出多边形与之重叠的房间、社区和网络;重叠就是路由决策。模型在开口时,收到的是一个已按请求来源地裁定的上下文窗口。

World Monitor 是一个网关:每个源一个后台轮询器,按固定时间表拉取外部 feed,归一化为 GeoSignal,upsert 进持久的 Postgres 缓存,并把 delta 交给一个发布者(Everythink,World Monitor / Atlas,✅ Production)。客户端读缓存,从不读上游,于是上游调用受限于平台的时间表——而不是客户端数量。源是数据:添加一个 feed 意味着向注册表加一个 SourceDescriptor,从不触碰引擎。一个其 key 未设置的源会自我禁用,于是缺失的 key 永远不会搞垮平台。

配置取代代码在生产里是什么样子?

当一个房间的行为是数据记录里的一组开关,而不是一次发布里的一条分支时,配置就取代了代码。在 Everythink 上,房间是社区内的一个功能区域,而每个房间通过配置开启自己的模块——social、marketplace、calendar、campaigns——于是系统在不部署的情况下重塑自身。激活一个模块是一项设置,而不是一个 sprint。

[PERSONAL EXPERIENCE] 引擎自 2016 年起在生产中运行。对话核心——HAI engine——已经带着房间上下文回答了十年,而可组合的模块共享同一拓扑。一个社区添加一个 marketplace 房间的方式,与添加一个 social 房间一样:一条记录、一个多边形、启用的模块。没有 fork,没有合并冲突。平台的形状是一份文档,而编辑这份文档就是发布。

诚实标签在这里很重要,因为"配置高于代码"只有在你说清楚已建了什么时才可信。Whitelabel Network——web、iOS 和 Android 同在一个品牌下——是 ✅ Production。Social、campaigns 和 World Monitor 是 ✅ Production。Matchmaking 是 ⚠️ Partial:有用,但未完成。Marketplace 和 calendar 是 ⚠️ Partial。每网络 wallet、community credit 和联邦是 🔵 Roadmap——为 2026 年排定的设计工作,pre-revenue,不以 Production 的名义呈现。我们不会为了让某个状态显得完工而升级它。这就是 Theorem 3:一项属性,恰恰在其机制已实现并正在测量时,才被保证。

配置之所以能扩展,和拓扑之所以能路由,理由相同:数据即系统。一条房间记录带着它的父社区、它的网络、它的多边形和它启用的模块。对话引擎读这条记录来裁定上下文;World Monitor 读多边形来裁定 delta。这条路径里没有任何一处,需要模型去决定记录已经说清的事。

拓扑路由相对 agent 协议处于什么位置?

拓扑路由位于 agent 协议之前,就像一个注册表位于一个工具之前。2026 年 6 月,Hugging Face 与来自 Microsoft、Google 和 GoDaddy 的贡献者发布了 Agentic Resource Discovery 规范——一个位于 MCP、A2A 和 Skills 之前的发现层,定义 agent 和工具如何在联邦注册表中被编目、索引和搜索,使 agent 能在运行时找到能力,而不必事先预装(Hugging Face,"Agentic Resource Discovery: Let agents search for tools, skills, and other agents",2026 年 6 月)。规范的核心动作是把选择移出 LLM:注册表以发布者身份、代表性查询和标签索引能力,而客户端在模型调用搜索结果之前先做搜索。

ARD 解决发现。拓扑解决安放。它们互补,而行业正在收敛到 Everythink 已运行十年的同一种分离上:不要让模型去做数据能决定的事。ByteByteGo 把生产共识说得很直白:MCP 处理工具访问,A2A 处理 agent 通信,两者互补(ByteByteGo,"MCP vs A2A vs ACP: How AI Agents Actually Talk to Each Other",2026 年 7 月)。Everythink 在两者之下加了第三层:决定工具或 agent 在哪个网络、社区和房间内运作的拓扑——在 MCP 或 A2A 被调用之前。

这一区分不是学术性的。一个没有安放就被调用的工具,是一个没有上下文就被调用的工具。一个找到正确 MCP server 却不知道自己在哪个房间的模型,会泛泛而答——在一个已安放的系统里,这是一种退化。拓扑给工具和模型提供了它们原本得去推断的上下文,而推断上下文正是会在链上累积错误的那个概率步骤。

没有拓扑时,模型路由何时会失败?

当路由所需的信号在路由时不可见,模型路由就会在没有拓扑时失败。2026 年 7 月,IBM Research 论证说,看似模型选择的问题会迅速变成系统优化问题,而其难度往往在路由时不可见——一条像"总结这份合同"的请求看似简单,却可能触发检索、合规检查、工具使用和多轮精炼(IBM Research,"Model Routing Is Simple. Until It Isn't.",2026 年 7 月)。他们总结,路由器始终在同时抛接着成本、质量、延迟、合规和可靠性。

拓扑并不解决模型路由。它把一类输入从路由器的问题里移除。当房间已被选中,路由器就不必从 prompt 文本里推断司法管辖、受众或范围——拓扑带着这些。合同属于一个社区和一个房间;合规检查是为那个房间配置的那些;可用的工具是那里启用的那些。路由器的工作从"从一段字符串推断一切"缩减为"为一个已安放的任务选模型"。

IBM 的数字让成本论证变得具体。在 AppWorld Test Challenge 的 417 项任务上,Sonnet 每项任务花费 $0.19,而 GPT-4.1 每项任务花费 $0.37——将近两倍——因为缓存行为,而不是标价,决定了成本(IBM Research,"Model Routing Is Simple. Until It Isn't.",2026 年 7 月)。一个在模型被调用前就裁定上下文窗口的拓扑,也裁定了可缓存的 prefix——正是那个让成本摆动的变量。Everythink 的拓扑不路由模型,但它做了让模型路由变得可行的工作:它固定了路由器在其上优化的上下文。

这在今天的生产中究竟如何运行,诚实地说?

它按标签运行,而不是按 demo 的暗示。HAI 对话引擎是 ✅ Production,自 2016 年起就带着房间上下文回答。Whitelabel Network——一个品牌、一个横跨 web、iOS 和 Android 的身份——是 ✅ Production。Social、campaigns 和 World Monitor / Atlas 网关是 ✅ Production。Matchmaking 和 marketplace 是 ⚠️ Partial——有用,未完成。每网络 wallet、community credit 和联邦是 🔵 Roadmap,pre-revenue,在有任何发布之前需经 Howey 审查。wallet 或 token 层没有任何东西是上线的。

诚实是机制,而不是姿态。Theorem 3 说,一项属性恰恰在其机制已实现并正在测量时才被保证。一项能力只有在它背后的机制既已建成又正被主动测量时,才获得 Production——否则就是 Partial 或 Roadmap。我们把这条规则应用于拓扑:路由是被测量的,因为 geohash 查找被埋了仪表、房间安放被记录、缓存 upsert 被计数。

这是对架构师而言至关重要的那种激进诚实:不是一种语调,而是一项测试。在拓扑上,机制存在并在测量。在 wallet 上,它不存在。买家审视的是推理,而不是形容词。

常见问题

拓扑路由与模型分类意图有何不同?

模型分类意图是一个概率步骤,在每条请求上运行,可能出错。拓扑路由是一次针对数据记录的确定性查找,该记录带着请求在层级中的位置。累积误差使一条 95% 单步的链,在二十步里掉到约三分之一成功率(ByteByteGo,"Best Practices for Building AI Agents That Work in Production",2026 年 7 月)。移除这一步比把它改得更好更便宜。

Everythink 的 World Monitor 需要 PostGIS 吗?

不需要。World Monitor 按 geohash 前缀路由——经纬度的短字符串编码——于是视口查询是对索引列的前缀匹配。平台用一个 Postgres 实例,内置 pgvector,但没有 PostGIS 扩展。瓦片键是 geohash,前缀是多边形。这让路由层可移植、查询廉价。

wallet 和 community credit 的诚实状态是什么?

🔵 Roadmap。每网络 token wallet 和 community credit 是为 2026 年排定的设计工作,pre-revenue,未实现。该层没有任何东西上线,这里也没有任何财务、投资或法律建议。任何 token 或 credit 机制仍受适用的金融与证券框架约束,包括 Howey 分析,且在该审查完成之前不会发布。

拓扑如何与 MCP 和 A2A 交互?

拓扑位于两者之下。MCP 处理工具访问;A2A 处理 agent 间通信,两者在生产中互补(ByteByteGo,"MCP vs A2A vs ACP: How AI Agents Actually Talk to Each Other",2026 年 7 月)。Everythink 的拓扑决定工具或 agent 在哪个网络、社区和房间内运作,先于任一协议被调用,于是工具收到的是已安放的上下文,而不是从 prompt 推断出的上下文。

一个房间能在不部署的情况下改模块吗?

能。一个房间通过配置开启自己的模块——social、marketplace、calendar、campaigns。激活一个模块是数据记录里的一项设置,而不是一次代码发布。平台在不重新部署的情况下重塑自身,这正是配置高于代码这一主张背后的机制。


Everythink 的拓扑已凭地理与语义路由请求十年,而行业如今正出于同样理由把发现与执行分开:模型不应去决定数据已经说清的事。如果你想看拓扑如何路由——网络到社区到房间,在一个自 2016 年起就在生产的平台上——读这些论文预约一次 demo

Sources

在一个能证明其声明的引擎上构建你的世界。

在自 2016 年起持续运行的引擎上创建你自己的网络——或与 21 篇论文背后的团队交流。