mirror of
https://github.com/RooVetGit/Roo-Code.git
synced 2026-08-28 05:27:24 +00:00
Adds an experimental feature that dynamically routes API calls to a lighter/cheaper model when the task is in an information-gathering phase. Addresses Issue #11269 - Choose Model Dynamically Based on Request. ## How it works - New experiment flag: modelRouting (disabled by default) - New setting: modelRoutingLightModelId - the cheaper model ID to use - ModelRouter tracks tool usage per API turn - If previous turn only used "read" group tools (read_file, list_files, search_files, codebase_search), the next API call uses the light model - Edit, command, browser, and MCP tools always use the primary model - First turn always uses the primary model ## Changes - packages/types/src/experiment.ts: Add modelRouting experiment ID - packages/types/src/global-settings.ts: Add modelRoutingLightModelId - src/shared/experiments.ts: Add MODEL_ROUTING config - src/core/task/ModelRouter.ts: New heuristic-based model router - src/core/task/Task.ts: Integrate ModelRouter into task lifecycle - src/core/task/__tests__/ModelRouter.spec.ts: 35 tests (all passing) |
||
|---|---|---|
| .. | ||
| build | ||
| cloud | ||
| config-eslint | ||
| config-typescript | ||
| core | ||
| evals | ||
| ipc | ||
| telemetry | ||
| types | ||
| vscode-shim | ||