mistral_common.protocol.instruct.validator
MistralRequestValidator(mode=ValidationMode.test)
Bases: Generic[UserMessageType, AssistantMessageType, ToolMessageType, SystemMessageType]
Validator for Mistral requests.
This class validates the structure and content of Mistral requests.
Examples:
>>> from mistral_common.protocol.instruct.messages import UserMessage, AssistantMessage
>>> validator = MistralRequestValidator()
>>> messages = [UserMessage(content="Hello how are you ?")]
>>> validator.validate_messages(messages)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mode
|
ValidationMode
|
The validation mode. Defaults to ValidationMode.test. |
test
|
Source code in src/mistral_common/protocol/instruct/validator.py
validate_messages(messages)
Validates the list of messages.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
messages
|
List[UATS]
|
The list of messages to validate. |
required |
Examples:
>>> from mistral_common.protocol.instruct.messages import UserMessage, AssistantMessage
>>> validator = MistralRequestValidator()
>>> messages = [AssistantMessage(content="Hi"), UserMessage(content="Hello")]
>>> validator.validate_messages(messages)
Source code in src/mistral_common/protocol/instruct/validator.py
validate_request(request)
Validates the request
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request
|
ChatCompletionRequest
|
The request to validate. |
required |
Returns:
Type | Description |
---|---|
ChatCompletionRequest[UATS]
|
The validated request. |
Examples:
>>> from mistral_common.protocol.instruct.messages import UserMessage
>>> validator = MistralRequestValidator()
>>> request = ChatCompletionRequest(messages=[UserMessage(content="Hello")])
>>> validated_request = validator.validate_request(request)
Source code in src/mistral_common/protocol/instruct/validator.py
MistralRequestValidatorV3(mode=ValidationMode.test)
Bases: MistralRequestValidator
Validator for v3 Mistral requests.
This validator adds additional validation for tool call IDs.
Examples:
Source code in src/mistral_common/protocol/instruct/validator.py
MistralRequestValidatorV5(mode=ValidationMode.test)
Bases: MistralRequestValidatorV3
Validator for v5 Mistral requests.
This validator allows for both tool calls and content in the assistant message.
Examples:
Source code in src/mistral_common/protocol/instruct/validator.py
ValidationMode
Bases: Enum
Enum for the validation mode.
Attributes:
Name | Type | Description |
---|---|---|
serving |
The serving mode. |
|
finetuning |
The finetuning mode. |
|
test |
The test mode. |
Examples: