Filter model dropdowns by capability and fail fast when the vision model cannot see images

This commit is contained in:
Justin Oros
2026-09-21 14:30:39 -07:00
parent 451e318860
commit a2d9702387
2 changed files with 32 additions and 1 deletions
+2 -1
View File
@@ -195,7 +195,8 @@ else if(type==="days"){const on=new Set(String(s[k]||"").split(","));input=`<div
else if(type.startsWith("time")){const cur=String(s[k]||"");const opts=(type==="time:opt"?[["","None"]]:[]).concat(TIMES);if(cur&&!opts.some(([v])=>v===cur))opts.push([cur,cur]);input=`<select id="f-${k}">${opts.map(([v,l])=>`<option value="${esc(v)}" ${cur===v?"selected":""}>${esc(l)}</option>`).join("")}</select>`}
else if(type.startsWith("model:")){
const kind=type.slice(6);
const installed=data.installed_models||[];
const allInstalled=data.installed_models||[];const vis=new Set(data.installed_vision_models||[]);
const installed=kind==="vision"?allInstalled.filter(m=>vis.has(m)):allInstalled.filter(m=>!vis.has(m));
const suggested=(kind==="vision"?data.suggested_vision_models:data.suggested_text_models)||[];
const cur=String(s[k]||"");
const seen=new Set();