UNPKG

@just-every/ensemble

Version:

LLM provider abstraction layer with unified streaming interface

33 lines 1.23 kB
const externalModels = new Map(); const externalProviders = new Map(); const modelClassOverrides = new Map(); export function registerExternalModel(model, provider) { const modelId = model.id; externalModels.set(modelId, model); if (!externalProviders.has(model.provider)) { externalProviders.set(model.provider, provider); } console.log(`[Ensemble] Registered external model: ${modelId} with provider: ${model.provider}`); } export function getExternalModel(modelId) { return externalModels.get(modelId); } export function getExternalProvider(providerId) { return externalProviders.get(providerId); } export function isExternalModel(modelId) { return externalModels.has(modelId); } export function clearExternalRegistrations() { externalModels.clear(); externalProviders.clear(); modelClassOverrides.clear(); } export function overrideModelClass(className, modelClass) { modelClassOverrides.set(className, modelClass); console.log(`[Ensemble] Overrode model class: ${className} with models: ${modelClass.models?.join(', ')}`); } export function getModelClassOverride(className) { return modelClassOverrides.get(className); } //# sourceMappingURL=external_models.js.map