llm: drop model/agent scope matching; add instance-wide compaction model picker
Nightly Build / build (push) Successful in 6m50s
Nightly Build / build (push) Successful in 6m50s
Remove the scope system end-to-end (llm_models.scope column, agent meta scope field, scope-based tier in model selection, UI checkboxes/pills): it was only a soft ranking hint, had drifted (6 UI scopes vs 3 used by agents, 'general' not even selectable) and duplicated what strength already decides. Strength stays the single AUTO-selection axis. Compaction: the summary model is now pickable from the Settings page via a new PropertyType::LlmModel config property (registry key compaction_model), instance-wide and live (no restart). Fallback chain: explicit pick -> compaction.strength from config.yml -> priority order; a deleted configured model degrades to AUTO. ContextCompactor reads the key at compact time through GlobalConfigManager.
This commit is contained in:
@@ -11,6 +11,7 @@ function _configSetSlug(name) {
|
||||
const slugs = {
|
||||
'Interface': 'interface',
|
||||
'TIC Agent': 'tic_agent',
|
||||
'Compaction': 'compaction',
|
||||
};
|
||||
return slugs[name] ?? null;
|
||||
}
|
||||
@@ -193,6 +194,20 @@ export class ConfigPage extends LightElement {
|
||||
</select>`;
|
||||
}
|
||||
|
||||
if (prop.property_type === 'llm_model') {
|
||||
// Configured LLM models, by name. Nullable: the empty choice means
|
||||
// "auto-select" (the backend's own resolution order applies).
|
||||
const models = prop.options ?? [];
|
||||
return html`
|
||||
<select class="form-select form-select-sm config-input"
|
||||
.value=${val}
|
||||
@change=${e => this._setValue(prop.key, e.target.value)}>
|
||||
<option value="">— ${t('config.llm_model.auto')} —</option>
|
||||
${models.map(m => html`
|
||||
<option value=${m.id} ?selected=${val === m.id}>${m.name}</option>`)}
|
||||
</select>`;
|
||||
}
|
||||
|
||||
return html`
|
||||
<input type="text"
|
||||
class="form-control form-control-sm config-input"
|
||||
|
||||
Reference in New Issue
Block a user