version 2

This commit is contained in:
2025-12-16 16:52:40 +03:30
parent 61e86b1e96
commit 139924db94
52 changed files with 7350 additions and 321 deletions

View File

@@ -0,0 +1,78 @@
namespace GreenHome.Domain;
/// <summary>
/// AI Query record - stores questions, answers and token usage
/// </summary>
public class AIQuery
{
/// <summary>
/// Unique identifier
/// </summary>
public int Id { get; set; }
/// <summary>
/// Device ID associated with the query (optional)
/// </summary>
public int? DeviceId { get; set; }
/// <summary>
/// Navigation property to Device
/// </summary>
public Device? Device { get; set; }
/// <summary>
/// User's question
/// </summary>
public required string Question { get; set; }
/// <summary>
/// AI's answer
/// </summary>
public required string Answer { get; set; }
/// <summary>
/// Number of prompt tokens used
/// </summary>
public int PromptTokens { get; set; }
/// <summary>
/// Number of completion tokens used
/// </summary>
public int CompletionTokens { get; set; }
/// <summary>
/// Total tokens used (prompt + completion)
/// </summary>
public int TotalTokens { get; set; }
/// <summary>
/// Model used for the query
/// </summary>
public string? Model { get; set; }
/// <summary>
/// Temperature parameter used
/// </summary>
public double? Temperature { get; set; }
/// <summary>
/// When the query was created
/// </summary>
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
/// <summary>
/// Response time in milliseconds
/// </summary>
public long? ResponseTimeMs { get; set; }
/// <summary>
/// User ID (if authenticated)
/// </summary>
public int? UserId { get; set; }
/// <summary>
/// Navigation property to User
/// </summary>
public User? User { get; set; }
}