UNPKG

@directus/api

Version:

Directus is a real-time API and App dashboard for managing SQL database content

24 lines (22 loc) 1.03 kB
import { DEFAULT_AI_MODELS, buildCustomModels } from "@directus/ai"; //#region src/ai/providers/options.ts function getModelDefinition(provider, model, settings) { const customModels = buildCustomModels(settings.openaiCompatibleModels); return [...DEFAULT_AI_MODELS, ...customModels].find((m) => m.provider === provider && m.model === model); } const OPENAI_REASONING_OPTIONS = { openai: { reasoningSummary: "auto", store: false, include: ["reasoning.encrypted_content"] } }; function getProviderOptions(provider, model, settings) { const modelDef = getModelDefinition(provider, model, settings); if (provider === "openai" && modelDef?.reasoning) return OPENAI_REASONING_OPTIONS; if (provider === "openai-compatible") { const customModel = settings.openaiCompatibleModels?.find((m) => m.id === model); if (customModel?.providerOptions) return { [settings.openaiCompatibleName ?? "openai-compatible"]: customModel.providerOptions }; } return {}; } //#endregion export { getModelDefinition, getProviderOptions };