v0.5.5 - 智能调度路由层增强(P0-P3)+ 工具体验修复
[0.5.5] - 2026-07-17
智能调度路由层增强(P0-P3)
整合两份外部 AI 路由报告 + 自研方案,落地批量注册、会话粘性、资源感知、限流退避、配置热加载:
- P0 配置链路打通:修复
--config只喂ModelRegistry不喂ModelPool的隐藏 bug(AutoRouter 用 Pool,故配置实际失效);load_from_fileweight 丢失修复;首跑/向导每 provider 注册数可配(OMNIAGENT_MAX_MODELS_PER_PROVIDER)。 - P1-A 批量注册(
/import_models):新模块batch_register.py--YAML/JSON 解析 + 校验 +${ENV}展开 + discover 探测子模型 + probe 健康探活 + 逐项容错注册;配套config/models.example.yaml、/reload_models、main.py models import -f/--file --no-probe。 - P1-B SAAR 会话感知路由:新模块
session_lock.py--工具流锁定首模型,防 ReAct 中途换模型导致上下文漂移 + prompt cache 失效;锁定短路/健康失败释放重锁/漂移降级。 - P2 资源感知调度 + 限流退避:
ModelPool新增perf_profile(fast|cost|balanced)权重向量 +in_flight负载因子 +acquire/release;engine/base._call_llm并发计数配对 + 全链瞬时失败退避重试(429/5xx/网络,Retry-After 上限 30s,depth≤2);/set_profile命令。 - P3 配置热加载:新模块
config_watcher.py--纯 stdlib ctypes 调 libc inotify(零新依赖),监听models.yaml变更自动热加载;监听目录+过滤文件名(正确处理 vim/emacs atomic rename)、debounce 0.5s 防抖、非 Linux 静默降级;OMNIAGENT_CONFIG_WATCH=0可关。 - benchmark 自动 tier:
model_poolregister 时接入benchmark_fetcher(HuggingFace Leaderboard 数据,7 天缓存)校准 tier。
工具执行体验修复
- 文件列举爆炸:
list_files/search_files剪枝垃圾目录(node_modules/.git/venv 等)+ 500/2000 上限;scout300 上限。模拟 930->30 文件。 - "工具调用失败"噪音根治:终端错误分类扩展 + 逐工具补
error/success字段;refactor analyze补success(最高频误判);command/git/weather 补 error;各read_text捕 UnicodeDecodeError;git commitreplacebug;weather IndexError/None°C。 - edit_file/batch_edit 模糊匹配:精确未命中时空白容忍兜底;
batch_write校验阶段原子化 + 诚实契约描述。 - github_fetch:支持
GITHUB_TOKEN环境变量认证(60/h->5000/h)+ 检测 API 截断。 - mcp transport:
StdioTransport后台 drain stderr 防管道死锁;SSETransport加__del__释放连接池。 - 日志级别:默认 INFO->ERROR(第 4 级),静默例行噪声(verbose 仍 DEBUG)。
文档
- 添加终端操作演示视频 + README 嵌入展示。
约束
- 1241/1241 测试全绿(+56 路由层 + 13 watcher 新增)
- 不破坏既有引擎/工具契约