已合并
系统自评估与建议能力——观测补齐+规则引擎+LLM 分析 #493
王明琦创建于 3 天前
系统自评估与建议能力——观测补齐+规则引擎+LLM 分析 #493
已合并
Pull Request已成功合入, 合并人@张雅晴
(感谢 王明琦 的贡献)atomgit-bot
3 天前 评论:
3 天前 评论:
变更摘要
该 PR(标题标注为 docs(api),实际内容为 2026-09 系统自评估功能的落地)为 agent-runtime 引入系统自评估数据层及其可视化接口:新增 agent_runtime/evaluation 子包(state/collector/evaluator/rules/llm 五个模块),在 main.py 中注册 sys_sample/sys_eval 两个单 leader 后台 job 并接入热路径计数埋点,扩展 /visualization/* 只读端点,同时新增 eval_* 配置项与 AGENT_RUNTIME_EVAL_* 环境变量。默认配置为纯规则评估(无 LLM 外呼),LLM 分析仅在 base_url 与 model 均非空时启用。
主要改动
- 新增
evaluation子包与 Redis 状态层:state.py定义{agent_runtime:eval}hash tag 单槽键域(采样 ZSET/计数 HASH/报告 STRING+ZSET,全单键命令零 Lua),EvaluationState提供bump_counters/add_sample/write_report/latest_report等门面;rules.py提供纯函数静态/动态规则引擎(如S-CONTRADICTION-MIN-IDLE、D-CONCURRENCY-SATURATION、D-POD-TTL-CHURN),evaluator.py的Evaluator.evaluate_once将采集→规则→LLM→报告落盘编排为sys_evaljob 的 on_tick,报告仅含 B 类策略字段建议、caveat 明示需人审后经config_sync下发。
- **注册两个自评估 job 并打通采集链路**:`main.py` 新增 `sys_sample`/`sys_eval` 单 leader job(interval 分别为 `max(eval_sample_interval, 5)`/`max(eval_interval, 30)`),并启动每副本 5s 的 `_telemetry_flush_loop` 把内存计数批量 HINCRBY 聚合到 Redis;`session_manager/orchestrator.py` 的 route 结果与 `resource_manager/orchestrator.py` 的 acquire outcome 经 `ScopeTelemetryBuffer` 计数,`resource_manager/sweeper.py` 经 `event_sink` 上报扩缩容/回收/判死事件(均 try/except 包裹,埋点不反噬业务)。
- 新增配置项与环境变量:
config.py的AgentRuntimeConfig增加eval_sample_interval/eval_interval/eval_llm_*/eval_pod_budget字段及_env_float/_env_bool解析助手,agent_runtime.server.env.example、deploy/agent_runtime.env.example与agent_runtime.template.yaml同步注入对应AGENT_RUNTIME_EVAL_*变量(默认全空=纯规则评估、无 LLM 外呼、pod_budget=0 关闭预算规则)。 - 扩展可视化只读接口:
visualization_api.py新增/visualization/history(per-scope 历史趋势采样,窗口默认 1h、新在前)与/visualization/evaluation(全局评估报告,latest完整报告 + 瘦身history,经redact脱敏、无报告属正常态不 404);/visualization/scopes与/scope改用scope_inventory并补齐phase分类与容量闸门字段(scope_concurrency/max_pods/session_utilization/route_budget_sec等)。 - LLM 分析层及配套验证:
llm.py的LLMClient走 OpenAI 兼容 chat completions,prompt 构造做白名单投影与 48KB 体积护栏、输出解析逐项过滤字段白名单并降级为纯规则报告;配套新增tests/evaluation/单测(覆盖缓冲/状态/评估器三态/LLM 解析/规则边界)、visualization集成用例,并扩展verify_redis_cluster.py(评估域键读写)与e2e_hld_acceptance.py(stage13c 自评估验收)。


不准确?
atomgit-bot
3 天前 评论:
3 天前 评论:
openJiuwen-bot
3 天前 评论:
3 天前 评论:
欢迎来到 openJiuwen 社区
Hey @wangmingqi , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。


3 天前 添加了label:stat/needs-squash
3 天前 添加了label:openJiuwen-cla/yes
openJiuwen-bot
3 天前 评论:
3 天前 评论:
3 天前 修改了pull request 的描述
3 天前 修改标题为 “系统自评估与建议能力——观测补齐+规则引擎+LLM 分析”,原标题为“docs(api): 配置面接口文档(config_sync/config_refresh/visualization)”
3 天前 修改标题为 “系统自评估与建议能力——观测补齐+规则引擎+LLM 分析”,原标题为“docs(api): 配置面接口文档(config_sync/config_refresh/visualization)”
atomgit-bot
3 天前 评论:
3 天前 评论:
王明琦
3 天前 评论:
3 天前 评论:
ci-pipeline


openJiuwen-bot
3 天前 评论:
3 天前 评论:
| 任务名称 | 结果 | 日志操作 |
|---|---|---|
| 静态检查 | ❌FAILED | 点此跳转 |
| 禁用词扫描 | ✅SUCCESS | 点此跳转 |
| 防投毒检查 | ✅SUCCESS | 点此跳转 |
| 开源合规检查 | ✅SUCCESS | 点此跳转 |
| UT测试 | N/A | N/A |
| ST测试 | N/A | N/A |
| build 编译包 | N/A | N/A |
| ruff codecheck | {{ruff_codecheck_result}} | {{ruff_codecheck_link_text}} |
| issue关联检查 | {{issue_linked_result}} | {{issue_linked_link_text}} |
| pr size检查 | {{pr_size_result}} | {{pr_size_link_text}} |


3 天前 添加了label:ci-failed
王明琦
15 小时前 评论:
15 小时前 评论:
ci-pipeline


15 小时前 删除了label:ci-failed
openJiuwen-bot
15 小时前 评论:
15 小时前 评论:
| 任务名称 | 结果 | 日志操作 |
|---|---|---|
| 静态检查 | ✅SUCCESS | 点此跳转 |
| 禁用词扫描 | ✅SUCCESS | 点此跳转 |
| 防投毒检查 | ✅SUCCESS | 点此跳转 |
| 开源合规检查 | ✅SUCCESS | 点此跳转 |
| UT测试 | N/A | N/A |
| ST测试 | N/A | N/A |
| build 编译包 | N/A | N/A |
| ruff codecheck | {{ruff_codecheck_result}} | {{ruff_codecheck_link_text}} |
| issue关联检查 | {{issue_linked_result}} | {{issue_linked_link_text}} |
| pr size检查 | {{pr_size_result}} | {{pr_size_link_text}} |


15 小时前 添加了label:ci-successful
15 小时前 关联了issue:[Feature]: Agent Runtime - Agent管理
15 小时前 合入了pull request,合并节点 SHA:b238ac193523c8935173254d7681be1ed742b587
15 小时前 删除了label:ci-successful
Paired: GitHub #144 ↔ GitCode !493
What type of PR is this?
/kind
Self-checklist:(请自检,在[ ]内打上x,我们将检视你的完成情况,否则会导致pr无法合入)