fix(agent): hide unrelated models for alias fallback
This commit is contained in:
+10
-5
@@ -75,14 +75,19 @@ export async function listLlmModels(options?: {
|
||||
}
|
||||
|
||||
const models = normalizeLlmModelsPayload(await response.json());
|
||||
const merged = new Map<string, LlmModelOption>();
|
||||
merged.set(fallbackModel, fallbackOption);
|
||||
for (const model of models) merged.set(model.id, model);
|
||||
|
||||
if (models.length === 0) {
|
||||
return { models: [fallbackOption], fallbackModel, degraded: true };
|
||||
}
|
||||
|
||||
if (!models.some((model) => model.id === fallbackModel)) {
|
||||
return { models: [fallbackOption], fallbackModel, degraded: false };
|
||||
}
|
||||
|
||||
return {
|
||||
models: [...merged.values()].sort((a, b) => a.id.localeCompare(b.id)),
|
||||
models,
|
||||
fallbackModel,
|
||||
degraded: models.length === 0,
|
||||
degraded: false,
|
||||
};
|
||||
} catch {
|
||||
return { models: [fallbackOption], fallbackModel, degraded: true };
|
||||
|
||||
Reference in New Issue
Block a user