Class BaseMessageRequest
- Namespace
- AnthropicClient.Models
- Assembly
- AnthropicClient.dll
Represents a message request.
public abstract class BaseMessageRequest
- Inheritance
-
BaseMessageRequest
- Derived
- Inherited Members
Constructors
BaseMessageRequest(string, List<Message>, int, string?, Dictionary<string, object>?, decimal, int?, decimal?, ToolChoice?, List<Tool>?, bool, List<string>?, List<TextContent>?)
Initializes a new instance of the BaseMessageRequest class.
protected BaseMessageRequest(string model, List<Message> messages, int maxTokens, string? system, Dictionary<string, object>? metadata, decimal temperature, int? topK, decimal? topP, ToolChoice? toolChoice, List<Tool>? tools, bool stream, List<string>? stopSequences, List<TextContent>? systemMessages)
Parameters
modelstringThe model ID to use for the request.
messagesList<Message>The messages to send to the model.
maxTokensintThe maximum number of tokens to generate.
systemstringThe system prompt to use for the request.
metadataDictionary<string, object>The metadata to include with the request.
temperaturedecimalThe temperature to use for the request.
topKint?The top-K value to use for the request.
topPdecimal?The top-P value to use for the request.
toolChoiceToolChoiceThe tool choice mode to use for the request.
toolsList<Tool>The tools to use for the request.
streamboolA value indicating whether the message should be streamed.
stopSequencesList<string>The prompt stop sequences.
systemMessagesList<TextContent>The system messages to use for the request.
Exceptions
- ArgumentNullException
Thrown when the model or messages is null.
- ArgumentException
Thrown when the messages contain no messages.
- ArgumentException
Thrown when the max tokens is less than one.
- ArgumentException
Thrown when the temperature is less than zero or greater than one.
Properties
MaxTokens
Gets the maximum number of tokens to generate.
[JsonPropertyName("max_tokens")]
public int MaxTokens { get; init; }
Property Value
Messages
Gets the messages to send to the model.
public List<Message> Messages { get; init; }
Property Value
Metadata
Gets the metadata to include with the request.
public Dictionary<string, object>? Metadata { get; init; }
Property Value
Model
Gets the model ID to use for the request.
public string Model { get; init; }
Property Value
StopSequences
Gets the prompt stop sequences.
[JsonPropertyName("stop_sequences")]
public List<string> StopSequences { get; init; }
Property Value
Stream
Gets a value indicating whether the message should be streamed.
public bool Stream { get; init; }
Property Value
System
Gets the system message that will be used as the system prompt if no system messages are provided.
[JsonIgnore]
public string? System { get; init; }
Property Value
SystemMessages
Gets the system messages to send to the model to be used as the system prompt.
[JsonIgnore]
public List<TextContent>? SystemMessages { get; init; }
Property Value
SystemPrompt
Gets the system prompt that will be used for the request. If will return the system messages if they are provided, otherwise it will return the system message. If neither are provided, it will return null.
[JsonPropertyName("system")]
public List<TextContent>? SystemPrompt { get; }
Property Value
Temperature
Gets the temperature to use for the request.
public decimal Temperature { get; init; }
Property Value
ToolChoice
Gets the tool choice mode to use for the request.
[JsonPropertyName("tool_choice")]
public ToolChoice? ToolChoice { get; init; }
Property Value
Tools
Gets the tools to use for the request.
public List<Tool>? Tools { get; init; }
Property Value
TopK
Gets the top-K value to use for the request.
public int? TopK { get; init; }
Property Value
- int?
TopP
Gets the top-P value to use for the request.
public decimal? TopP { get; init; }