AI-Studio/app/MindWork AI Studio/Provider/NoProvider.cs

48 lines
2.3 KiB
C#
Raw Normal View History

2024-05-04 09:12:05 +00:00
using System.Runtime.CompilerServices;
using AIStudio.Chat;
using AIStudio.Settings;
2024-04-20 15:06:50 +00:00
namespace AIStudio.Provider;
public class NoProvider : IProvider
{
#region Implementation of IProvider
2025-12-30 17:30:32 +00:00
public LLMProviders Provider => LLMProviders.NONE;
2024-04-20 15:06:50 +00:00
public string Id => "none";
public string InstanceName { get; set; } = "None";
/// <inheritdoc />
public string AdditionalJsonApiParameters { get; init; } = string.Empty;
2024-09-01 18:10:03 +00:00
public Task<IEnumerable<Model>> GetTextModels(string? apiKeyProvisional = null, CancellationToken token = default) => Task.FromResult<IEnumerable<Model>>([]);
2024-05-04 09:12:05 +00:00
2024-09-01 18:10:03 +00:00
public Task<IEnumerable<Model>> GetImageModels(string? apiKeyProvisional = null, CancellationToken token = default) => Task.FromResult<IEnumerable<Model>>([]);
2024-12-03 14:24:40 +00:00
public Task<IEnumerable<Model>> GetEmbeddingModels(string? apiKeyProvisional = null, CancellationToken token = default) => Task.FromResult<IEnumerable<Model>>([]);
2026-01-09 11:45:21 +00:00
public Task<IEnumerable<Model>> GetTranscriptionModels(string? apiKeyProvisional = null, CancellationToken token = default) => Task.FromResult<IEnumerable<Model>>([]);
2024-05-04 09:12:05 +00:00
public async IAsyncEnumerable<ContentStreamChunk> StreamChatCompletion(Model chatModel, ChatThread chatChatThread, SettingsManager settingsManager, [EnumeratorCancellation] CancellationToken token = default)
2024-04-20 15:13:32 +00:00
{
2024-05-04 09:12:05 +00:00
await Task.FromResult(0);
yield break;
2024-04-20 15:13:32 +00:00
}
2024-09-01 18:10:03 +00:00
public async IAsyncEnumerable<ImageURL> StreamImageCompletion(Model imageModel, string promptPositive, string promptNegative = FilterOperator.String.Empty, ImageURL referenceImageURL = default, [EnumeratorCancellation] CancellationToken token = default)
2024-05-04 09:12:05 +00:00
{
await Task.FromResult(0);
yield break;
}
2024-04-20 15:06:50 +00:00
public Task<string> TranscribeAudioAsync(Model transcriptionModel, string audioFilePath, SettingsManager settingsManager, CancellationToken token = default) => Task.FromResult(string.Empty);
2026-02-05 16:27:11 +00:00
public Task<IReadOnlyList<IReadOnlyList<float>>> EmbedTextAsync(Model embeddingModel, SettingsManager settingsManager, CancellationToken token = default, params List<string> texts) => Task.FromResult<IReadOnlyList<IReadOnlyList<float>>>(Array.Empty<IReadOnlyList<float>>());
2025-05-11 10:51:35 +00:00
public IReadOnlyCollection<Capability> GetModelCapabilities(Model model) => [ Capability.NONE ];
2024-04-20 15:06:50 +00:00
#endregion
}