返回 AIPA 笔记
AIPA Day 110

自建平台 v1 合龙 + build-vs-buy TCO — 自建省的 API 费常被运维人力吃掉,但合规场景仍值

自建平台 v1 合龙 + build-vs-buy TCO — 自建省的 API 费常被运维人力吃掉,但合规场景仍值

2026-10-02
build-vs-buytcoself-hosted-agent-platform

日期: 2026-10-02 阶段: Phase 4 - 自建 Agent 平台×求职冲刺 标签: #build-vs-buy #tco #self-hosted-agent-platform

核心问题

P4 把 P2 散落的五个教学装置(durable 会话 / 语义缓存网关 / MCP 工具注册表 / 记忆 / 编排)合龙成一个自建 agent 平台 v1——作品③从「五个孤立 demo」变成「一条端到端能跑的链」。今天是构建截止日(周五),回答三件事:

  1. v1 真的合龙了吗? 走一遍端到端冒烟:注册 agent → 暴露工具 → 策略拦截一次越权调用 → durable 会话崩溃续跑 → 计量出 $/案件 → 面板看见。一条链不断,才叫平台。
  2. 自建到底比买(AgentCore / Foundry / Gemini Enterprise)省多少? 不是拍脑袋说「自建便宜」,而是把 TCO 公式写出来,把隐性成本(token 另算、观测费无上限、运维人力)一项项摊进去。
  3. 什么时候该 build、什么时候该 buy? 给一个能在面试里说清楚的判据,而不是「看情况」。

这对求职是核心叙事。AISA(AI Solutions Architect)面试八域里有一域就是「平台 build-vs-buy 取舍」——一个候选人能掏出「我自建了平台 v1,但我算过 TCO,知道它在什么客户身上不该自建」,比只会喊「自建省钱」强一个量级。自建的价值不在省钱本身,而在于"我懂买来的那一套每一层在收什么费、自建要补哪些隐性成本"。

关键内容

A. v1 端到端冒烟:六段一条链不断

合龙的验收标准不是「每个装置单测绿」(P2 已绿),而是六段能串成一次真实 AML 调查。把 P2 五装置 + P1/P3 的 AML 逻辑层接成一条消息流:

[1 注册]  toolRegistry.register(spec, handler)         ← MCP 工具注册表 (P2 作品③)
            │  暴露 queryTransactions / fetchKyc / draftSar 三个工具
            ▼
[2 发现]  client.listTools()  →  无状态返回 spec[]      ← MCP tools/list (可缓存)
            ▼
[3 策略]  policyGate(caseId, tool, args)               ← 本日新增 (对标 AgentCore Policy)
            │  ├─ draftSar 越权(未先 fetchKyc)→ DENY,拦在调用前
            │  └─ queryTransactions 合规 → ALLOW
            ▼
[4 会话]  checkpointMachine.step(state, input)          ← durable 执行 (P2 作品①)
            │  每步落 checkpoint;模拟"生成 SAR 时崩溃"
            │  → 从最近 checkpoint 续跑,幂等重放,结果不变
            ▼
[5 计量]  meteredCall(prompt, model, role, caseId)      ← gateway 计量 (P2 作品② + Day 89)
            │  缓存命中→cost=0;未命中→budget.addCost(usd, {caseId, layer})
            ▼
[6 面板]  CostMeter 读 budget.byLayer(caseId)           ← 成本面板 (P2 CostMeter)
            │  显示 检索/生成/judge 三段 $ + 缓存命中率
            ▼
          一次 AML 调查闭环:注册→拦截→续跑→计量→可视

冒烟脚本的断言不变量(写进 __tests__/platformSmoke.test.ts):

assert listTools() 返回 3 个工具且无状态(两次调用结果一致)
assert policyGate(draftSar, 未先 KYC) == DENY      # 策略真的拦住了
assert 崩溃后 resume() 的最终 state == 不崩溃的 state  # durable 幂等
assert budget.byLayer(caseId) 三段之和 == budget.caseCost(caseId)  # 计量不漏不重
assert CostMeter 渲染出的 $/案件 == budget.caseCost(caseId)        # 面板真读到数

反直觉洞察①(合龙的难点不在功能,在"装置间的契约"):五个装置各自单测全绿,合起来却常断在接缝——gateway 计量要的 caseId 从哪传进来?durable 续跑后重放的那次 LLM call 该不该重复计费?答案是不该(幂等重放复用 checkpoint 里已有的 LLM 输出,不再触网、不再 addCost)——这正是 Day 89「单一 gateway 计量点」必须和 durable「幂等重放」对齐的原因。平台的正确性不是各组件正确性的并集,而是它们契约的交集。 合龙暴露的全是接缝 bug,单测照不到。

B. build-vs-buy TCO:把隐性成本摊进公式

买(managed)的报价单看着清楚,自建(self-host)的报价单看着便宜——但两边都漏算。买漏算了「token 另算 + 观测费无上限」,自建漏算了「运维人力 + 利用率损耗」。把两边的 TCO 写成同构公式才能比。

买(AgentCore 口径,月度 TCO)

$$\text{TCO}{\text{buy}} = \underbrace{C{\text{runtime}}}{\text{vCPU·h+GB·h}} + \underbrace{C{\text{gateway}}+C_{\text{memory}}+C_{\text{identity}}+C_{\text{policy}}}{\text{≈12 计费组件}} + \underbrace{C{\text{tokens}}}{\text{模型费,另算}} + \underbrace{C{\text{cloudwatch}}}_{\text{观测,无上限}}$$

关键是后两项是报价页不显示但吃掉大头的:AgentCore 定价页(cloudburn 2026-05)明说「Foundation model inference tokens are billed through standard Bedrock pricing and are always additive」——模型 token 费不在那 ~12 个组件里,而模型推理通常占 agent 总开销 50-70%(scalevise 2026)。CloudWatch 观测「no built-in cap, no free tier」——可观测性做得越细,这条越没底。

自建(self-host,月度 TCO)

$$\text{TCO}{\text{build}} = \underbrace{C{\text{gpu}}}{\text{60-70%}} + \underbrace{C{\text{serving-ops}}}{\text{vLLM/SGLang 调优 5-10%}} + \underbrace{C{\text{engineer}}}{\text{运维人力 25-30%}} + \underbrace{C{\text{opportunity}}}_{\text{自建挤占的产品工期}}$$

digitalapplied(2026-04-24)把这条拆得最清楚:GPU 租金占 60-70%(8×H100 按需 $25.2K/月,1 年预留 $16.4K/月降 35%),inference 工程师 loaded cost $20-30K/月,占 TCO 的 25-30%——和中等规模的 GPU 租金一个数量级。所以「自建省下来的 API 费」常常被这条运维人力线整条吃掉

量化对比表(按 AML Copilot 假设负载:中等流量,月 ~1.2B token 量级,2026-06 口径):

维度买 AgentCore(managed)自建(self-host on K8s+vLLM)
计算Runtime $0.0895/vCPU·h + $0.00945/GB·h(idle 不计费)8×H100 预留 $16.4K/月(idle 照付)
工具网关Gateway $0.005/千次调用 + 索引 $0.02/百工具·月自建网关,计入工程师线
记忆短期 $0.25/千事件、长期 $0.75/千条·月、检索 $0.50/千次自建向量库 + 存储,计入运维
策略Policy $0.000025/请求(每次工具调用拦截)自建 Cedar/OPA,计入运维
模型 token另算(标准 Bedrock 价,占总 50-70%)含在 GPU 租金里(自建最大省点)
观测CloudWatch pass-through,无上限Prometheus+Grafana $200-500/月 + 运维
运维人力≈0(托管)$20-30K/月(占 TCO 25-30%)
起步速度天级(SDK 托管)周-月级(搭 K8s+GPU 池+监控)
break-even低量(<600M token/月)压倒性划算chat ≥1.2B、code ≥600M token/月才追平

break-even 的硬数字(digitalapplied 2026-04):100M token/月时 API 比自建便宜 12×;600M(code)/1.2B(chat)token/月追平;5B token/月时自建 3-7× 便宜。曲线交叉点决定一切。

反直觉洞察②(自建省的 API 费,常被运维人力整条吃掉):直觉是「自建把 API 账单清零,纯赚」。但 azumo/digitalapplied(2026)的反例戳穿它——「一个团队预期 GPU 花 $5K/月,算上工程时间、复杂度、利用率损耗、机会成本后实际烧到 $25K/月」。隐性成本(运维人力)常大于 GPU 硬件本身。 一条「20-30% 资深工程师工时」就是 $3-8K/月(azumo 2026),若自建省的 API 费 < 这个数,自建在财务上就是负的。这正是 build-vs-buy 的真实分水岭——不是 token 单价,是你有没有那个工程师、以及他的工时省不省得回来

C. 何时 build、何时 buy:三条判据 + 一条例外

把 B 节的曲线收成可在面试里说清的判据。默认 buy——这是反直觉但正确的起点(多数团队 token 量在 break-even 以下,且没有专职 inference 工程师)。只在三条同时成立时 build

build  IFF  (规模过线: chat≥1.2B / code≥600M token/月)
        AND (有专职资深 inference 工程师可投)
        AND (自建挤占的产品工期机会成本可接受)

否则 buy(managed),把工程师留给产品差异化

但有一条压倒性例外——合规/数据驻留。当客户要求「PHI/SAR 数据不出本院/本行 VPC」「EU 数据只在 EU 处理」「air-gapped 离线」时,break-even 曲线失效:此时不是「自建更便宜」,而是「托管根本不在选项里」(hosted-only 厂商无法满足很多银行/医院合同,fin.ai/usefini 2026)。对 AML Copilot 这种处理 SAR(高度受监管,含 PII)的产品,数据驻留就是那条例外——这也是为什么 AgentCore 2026-02-10 才列入 HIPAA eligible、且必须配 VPC/PrivateLink 才进得了银行采购。

客户画像量级合规要求结论
个人 demo / 小团队<600M token/月buy(API+缓存压倒性划算)
中量产品,无强合规600M-1.2B标准 SOC2buy 或 hybrid(稳态自建+尖峰走 API)
大量稳态流量≥5B token/月标准build(3-7× 省,前提有工程师)
银行/医院 AML任意量级数据驻留/HIPAA/air-gappedbuild 或 VPC 私有化(合规压倒成本)

hybrid 是 digitalapplied(2026-04)的推荐折中:稳态自托管 + 把「最尖峰 2-5% 流量路由到闭源 API」做成本优化和韧性兜底——这也是本项目作品③的真实定位(自建平台演示结构,生产可对接托管推理)。

设计要点/决策表

要点决策依据
v1 合龙验收六段端到端冒烟(注册→策略→durable→计量→面板),断言契约交集平台正确性=组件契约交集非并集
续跑不重复计费durable 幂等重放复用 checkpoint LLM 输出,不再 addCost计量单一点 × 幂等重放对齐(Day 89)
TCO 公式buy 与 build 写成同构四/五项,强制摊入隐性成本两边都漏算,报价单不可比
隐性成本(buy)token 另算 + CloudWatch 无上限AgentCore 定价页明文(2026-05)
隐性成本(build)运维人力占 TCO 25-30%($20-30K/月)digitalapplied 2026-04
默认决策默认 buy;三条同时成立才 buildbreak-even 多数在量产线以下
例外数据驻留/HIPAA/air-gapped → build/VPC,合规压倒成本hosted-only 进不了银行医院合同

对本项目的落地

  • 新建 src/agent/__tests__/platformSmoke.test.ts:实现 A 节六段冒烟,串起 toolRegistry.ts → 本日新增 policyGatecheckpointMachine.tsgateway/semanticCache.ts(meteredCall) → budget.ts(byLayer),断言 5 条不变量。这是作品③从「五装置」升级为「平台 v1」的合龙证据。
  • 新建 src/agent/gateway/policyGate.ts(教学装置,对标 AgentCore Policy preview):纯函数 policyGate(caseId, toolName, args, priorCalls) → 'ALLOW'|'DENY',规则用「自然语言→结构化规则」的最小形(如「draftSar 前必须先 fetchKyc」),头注明确这是 Cedar/OPA 语义的进程内复刻、非真实策略引擎。接进 B 节的策略段。
  • budget.ts 落地 Day 89 的计量维度:当前 addCost(usd) 无标签;按 Day 89 设计扩为 addCost(usd, {caseId, layer}),新增 caseCost(caseId)byLayer(caseId),供冒烟第 [5][6] 段断言与 CostMeter 读取。注意 costCapUsd 硬闸(Day 32)不变,仅打标签。
  • TCO 表进作品③ README:把 B 节「买 vs 自建」对比表 + C 节决策树写进 src/agent/README 或长文#6(Day 111-112),作为「我自建了平台、且算清了它该不该自建」的 AISA 叙事核心。
  • 诚实标注:B 节所有定价/break-even($0.0895/vCPU·h、$16.4K/月、1.2B token break-even)均为 2026-06 口径的第三方/官方公开数字,非本项目实测;自建 TCO 对 AML Copilot 是设计推演(本项目无真实 GPU 集群),README 须标「TCO 为公开定价推演,非自有集群实测,对接当周按官方定价页复核」。延续 P1/P3 钉死的降本数字诚信纪律。

参考资料

  1. AWS — Amazon Bedrock AgentCore Pricing(官方定价页,2026 持续更新):Runtime $0.0895/vCPU·h + $0.00945/GB·h,按秒计费 1 秒起,idle CPU 不计费;12 独立计费组件分 5 种计费模式(per-session/per-request/per-record/pass-through/free-preview)
  2. cloudburn — Amazon Bedrock AgentCore Pricing: 12 Components Breakdown(2026-05-14):Gateway $0.005/千次调用、Search $0.025/千次、索引 $0.02/百工具·月;Identity $0.010/千请求;Policy $0.000025/请求;短期记忆 $0.25/千事件、长期 $0.75/千条·月、检索 $0.50/千次;模型 token 费 always additive 不在组件内;CloudWatch no built-in cap, no free tier
  3. digitalapplied — Self-Hosting Frontier AI Models: 2026 TCO Analysis(2026-04-24):break-even code 600M / chat 1.2B token/月;100M 时 API 便宜 12×、5B 时自建 3-7× 便宜;四线 TCO(GPU 60-70% / serving-ops 5-10% / 工程师 25-30% $20-30K/月 / 机会成本);hybrid 推荐(稳态自托管+尖峰 2-5% 走 API)
  4. scalevise — AgentCore (Bedrock) Pricing and When Self-Hosting Wins(2026):模型推理占 agent 总开销 50-70%;自托管在「稳态高量 + 需非 Bedrock 模型 + 重控制」时胜出
  5. azumo — Self-Hosting LLMs: Hidden Costs You're Missing(2026):隐性成本常大于 GPU 硬件本身;预期 $5K/月 GPU 实际烧到 $25K/月(含工程时间/复杂度/利用率/机会成本);20-30% 资深工程师工时 = $3-8K/月
  6. fin.ai / usefini — HIPAA/SOC2 Compliant AI Agents 2026 Procurement Guide(2026):数据驻留/单租户/VPC/on-prem 是受监管工作负载硬约束;hosted-only 厂商进不了很多银行/医院合同
  7. 本仓物证:src/agent/durable/checkpointMachine.tssrc/agent/gateway/semanticCache.tssrc/agent/mcp/toolRegistry.tssrc/agent/orchestrator/budget.tssrc/agent/ui/CostMeter.tsx(2026-06)

SOTA 检查 (2026-06-11)

注:本笔记日历日为 2026-10-02;事实核查与一手原文检索(AgentCore 定价页、cloudburn、digitalapplied、azumo)在 2026-06-11 完成。下方定价/break-even 为 2026-06 口径,构建当周须按官方定价页重新确认(AgentCore 多组件 preview→GA 会改价)。

  • 「buy 默认、量过线+有工程师+合规可控才 build」是 2026-06 主流取舍:digitalapplied、scalevise 口径一致——break-even 多数团队在量产线以下,hybrid(稳态自托管+尖峰走 API)是新主流折中。本日决策树与此对齐。
  • AgentCore 计费组件仍在膨胀:2026-05 已 ~12 组件,2026-12 新增 Policy/Evaluations/Payments(preview),构建当周须重核「哪些已 GA、哪些仍 preview 免费」——preview 转 GA 会改 TCO_buy。本日表中 Policy $0.000025/请求 为已公布价,但 Evaluations/Payments 计价当周复核。
  • 隐性成本是 live 的踩坑点:2026 仍有团队只比「API 账单 vs GPU 租金」两条线,漏掉工程师线(占 25-30%)和 token 另算/CloudWatch 无上限——反直觉②仍未过时。
  • 数据驻留例外随合规收紧而强化:AgentCore 2026-02-10 入 HIPAA eligible、需 VPC/PrivateLink 进银行采购;EU AI Act + 数据驻留让「合规压倒成本」对 AML/SAR 这类受监管产品愈发是硬约束(非财务选择)。
  • 过时认知警示:(1) 不可只用 token 单价判 build/buy——运维人力(分母外的隐性项)常翻盘;(2) 不可把自建 TCO 表当本项目实测——无自有 GPU 集群,是公开定价推演;(3) AgentCore 定价/组件 GA 状态变动快,发布材料须标 2026-06 口径 + 当周复核。
  • 待跟踪(构建当周必做):复核 AgentCore 官方定价页(Policy/Evaluations/Payments GA 与计价);复核 Foundry Hosted Agents(scale-to-zero 容器小时计费)与 Gemini Agent Engine($0.0864/vCPU·h + $0.25/千事件)当周价,把三家 buy TCO 并排进决策树;用本项目 v1 实测 token 量(Day 89 跑批)代入 break-even 曲线,判 AML Copilot 落在哪段。