跳到主要内容
Agent Platform · D0/DRAFT · Wave 4

Honey Tool Factory · 受控工具生成

自动化地将已验证的 Agent 操作模式固化为新工具——通过 coverage/gate/regression 晋级门禁,确保每个新工具都达到生产级质量。

Agent Platform D0/DRAFT Wave 4
factory — tool gen
# Factory extracts pattern from agent trajectory
$ factory extract --trajectory traj_7f3a --min_occurrences 5
[pattern ] pattern "hotspot_swap" found   freq=12
$ factory generate --pattern hotspot_swap --qualify F2
[coverage] test suite pass             100%
[gate    ] contract check pass          ✓
[regress ] regression suite pass        98%
[promote ] tool "hotspot_swap_v1" → production
→ new typed tool available in capability registry
iMapsynthesisiFPfloorplaniPDNpoweriPLplacementiCTSclockiTOoptimizationiRTroutingiSTAtimingAiEDAdesign dataiPCLlayout modeliMapsynthesisiFPfloorplaniPDNpoweriPLplacementiCTSclockiTOoptimizationiRTroutingiSTAtimingAiEDAdesign dataiPCLlayout model

核心能力

1. Pattern Extraction

从 Agent 运行轨迹中提取反复出现的操作模式。工厂分析 Agent Runtime 记录的 Experiment 轨迹,识别高频操作序列(例如 "iPL.local_swap → iSTA.incremental → evaluate_hpwl" 出现 12 次)。提取的 pattern 包含:操作的输入输出类型、前条件/后条件、typical 成功率、typical 耗时。

2. Tool Generation

将模式固化为 typed tool contract。工厂自动生成:tool name + description(供 LLM 理解)、typed request/result schema(JSON Schema)、internal adapter(将 tool contract 映射到实际 EDA 工具调用序列)、error taxonomy(定义 tool 可能的失败模式与 Agent 处理方式)。

3. Qualification Gate

三级晋升门禁——coverage test(覆盖 tool 的所有参数组合和边界条件)→ gate check(contract 规范校验——输入/输出 schema 是否完整、error 处理是否完备)→ regression suite(回归测试——新 tool 不影响已有 tool 的行为)。通过全部三级晋升至 production 状态。

4. Version Management

工具版本与生成它的 Agent/Model 版本绑定。每个 tool 的 provenance 记录:source_trajectory(来源轨迹)、generating_model(生成该 tool 的模型版本)、extraction_params(pattern 提取参数)。当底层 EDA 工具或 AI 模型升级时,tool 自动标记为 stale,触发重新 qualification。

5. Rollback

新工具表现不佳时自动降级。工厂持续监控 production tool 的运行时指标(成功率、平均耗时、产生 violation 率)。如果指标在 N 次调用中持续低于阈值,自动降级为 degraded 或回滚到上一 stable 版本。降级事件触发告警并记录在 tool audit log。

Agent 调用方式

Tool Factory 的操作由系统管理员或高级 Agent 触发——pattern extraction 和 tool generation 不是高频操作,而是基础设施的"自进化"机制。

Python
MCP
Tcl

Python SDK

from ieda.factory import ToolFactory

factory = ToolFactory("http://localhost:9140")

# Step 1: Extract pattern from trajectory
pattern = factory.extract(
    trajectory_ref="traj_7f3a",
    min_occurrences=5,
    pattern_type="composite_tool",
)
print(pattern.name)          # "hotspot_swap"
print(pattern.frequency)      # 12
print(pattern.operations)     # ["iPL.local_swap", "iSTA.incremental", "evaluate_hpwl"]

# Step 2: Generate tool from pattern
result = factory.generate(
    pattern_ref=pattern.ref,
    qualification_level="F2",
)

print(result.tool_contract)     # typed contract with schema
print(result.qualification)   # {coverage: "pass", gate: "pass", regression: "pass"}
print(result.promotion)       # "production"

输入/输出契约

FactoryRequest

字段类型必需说明
trajectory_refstringAgent 运行轨迹引用——来自 Agent Runtime 的 Experiment 记录
pattern_type"atomic_tool" | "composite_tool" | "macro_pattern"模式类型——atomic 单工具、composite 工具组合、macro 高级行为模式
qualification_level"F0" | "F2" | "F4"要求达到的 qualification 等级——F0 仅 coverage、F2 加 gate、F4 加 regression

FactoryResult

字段类型说明
tool_contractobject生成的 tool contract:name、description、request_schema、result_schema、adapter_spec
qualification_reportobjectqualification 结果:coverage、gate_check、regression——各阶段 pass/fail 详情
promotion_decision"production" | "staging" | "rejected"晋升决定——production 全通过、staging 部分通过、rejected 未通过

让基础设施具备自进化能力

Tool Factory 是 Agent 平台自我完善的引擎——从运行轨迹中学习,将经验固化为可复用的生产级工具。