|
|
@@ -11,6 +11,11 @@ export namespace CopilotModels {
|
|
|
// every version looks like: `{model.id}-YYYY-MM-DD`
|
|
|
version: z.string(),
|
|
|
supported_endpoints: z.array(z.string()).optional(),
|
|
|
+ policy: z
|
|
|
+ .object({
|
|
|
+ state: z.string().optional(),
|
|
|
+ })
|
|
|
+ .optional(),
|
|
|
capabilities: z.object({
|
|
|
family: z.string(),
|
|
|
limits: z.object({
|
|
|
@@ -123,7 +128,9 @@ export namespace CopilotModels {
|
|
|
})
|
|
|
|
|
|
const result = { ...existing }
|
|
|
- const remote = new Map(data.data.filter((m) => m.model_picker_enabled).map((m) => [m.id, m] as const))
|
|
|
+ const remote = new Map(
|
|
|
+ data.data.filter((m) => m.model_picker_enabled && m.policy?.state !== "disabled").map((m) => [m.id, m] as const),
|
|
|
+ )
|
|
|
|
|
|
// prune existing models whose api.id isn't in the endpoint response
|
|
|
for (const [key, model] of Object.entries(result)) {
|