UNIVPLMDataIntegration/Admin.NET/Admin.NET.Core/Ai/Models/LLMOutput.cs

51 lines
1.2 KiB
C#
Raw Normal View History

using Newtonsoft.Json;
namespace Admin.NET.Core.Ai.Models;
/// <summary>
/// LLM输出
/// </summary>
public class LLMOutput {
public string Id { get; set; }
public string Provider { get; set; }
public string Model { get; set; }
public string Object { get; set; }
public long Created { get; set; }
public List<ChoicesItem> Choices { get; set; }
public Usage Usage { get; set; }
}
/// <summary>
/// LLM输出机会
/// </summary>
public class ChoicesItem {
[JsonProperty("logprobs")]
public string? Logprobs { get; set; }
public string? FinishReason { get; set; }
public string? NativeFinishReason { get; set; }
public int Index { get; set; }
public OutPutMessage Message { get; set; }
}
/// <summary>
/// LLM输出消息
/// </summary>
public class OutPutMessage {
public string Role { get; set; }
public string Content { get; set; }
public Object Refusal { get; set; }
[JsonProperty("reasoning")]
public string? Reasoning { get; set; }
}
/// <summary>
/// LLM的消耗
/// </summary>
public class Usage {
public int PromptTokens { get; set; }
public int CompletionTokens { get; set; }
public int TotalTokens { get; set; }
}