SPB Git

Repository Public

providers-adapter.ts 570 B 15 lines typescript

1/** The ONLY file that touches `@aos/providers`: the model catalogue, nothing else (the server never calls a model). */2import { CATALOGUE, getProvider } from '@aos/providers';3import { ModelInfo, type Provider } from '@aos/shared';4import { z } from 'zod';5import type { ProvidersPort } from './providers-port.js';67export function loadProviders(): ProvidersPort {8  return {9    catalogue: () => CATALOGUE.map((m) => ({ ...m })),10    async listModels(provider: Provider) {11      return z.array(ModelInfo).parse(await getProvider(provider).listModels());12    },13  };14}15
Files main
Menu

Theme