
供应链多 Agent:不要自动重做全部计划,先把异常变成可计算的决策包
供应链是传统企业最适合 Agent、也最容易制造连锁事故的领域。AWS 2026 年 6 月展示了多 Agent 供应链控制塔;IBM 将需求、采购、生产和物流描述为持续感知与响应网络;Microsoft 的企业实践显示部分供应链流程周期最多缩短 75%。这些收益来自缩短“发现异常—拉齐信息—执行调整”的链路。
传统控制塔只展示红灯,计划员仍要打开多个系统判断缺货原因。Agent 的目标是把红灯转成带成本、约束、证据和截止时间的决策包。
多 Agent 负责并行收集和解释,数学优化器负责约束求解,业务负责人负责高代价取舍。
统一异常对象
不要让四个 Agent 互相发送长段自然语言。用结构化对象表达问题、影响与可选动作:
type SupplyException = {
id: string
sku: string
site: string
kind: "STOCKOUT" | "LATE_SUPPLIER" | "DEMAND_SPIKE" | "CAPACITY_GAP"
horizonDays: number
projectedShortage: number
revenueAtRisk: number
serviceLevelAtRisk: number
evidenceRefs: string[]
deadline: string
}
需求 Agent 解释预测变化,库存 Agent 检查跨仓调拨,采购 Agent 查询供应商与替代料,物流 Agent 估算路线和时效。Orchestrator 只聚合结构化候选,不替专业 Agent 猜数据。
让优化器裁决硬约束
LLM 可以提出“从华东仓调 800 件”,但不能保证同时满足安全库存、运输容量、客户优先级和物料替代关系。候选方案必须进入确定性求解器:
from scipy.optimize import milp, LinearConstraint, Bounds
# x[i,j] 表示从仓 i 调往需求点 j 的数量
result = milp(
c=transport_cost + stockout_penalty,
integrality=integrality,
bounds=Bounds(lb=0, ub=route_capacity),
constraints=[
LinearConstraint(supply_matrix, -float("inf"), available_stock),
LinearConstraint(demand_matrix, required_demand, float("inf")),
LinearConstraint(safety_matrix, safety_stock, float("inf")),
],
)
Agent 把自然语言业务规则解析为已批准的参数,优化服务返回可行性、目标成本和敏感性。无解时必须说明冲突约束,不能偷偷放宽客户 SLA。
动作按可逆性分级
auto_execute:
- expedite_existing_order_under: 5000
- transfer_inventory_under: 200
human_approval:
- change_supplier
- substitute_material
- split_customer_order
prohibited:
- bypass_quality_hold
- alter_contract_price
库存预留和运输询价可自动执行;换供应商、替代物料和牺牲客户订单需要采购、质量或销售批准。所有写回 ERP/WMS/TMS 的动作都带幂等键、版本号和补偿操作。
从计划员工时转向库存与服务指标
评估不要只看“少做多少报表”,还要看缺货率、加急运费、库存周转天数、呆滞库存、供应商延期发现提前量和 OTIF。Agent 可能降低人工时间却增加加急运输,局部节省会被整体成本吞掉。
最稳妥的上线方式是从一个品类、两座仓和一种异常开始,以现有计划作为对照组。连续验证候选方案的成本与服务水平后,再扩大自动执行范围。供应链 Agent 的真正价值,是让计划员从搜集数据转向处理少数高影响例外。