Namespace JD.AI.Core.Providers
Classes
- AmazonBedrockDetector
Detects AWS Bedrock availability via AWS credentials. Uses the official Microsoft.SemanticKernel.Connectors.Amazon package.
- AnthropicDetector
Detects Anthropic API availability via API key. Dynamically discovers models from the Anthropic API, falling back to a curated catalog of well-known Claude models.
- ApiKeyProviderDetectorBase
Shared template for API-key based provider detectors. Subclasses supply a static KnownModels catalog as a fallback and may override DiscoverModelsAsync(string, CancellationToken) to query their API for the current model list at detection time.
- AzureOpenAIDetector
Detects Azure OpenAI availability via API key and endpoint. Requires apikey, endpoint, and optional comma-separated deployments list.
- ClaudeCodeDetector
Detects a local Claude Code session and exposes its models. When running as a Windows service, scans user profiles for credentials. When the session token is expired, attempts a silent refresh via the Claude CLI.
- CopilotDetector
Detects a local GitHub Copilot session and enumerates its models. When running as a Windows service, scans user profiles for credentials. When authentication fails, attempts a silent refresh via the
ghCLI.
- FoundryLocalDetector
Detects a locally-running Microsoft Foundry Local instance and enumerates its models via the OpenAI-compatible REST API. Port is discovered dynamically via the Foundry CLI or process scanning.
- GoogleGeminiDetector
Detects Google Gemini API availability via API key. Dynamically discovers models from the Generative Language API, filtering to
generateContent-capable models.
- HuggingFaceDetector
Detects HuggingFace Inference API availability via API key. Dynamically discovers the most popular inference-ready chat models from the HuggingFace Hub, falling back to a curated catalog when offline.
HuggingFace deprecated the old api-inference.huggingface.co endpoint (returns 410 Gone). All requests now use the OpenAI-compatible router: https://router.huggingface.co/v1/
- MistralDetector
Detects Mistral AI availability via API key. Dynamically discovers models from the Mistral API, falling back to a curated catalog when the endpoint is unreachable.
- ModelCapabilitiesExtensions
Helpers for ModelCapabilities display.
- ModelCapabilityEntry
Registry projection for model capability-aware routing.
- ModelCapabilityRegistry
Default in-memory capability registry populated from provider model info.
- OllamaDetector
Detects Ollama instances (local and optionally named remote endpoints) and enumerates models.
- OpenAICodexDetector
Detects a local OpenAI Codex session and exposes its models. When running as a Windows service, scans user profiles for credentials. Supports automatic token refresh and device code login.
- OpenAICompatibleDetector
Generic detector for OpenAI-compatible API endpoints. Supports multiple named instances (Groq, Together, DeepSeek, etc.). Each instance is stored as openai-compat:{alias} in the credential store.
- OpenAIDetector
Detects OpenAI API availability via API key and discovers models.
- OpenRouterDetector
First-class provider for OpenRouter — a unified API that exposes hundreds of AI models from multiple vendors through an OpenAI-compatible interface. Dynamically discovers models from the OpenRouter catalog, enriching each with context length, pricing, and capability metadata.
- ProviderInfo
Describes a detected AI provider and its available models.
- ProviderModelInfo
A model available through a provider.
- ProviderRegistry
Aggregates all IProviderDetector instances and exposes a unified model catalog with kernel-building capability.
- ProviderServiceCollectionExtensions
Service registration helpers for the default gateway/daemon provider detector set.
Interfaces
- IModelCapabilityRegistry
Tracks model capabilities and supports capability-based lookups.
- IProviderDetector
Detects a single AI backend and builds kernels for its models.
- IProviderRegistry
Detects and registers AI providers, builds kernels on demand.
Enums
- ModelCapabilities
Flags describing what a model supports. A model may support one or more capabilities simultaneously.
- ModelCapability
Capability flags for model-level routing decisions.
- ModelCostTier
Coarse pricing tier used for capability routing preferences.