39 lines
1.5 KiB
C#
39 lines
1.5 KiB
C#
using Yi.Framework.AiHub.Application.Contracts.Dtos.UsageStatistics;
|
||
|
||
namespace Yi.Framework.AiHub.Application.Contracts.IServices;
|
||
|
||
/// <summary>
|
||
/// 使用量统计服务接口
|
||
/// </summary>
|
||
public interface IUsageStatisticsService
|
||
{
|
||
/// <summary>
|
||
/// 获取当前用户近7天的Token消耗统计
|
||
/// </summary>
|
||
/// <returns>每日Token使用量列表</returns>
|
||
Task<List<DailyTokenUsageDto>> GetLast7DaysTokenUsageAsync(UsageStatisticsGetInput input);
|
||
|
||
/// <summary>
|
||
/// 获取当前用户各个模型的Token消耗量及占比
|
||
/// </summary>
|
||
/// <returns>模型Token使用量列表</returns>
|
||
Task<List<ModelTokenUsageDto>> GetModelTokenUsageAsync(UsageStatisticsGetInput input);
|
||
|
||
/// <summary>
|
||
/// 获取当前用户尊享服务Token用量统计
|
||
/// </summary>
|
||
/// <returns>尊享服务Token用量统计</returns>
|
||
Task<PremiumTokenUsageDto> GetPremiumTokenUsageAsync();
|
||
|
||
/// <summary>
|
||
/// 获取当前用户近24小时每小时Token消耗统计(柱状图)
|
||
/// </summary>
|
||
/// <returns>每小时Token使用量列表,包含各模型堆叠数据</returns>
|
||
Task<List<HourlyTokenUsageDto>> GetLast24HoursTokenUsageAsync(UsageStatisticsGetInput input);
|
||
|
||
/// <summary>
|
||
/// 获取当前用户今日各模型使用量统计(卡片列表)
|
||
/// </summary>
|
||
/// <returns>模型今日使用量列表,包含使用次数和总Token</returns>
|
||
Task<List<ModelTodayUsageDto>> GetTodayModelUsageAsync(UsageStatisticsGetInput input);
|
||
} |