59 lines
1.9 KiB
C#
59 lines
1.9 KiB
C#
using System.Collections.Generic;
|
||
using System.Threading;
|
||
using System.Threading.Tasks;
|
||
using AIImages.Models;
|
||
|
||
namespace AIImages.Services
|
||
{
|
||
/// <summary>
|
||
/// Интерфейс сервиса для работы с Stable Diffusion API
|
||
/// </summary>
|
||
public interface IStableDiffusionApiService
|
||
{
|
||
/// <summary>
|
||
/// Генерирует изображение на основе запроса
|
||
/// </summary>
|
||
Task<GenerationResult> GenerateImageAsync(
|
||
GenerationRequest request,
|
||
CancellationToken cancellationToken = default
|
||
);
|
||
|
||
/// <summary>
|
||
/// Получает прогресс текущей генерации
|
||
/// </summary>
|
||
Task<GenerationProgress> GetProgressAsync(CancellationToken cancellationToken = default);
|
||
|
||
/// <summary>
|
||
/// Проверяет доступность API
|
||
/// </summary>
|
||
Task<bool> CheckApiAvailability(
|
||
string apiEndpoint,
|
||
CancellationToken cancellationToken = default
|
||
);
|
||
|
||
/// <summary>
|
||
/// Получает список доступных моделей с API
|
||
/// </summary>
|
||
Task<List<string>> GetAvailableModels(
|
||
string apiEndpoint,
|
||
CancellationToken cancellationToken = default
|
||
);
|
||
|
||
/// <summary>
|
||
/// Получает список доступных сэмплеров
|
||
/// </summary>
|
||
Task<List<string>> GetAvailableSamplers(
|
||
string apiEndpoint,
|
||
CancellationToken cancellationToken = default
|
||
);
|
||
|
||
/// <summary>
|
||
/// Получает список доступных schedulers
|
||
/// </summary>
|
||
Task<List<string>> GetAvailableSchedulers(
|
||
string apiEndpoint,
|
||
CancellationToken cancellationToken = default
|
||
);
|
||
}
|
||
}
|