Add model capabilities to the provider contract i.e. interface

This commit is contained in:
Thorsten Sommer 2025-05-06 08:28:02 +02:00
parent 9d2b2a0a5e
commit 3deeb5b60e
Signed by: tsommer
GPG Key ID: 371BBA77A02C0108
2 changed files with 10 additions and 0 deletions

View File

@ -76,6 +76,9 @@ public abstract class BaseProvider : IProvider, ISecretId
/// <inheritdoc />
public abstract Task<IEnumerable<Model>> GetEmbeddingModels(string? apiKeyProvisional = null, CancellationToken token = default);
/// <inheritdoc />
public abstract IReadOnlyCollection<Capability> GetModelCapabilities(Model model);
#endregion

View File

@ -63,4 +63,11 @@ public interface IProvider
/// <param name="token">The cancellation token.</param>
/// <returns>The list of embedding models.</returns>
public Task<IEnumerable<Model>> GetEmbeddingModels(string? apiKeyProvisional = null, CancellationToken token = default);
/// <summary>
/// Get the capabilities of a model.
/// </summary>
/// <param name="model">The model to get the capabilities for.</param>
/// <returns>The capabilities of the model.</returns>
public IReadOnlyCollection<Capability> GetModelCapabilities(Model model);
}