如何在端云协同 Agent 里自动学策略
目标不是让 Agent 更聪明,而是让系统“更少出事”
Agent Policy 自动搜索 =
把 Failure taxonomy 映射为 reward / penalty,
在固定场景分布下,
自动搜索“失败最少、代价最小”的 Agent 决策策略。
核心思想:Failure ≫ 成功(失败权重大于成功)
一、为什么不用传统 RL?
传统 RL 假设:
环境可交互
reward 连续、密集
agent 行为可随便试错
而端云协同 Agent 的现实是:
❌ 不能随便试危险动作
❌ reward 极其稀疏
❌ 行为有硬约束(安全 / 成本)
所以用的是:
**Offline / Simulated Policy Search
Rule-Constrained Optimization**
二、Policy 是什么? 先明确搜索对象
Policy ≠ 模型权重
在你的系统里,Policy 通常是:
risk_score → 上云 / 本地 cloud_response → 执行 / 否决 失败 → fallback / retry / stopPolicy 的参数化形式
{ "cloud_threshold": 0.7, "max_retries": 1, "require_confirmation": true, "fallback_mode": "safe_shutdown" }在搜索“规则 + 阈值 + 流程”
三、Failure → Reward 的映射
1️⃣ Failure 是负 reward
定义一个Failure Penalty 表:
{ "UNSAFE_ACTION_EXECUTED": -100, "NO_FALLBACK_ON_FAILURE": -50, "MISSED_CLOUD_ESCALATION": -30, "UNNECESSARY_CLOUD_CALL": -5 }严重 failure 权重必须碾压一切
2️⃣ 成功只是小正奖励
{ "TASK_SUCCESS": +10, "COST_SAVING": +3 }这是关键思想“不出大事” > “多赚一点”
四、自动搜索总体流程
Policy Space ↓ Scenario Generator ↓ Agent Rollout (LangGraph) ↓ Failure Detection ↓ Reward Calculation ↓ Policy Update一个离线、可控的闭环
五、搜索方法 1:网格 / 随机搜索
这是最稳、最好解释、最好上线的方式。
示例:搜索云调用阈值
thresholds = [0.5, 0.6, 0.7, 0.8]对每个 threshold:
跑全量 scenario
统计 failure / reward
Reward 聚合方式
total_reward = sum(rewards) failure_rate = count_critical_failures / N上线决策:
failure_rate < hard_limit
reward 最大
六、搜索方法 2:进化策略(Evolutionary Search)
当参数维度变多时:
Policy = [threshold, retries, confirm_flag]流程:
初始化若干 Policy
评测
淘汰失败多的
变异(微调参数)
重复
不需要梯度,极其适合 Agent
七、搜索方法 3:LLM-in-the-loop
可以用 LLM生成策略候选:
Given: - Failure statistics - Best current policy Propose a new policy that reduces UNSAFE_ACTIONLLM 的角色是:“策略生成器”,不是执行者
八、关键工程点
1️⃣ Failure 优先级必须是字典序
比较两个 policy:
Policy A: 1 critical failure, 高 reward Policy B: 0 critical failure, 中 reward永远选 B
2️⃣ 场景分布固定,否则过拟合
train scenarios
holdout scenarios(必须)
3️⃣ 失败必须可归因
每个 reward 下降都能追溯到:
哪个 failure
哪一步
哪个 policy 决策
九、一个完整示例
for policy in policy_candidates: total_reward = 0 critical_failures = 0 for scenario in scenarios: result = run_agent(policy, scenario) reward, failures = evaluate(result) total_reward += reward if "UNSAFE_ACTION_EXECUTED" in failures: critical_failures += 1 log(policy, total_reward, critical_failures)十、上线准则
不是“最优 policy”,而是:
critical_failure_rate == 0 AND acceptable_cost上线标准是安全约束,不是 reward 最大
将 Failure taxonomy 映射为负 reward,
在固定场景分布下对 Agent 决策策略进行离线自动搜索。
搜索目标不是最大化成功率,而是最小化高危 failure,
并在满足安全硬约束的前提下优化端云调用成本与效率。
该方法可解释、可复现,适合真实系统上线。