/** * kosha-discovery — NVIDIA provider discoverer. * * Queries the NVIDIA build.nvidia.com `/v1/models` endpoint (OpenAI-compatible), * filters relevant models, and maps them into {@link ModelCard} objects. * * NVIDIA's API catalog is multi-vendor, hosting models from nvidia, meta, * mistral, google, microsoft, deepseek, qwen, and others. * @module */ import { OpenAICompatibleDiscoverer, type OpenAICompatibleModel, type ModelClassification } from "./openai-compatible.js"; /** * Discovers models available through the NVIDIA API (build.nvidia.com). * * The NVIDIA catalog serves models from multiple vendors using an * OpenAI-compatible API. Model IDs are namespaced (e.g. `nvidia/llama-3.1-nemotron-70b-instruct`, * `meta/llama-3.1-405b-instruct`), allowing origin provider extraction from the prefix. */ export declare class NvidiaDiscoverer extends OpenAICompatibleDiscoverer { readonly providerId = "nvidia"; readonly providerName = "NVIDIA"; readonly baseUrl = "https://integrate.api.nvidia.com"; /** * Determine whether a model ID represents a model we want to track. * * We keep chat/instruct models and filter out: * - Embedding-only models (handled separately if needed) * - Reward models (used for RLHF, not inference) * - Guard/safety models (used for content filtering pipelines) */ protected isRelevantModel(model: OpenAICompatibleModel): boolean; /** * Classify an NVIDIA model: extract origin provider, infer mode and capabilities. */ protected classifyModel(model: OpenAICompatibleModel): ModelClassification; /** * Extract the origin provider from a namespaced model ID. * * NVIDIA model IDs use `vendor/model-name` format. The prefix before * the first `/` identifies the origin provider. * * @example * extractOriginProvider("nvidia/llama-3.1-nemotron-70b-instruct") // "nvidia" * extractOriginProvider("meta/llama-3.1-405b-instruct") // "meta" */ private extractOriginProvider; /** Map a model ID to its primary {@link ModelMode}. */ private inferMode; /** * Infer capability flags from the model ID. * * Key heuristics: * - Embedding models get "embedding" only * - Models with "vlm", "vision", or known vision model names get "vision" * - Instruct/chat models get "function_calling" (NVIDIA API supports it) * - Code-specialized models get "code" */ private inferCapabilities; } //# sourceMappingURL=nvidia.d.ts.map