Validation Utilities¶
The validation module provides utility functions for validating tool schemas and parameters in the Bedrock Swarm framework. These functions ensure data integrity and type safety across tool operations.
Module Documentation¶
Tool validation utilities.
Functions¶
validate_tool_schema(tool_name: str, schema: Dict[str, Any]) -> None
¶
Validate tool schema.
| PARAMETER | DESCRIPTION |
|---|---|
tool_name
|
Name of the tool
TYPE:
|
schema
|
Tool schema
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
ValueError
|
If schema is invalid |
Source code in src/bedrock_swarm/tools/validation.py
validate_tool_parameters(schema: Dict[str, Any], **kwargs: Any) -> None
¶
Validate parameters against tool schema.
| PARAMETER | DESCRIPTION |
|---|---|
schema
|
Tool schema
TYPE:
|
**kwargs
|
Parameters to validate
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
ValueError
|
If parameters are invalid |
Source code in src/bedrock_swarm/tools/validation.py
Features¶
The validation utilities support:
- Tool Schema Validation:
- Validates tool name matches schema
- Ensures schema structure is correct
-
Validates required fields
-
Parameter Validation:
- JSON Schema validation
- Required parameter checks
- Type validation
- Array validation
- Custom validation rules
Usage Examples¶
from bedrock_swarm.tools.validation import validate_tool_schema, validate_tool_parameters
# Validate tool schema
schema = {
"name": "my_tool",
"parameters": {
"type": "object",
"properties": {
"input": {"type": "string"},
"count": {"type": "integer", "minimum": 0}
},
"required": ["input"]
}
}
# Validate schema name matches tool name
validate_tool_schema("my_tool", schema)
# Validate parameters against schema
params = {
"input": "test",
"count": 5
}
validate_tool_parameters(schema, **params)
Error Handling¶
The validation utilities handle:
- Schema validation errors:
- Tool name mismatches
- Invalid schema structure
-
Missing required fields
-
Parameter validation errors:
- Missing required parameters
- Invalid parameter types
- Array validation failures
- Custom validation failures
Implementation Details¶
The validation system uses:
- JSON Schema validation through
jsonschemalibrary - Detailed error messages for debugging
- Type checking and validation
- Array validation support
- Custom validation rules