AI-Studio/app/MindWork AI Studio/Provider/OpenAI/ChatCompletionResponseMessage.cs

26 lines
745 B
C#
Raw Normal View History

using System.Text.Json;
using System.Text.Json.Serialization;
namespace AIStudio.Provider.OpenAI;
public sealed record ChatCompletionResponseMessage
{
public string Role { get; init; } = string.Empty;
[JsonPropertyName("content")]
public JsonElement? RawContent { get; init; }
[JsonIgnore]
public string? Content => ChatCompletionContent.GetText(this.RawContent);
public string? ReasoningContent { get; init; }
2026-09-10 13:37:43 +00:00
public string? Reasoning { get; init; }
public IList<JsonElement>? ReasoningDetails { get; init; }
public IList<ChatCompletionToolCall?>? ToolCalls { get; init; }
2026-09-10 13:37:43 +00:00
public string GetThinkingOutput() => ThinkingContent.Get(this.ReasoningContent, this.Reasoning, this.ReasoningDetails);
}