namespace AIStudio.Assistants.ModelComparison;
///
/// How fast a model answered across all stored comparisons.
///
///
/// Medians rather than means: a single answer which waited a minute for a busy server would otherwise shift the whole
/// picture. The times depend on the length of the answers and the load of the server as much as on the model, so they
/// compare models only when both ran on the same tasks.
///
public sealed record ModelComparisonModelSpeed
{
///
/// The model, with the name it had in its latest comparison.
///
public required ModelComparisonModelIdentity Model { get; init; }
///
/// How many complete answers the times come from.
///
public int AnswerCount { get; init; }
///
/// The median time until the first piece of an answer arrived, or null without any.
///
public TimeSpan? MedianFirstTokenTime { get; init; }
///
/// The median time until an answer was complete, or null without any.
///
public TimeSpan? MedianTotalTime { get; init; }
}