UNPKG

@directus/api

Version:

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

27 lines (26 loc) 1.09 kB
import { buildCustomModels, DEFAULT_AI_MODELS } from '@directus/ai'; export 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'], }, }; export 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) { const providerName = settings.openaiCompatibleName ?? 'openai-compatible'; return { [providerName]: customModel.providerOptions }; } } return {}; }