承接目录治理:上轮只压缩内容未减文件数,闭线工作记录仍平铺致目录看着仍一堆(创始人指出)。本次执行 B2 归档。 64 个 ≤06-15 闭线档(25 压缩桩 + 闭线 review/report/纪要/edit-plan)git mv 入 docs/agent-specs/_archive/(文件名不变、仍 git 跟踪可查)。热目录 ≤06-15 仅留 13 活档(决策/纲领/SoT/活spike)+13 个 06-16 在飞。 活资产 20 处旧路径引用(.agents/docs/memory/_index)同步改 _archive/,引用断裂复测=0;_index 活地图 + 治理档状态收口。约束:0 个 06-16 被移、orchestrator 等未跟踪在飞档零误纳。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
6.4 KiB
⚠️ 本档 HJ-AGI-001 终裁 AgentScope 已被 HJ-AGI-002(SAA-only,2026-06-15) 覆盖,存为历史选型记录。
agentic 基建框架选型 · 评审版(HJ-AGI-001)
状态:✅ 终裁讫(2026-06-12 创始人拍板)——终选 A:AgentScope 2.x 主力,§2 五资产契约边界+§3 L1 最短通路同步定案,§5 换轨触发生效(W-G1 即 spike 验证门,分布式/持久化/L1 开销验不过即切 B)。 背景=2026-06-12 创始人复议:自研薄内核否决(形态终点=重造框架,同 Tier1 引擎终裁逻辑);全平台只养一套 agentic 基建,后续资产生成/组装与 Tier-3 多 agent 开发组(编码/测试/UI 走查/录屏试玩/录屏核验)全长在其上。尽调=Opus web 研究员 12 维取证(2026-06-12,来源见研究存档);本文=主会话(Fable)终裁整理。
0. 结论速览
- 定案项(与终选无关,两路通用):①五资产契约边界(§2);②L1 独立最短通路(§3)。
- 终选项=一个价值权重问题:生产实证优先 → LangGraph 开源核心路线(研究员推荐)vs 生态契合+许可洁净优先 → AgentScope 2.x(主会话推荐)。两案都可行、都可换轨,差别在你愿意承担哪种风险。
- 任一终选,W-G1 模型竞标直接建在其上=框架 shakedown,不另做纸面验证。
1. 候选收敛(已排除项)
| 框架 | 判定 |
|---|---|
| AutoGen/AG2 | ❌ 排除:原版维护模式,fork 重写中,零商业支持,不适合确定性验证门+长任务 |
| OpenAI Agents SDK | ❌ 有条件排除:默认绑 OpenAI Responses API,国产模型走 beta 适配器=结构性逆风;无持久化/分布式 |
| Claude Agent SDK | 不作脊柱:绑 Claude 模型系,与便宜国产模型主线相悖;保留 L3 高档执行器位 |
| AgentScope 2.0.1 / LangGraph 1.x | ✅ 终选对,见 §4 |
2. 五资产契约边界(定案:框架只租用,不拥有)
换框架成本压到"重写编排适配层"量级的全部保障:
- 模型访问层:
llm_client→new-api 网关=唯一模型出口,框架绝不直连模型厂 SDK; - 验证门:node 测+esbuild+CDP e2e 四件套封装为独立子进程 CLI(入=产物路径,出=结构化 pass/fail JSON),以外部工具身份注入——100% 可移植(今天已是这个形态);
- 业务真值:任务级业务状态(用户输入/代码版本/发布态)落自有 MySQL/控制面;框架 checkpoint 只存编排执行态(重放恢复用);
- L1 最短通路(§3);
- 控制面↔worker 接口:Java 控制面与 Python worker 之间=稳定 REST/队列契约(下发+回调),框架躲在 worker 进程内,控制面永不感知框架——换轨时控制面零改动。
(另两件本就在框架外:Prompt 库=第 8 契约 Git Registry;黄金评估集。)
3. L1 独立最短通路(定案)
L1 海量便宜档=「裸 llm_client + 结构化输出 + 验证门」最短路径:同一套 worker 机群与控制面上运行,但不依赖框架的图/落盘(LangGraph 每 superstep 强制落盘的写放大、任何框架的编排开销,都不该出现在量大价敏档)。框架重度介入从 L2(会话调整)起;L3(多 agent 开发组)全量用框架原语。
4. 终选对比(12 维精要;全量矩阵见尽调存档)
| 维度 | AgentScope 2.0.1(阿里) | LangGraph 1.x |
|---|---|---|
| 多 agent 原语 | A2A+MsgHub+Agent Team(2.0 新增,原生编队) | StateGraph+supervisor 手搓,无原生 A2A |
| 持久化/恢复 | StateModule+Redis Session+分布式中断服务 | Checkpointer 最成熟(Postgres),replay/time-travel;已知 SSL 坑+写放大 |
| 许可证 | 全栈 Apache 2.0,开箱生产自托管 | ⚠️ 核心库 MIT,生产 Server(langgraph-api)=Elastic License 须商业 key→须自建 Server 层 |
| 生产实证 | ⚠️ 零可点名生产用户 | Uber/Klarna/LinkedIn/Replit/JPM(~400 家),Replit=「agent 写码」同构 |
| API 稳定性 | ⚠️ 1.0→2.0 十个月破坏式重写 | 相对稳,但生态嵌套深 |
| 模型无关 | OpenAI 兼容平权(DashScope 可选非必需) | 适配面最广 |
| 可观测 | OTel 原生+自带 Studio(合自托管姿态) | 强绑 LangSmith(商业 SaaS),OTel 自建 |
| HITL | 事件总线+权限系统,外部审批精确续跑 | 招牌能力(interrupt/Command) |
| 我方栈契合 | 阿里云+Spring Cloud Alibaba 同系;官方 Java 版;中文一手文档 | Python 强;Java 只能 HTTP/队列;英文生态 |
| 退出成本 | 较低(普通 Python+状态字典) | 最高(StateGraph+LangChain 生态嵌套) |
| L1 退化开销 | 无状态 agent+可关落盘,需实测 | 实测有编排开销+强制落盘张力(已由 §3 旁路化解) |
5. 两案的代价单与风险
A. AgentScope 2.x 主力(主会话推荐)
- 买到:Apache 全栈零许可工程/Java 一等公民贴合控制面/多 agent 原生/OTel 原生/退出成本低/中文生态。
- 代价:当早期采用者——零可点名生产案例+2.0 刚落地;分布式 Python 路径须 spike 亲验;须锁版本盯 changelog。
- 推荐理由(契合度裁量):我方=1 创始人+AI agent 维护、阿里云、Java 控制面、自托管一切、合规/融资尽调要许可洁净;L3 尚在数月之外,AgentScope 还有半年以上稳定窗;W-G1 即 spike,验不过即换轨,且它的退出成本本来就低=风险敞口有界。
B. LangGraph 开源核心路线(研究员推荐)
- 买到:最硬生产实证(Replit 同构)/checkpoint+HITL 最成熟/适配面最广。
- 代价:自建 Server 层绕 Elastic License(讽刺点:刚否决的"自研内核"以薄形态回来一部分)/观测自建/英文生态/退出成本最高/一行误引
langgraph-api即licence违规(AI 写码环境的常驻法务雷,须 lint 拦截)。
换轨触发(写死,任一即重评):①LangChain 再收紧许可→切 A;②自建 Server 工程量>预估 1.5× 或 checkpoint 坑阻塞 L3→切 A;③AgentScope 半年内出可点名生产案例且我方在 B→L1 先迁 A;④A 路线 spike 中分布式/持久化验不过→切 B;⑤任何框架 L1 开销吃掉单价→L1 退 §3 裸通路(已预设)。
6. 验收与下一步
终裁后:T1b-α 收口照跑 → W-G0 契约升格(五资产边界写进 9 组契约)→ W-G1 模型竞标建在终选框架上(竞标即 shakedown:同时验便宜模型过门率与框架分布式/持久化/L1 开销三件)→ 插件扩展波 v2。
7. 待确认(创始人)
唯一拍板项:终选 A(AgentScope-first)还是 B(LangGraph 开源核心)。 两案均带 §5 换轨触发与 §2 边界,决策可逆;差别=你把首险押在"生产验证度"还是"许可工程+生态错配+退出成本"上。