fix(validation): respect settings-bound provider and correct multimodal heuristic
This commit is contained in:
@@ -74,7 +74,7 @@ def test_render_prompt_replaces_known_placeholders():
|
||||
def test_is_multimodal_model_detects_known_vision_models():
|
||||
assert is_multimodal_model("gpt-4o") is True
|
||||
assert is_multimodal_model("claude-3-5-sonnet") is True
|
||||
assert is_multimodal_model("stepfun/step-3.5-flash:free", "openrouter") is True
|
||||
assert is_multimodal_model("stepfun/step-3.5-flash:free", "openrouter") is False
|
||||
assert is_multimodal_model("text-only-model") is False
|
||||
# [/DEF:test_is_multimodal_model_detects_known_vision_models:Function]
|
||||
|
||||
|
||||
@@ -161,13 +161,9 @@ def is_multimodal_model(model_name: str, provider_type: Optional[str] = None) ->
|
||||
"internvl",
|
||||
"qwen-vl",
|
||||
"qwen2-vl",
|
||||
"stepfun/step-3.5",
|
||||
)
|
||||
if any(marker in token for marker in multimodal_markers):
|
||||
return True
|
||||
# OpenRouter model ids are heterogeneous; keep permissive path for known StepFun family.
|
||||
if provider == "openrouter" and token.startswith("stepfun/step-3.5"):
|
||||
return True
|
||||
return False
|
||||
# [/DEF:is_multimodal_model:Function]
|
||||
|
||||
|
||||
@@ -51,30 +51,11 @@
|
||||
validatingIds = new Set(validatingIds);
|
||||
|
||||
try {
|
||||
// TODO: Get provider_id from settings or prompt user
|
||||
// For now, we assume a default provider or let the backend handle it if possible,
|
||||
// but the plugin requires provider_id.
|
||||
// In a real implementation, we might open a modal to select provider if not configured globally.
|
||||
// Or we pick the first active one.
|
||||
|
||||
// Fetch active provider first
|
||||
const providers = await api.fetchApi("/llm/providers");
|
||||
const activeProvider = providers.find((p: any) => p.is_active);
|
||||
|
||||
if (!activeProvider) {
|
||||
toast(
|
||||
"No active LLM provider found. Please configure one in settings.",
|
||||
"error",
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
await api.postApi("/tasks", {
|
||||
plugin_id: "llm_dashboard_validation",
|
||||
params: {
|
||||
dashboard_id: dashboard.id.toString(),
|
||||
environment_id: environmentId,
|
||||
provider_id: activeProvider.id,
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user