Table of Contents

Class ProviderRegistry

Namespace
JD.AI.Core.Providers
Assembly
JD.AI.Core.dll

Aggregates all IProviderDetector instances and exposes a unified model catalog with kernel-building capability.

public sealed class ProviderRegistry : IProviderRegistry
Inheritance
ProviderRegistry
Implements
Inherited Members

Constructors

ProviderRegistry(IEnumerable<IProviderDetector>, ModelMetadataProvider?, IModelCapabilityRegistry?)

public ProviderRegistry(IEnumerable<IProviderDetector> detectors, ModelMetadataProvider? metadataProvider = null, IModelCapabilityRegistry? capabilityRegistry = null)

Parameters

detectors IEnumerable<IProviderDetector>
metadataProvider ModelMetadataProvider
capabilityRegistry IModelCapabilityRegistry

Properties

CapabilityRegistry

Capability-aware model metadata registry populated on provider detection.

public IModelCapabilityRegistry CapabilityRegistry { get; }

Property Value

IModelCapabilityRegistry

Methods

BuildKernel(ProviderModelInfo)

Builds a Microsoft.SemanticKernel.Kernel configured for the given model.

public Kernel BuildKernel(ProviderModelInfo model)

Parameters

model ProviderModelInfo

Returns

Kernel

DetectProviderAsync(string, bool, CancellationToken)

public Task<ProviderInfo?> DetectProviderAsync(string providerName, bool forceRefresh = false, CancellationToken ct = default)

Parameters

providerName string
forceRefresh bool
ct CancellationToken

Returns

Task<ProviderInfo>

DetectProvidersAsync(bool, CancellationToken)

Probes all known provider backends, optionally forcing a cache refresh.

public Task<IReadOnlyList<ProviderInfo>> DetectProvidersAsync(bool forceRefresh, CancellationToken ct = default)

Parameters

forceRefresh bool
ct CancellationToken

Returns

Task<IReadOnlyList<ProviderInfo>>

DetectProvidersAsync(CancellationToken)

Probes all known provider backends and returns availability info.

public Task<IReadOnlyList<ProviderInfo>> DetectProvidersAsync(CancellationToken ct = default)

Parameters

ct CancellationToken

Returns

Task<IReadOnlyList<ProviderInfo>>

GetDetector(string)

Returns the IProviderDetector for the given provider name.

public IProviderDetector? GetDetector(string providerName)

Parameters

providerName string

Returns

IProviderDetector

GetModelsAsync(bool, CancellationToken)

public Task<IReadOnlyList<ProviderModelInfo>> GetModelsAsync(bool forceRefresh, CancellationToken ct = default)

Parameters

forceRefresh bool
ct CancellationToken

Returns

Task<IReadOnlyList<ProviderModelInfo>>

GetModelsAsync(CancellationToken)

Returns all models across all available providers.

public Task<IReadOnlyList<ProviderModelInfo>> GetModelsAsync(CancellationToken ct = default)

Parameters

ct CancellationToken

Returns

Task<IReadOnlyList<ProviderModelInfo>>