|
|
import { config } from "$lib/server/config"; |
|
|
import type { ProcessedModel } from "../models"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export function findConfiguredMultimodalModel( |
|
|
models: ProcessedModel[] | undefined |
|
|
): ProcessedModel | undefined { |
|
|
const preferredModelId = (config.LLM_ROUTER_MULTIMODAL_MODEL || "").trim(); |
|
|
if (!preferredModelId || !models?.length) return undefined; |
|
|
|
|
|
return models.find( |
|
|
(candidate) => |
|
|
(candidate.id === preferredModelId || candidate.name === preferredModelId) && |
|
|
!candidate.isRouter && |
|
|
candidate.multimodal |
|
|
); |
|
|
} |
|
|
|
|
|
export function getConfiguredMultimodalModelId( |
|
|
models: ProcessedModel[] | undefined |
|
|
): string | undefined { |
|
|
const model = findConfiguredMultimodalModel(models); |
|
|
return model?.id ?? model?.name; |
|
|
} |
|
|
|