Switcher core routing and provider logic for AI model selection.
npm install @switcher/core
import { routeRequest, Provider, RequestContext } from '@switcher/core';
const providers: Provider[] = [/* ... */];
const metrics = new Map();
const context: RequestContext = {
model: 'gpt-4',
payload: { messages: [{ role: 'user', content: 'Hello!' }] },
userId: 'user-123',
};
const selected = routeRequest(providers, metrics, context);
console.log('Selected provider:', selected);
-
routeRequest(providers, metrics, context)
— Selects the best provider for a given request. -
routeRequestWithRankings(providers, metrics, rankings, context)
— Selects provider using additional ranking info.
-
Provider
— Provider info -
ProviderMetrics
— Metrics for providers -
ProviderRanking
— Ranking info -
RequestContext
— Inbound request context
MIT