/** * Model catalog interfaces for list.modelgrid.com. */ export interface IModelCapabilitySet { chat?: boolean; completions?: boolean; embeddings?: boolean; tools?: boolean; } export interface IVllmLaunchProfile { replicas?: number; tensorParallelSize?: number; pipelineParallelSize?: number; maxModelLen?: number; gpuMemoryUtilization?: number; quantization?: string; dtype?: string; generationConfig?: 'auto' | 'vllm'; extraArgs?: string[]; env?: Record; } export interface IModelCatalogEntry { id: string; aliases?: string[]; engine: 'vllm'; source: { repo: string; revision?: string; tokenizer?: string; license?: string; homepage?: string; }; capabilities: IModelCapabilitySet; requirements: { minVramGb: number; recommendedVramGb?: number; minGpuCount?: number; }; launchDefaults?: IVllmLaunchProfile; metadata?: { family?: string; parameterCount?: string; contextWindow?: number; summary?: string; tags?: string[]; }; } export interface IModelCatalog { version: string; generatedAt: string; models: IModelCatalogEntry[]; }