mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-11-11 18:27:23 +00:00
Generated the JSON contracts of providers, the runtime, and services at compile time (#1150)
This commit is contained in:
1 parent
e954881fda
commit
24e3c22db3
140 files changed
+1415
-292
No files matched your search
@@ -10,7 +10,11 @@ namespace AIStudio.Provider.Anthropic;
|
||||
/// <param name="MaxTokens">The maximum number of tokens to generate.</param>
|
||||
/// <param name="Stream">Whether to stream the chat completion.</param>
|
||||
/// <param name="System">The system prompt for the chat completion.</param>
|
||||
public readonly record struct ChatRequest(
|
||||
/// <remarks>
|
||||
/// Not readonly, so that its properties can be settable: the source generation of System.Text.Json refuses to
|
||||
/// write extension data which is init-only.
|
||||
/// </remarks>
|
||||
public record struct ChatRequest(
|
||||
string Model,
|
||||
IList<IMessageBase> Messages,
|
||||
int MaxTokens,
|
||||
@@ -26,9 +30,12 @@ public readonly record struct ChatRequest(
|
||||
/// tools at all, and the final round of a tool conversation has to offer none.
|
||||
/// </remarks>
|
||||
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
|
||||
public IList<AnthropicTool>? Tools { get; init; }
|
||||
public IList<AnthropicTool>? Tools { get; set; }
|
||||
|
||||
// Attention: The "required" modifier is not supported for [JsonExtensionData].
|
||||
//
|
||||
// Attention: The "required" modifier is not supported for [JsonExtensionData], and neither is init: the source
|
||||
// generation of System.Text.Json refuses to write the request at all then.
|
||||
//
|
||||
[JsonExtensionData]
|
||||
public IDictionary<string, object> AdditionalApiParameters { get; init; } = new Dictionary<string, object>();
|
||||
public IDictionary<string, object> AdditionalApiParameters { get; set; } = new Dictionary<string, object>();
|
||||
}
|
||||
Reference in new issue
Block a user