Skip to main content

Module structured

Module structured 

Source
Expand description

Structured output module for ai-lib-rust.

Provides JSON mode, schema validation, and structured output capabilities:

  • OutputValidator: Validate JSON against schemas
  • ValidationResult: Result of validation operations
  • ValidationError: Detailed validation errors

§Examples

use ai_lib_core::structured::{OutputValidator, ValidationResult};
use serde_json::json;

let schema = json!({
    "type": "object",
    "properties": {
        "name": {"type": "string"},
        "age": {"type": "integer"}
    },
    "required": ["name"]
});

let validator = OutputValidator::lenient(schema);
let data = json!({"name": "Alice", "age": 30});
let result = validator.validate(data);

assert!(result.is_valid());

Modules§

error
Error types for structured output validation.
json_mode
JSON mode support for structured output.
schema
Schema generation utilities.
validator
Output validator for structured responses.

Structs§

JsonModeConfig
Configuration for JSON mode.
OutputValidator
Validator for structured output.
SchemaGenerator
Generator for JSON schemas with customization options.
StructuredOutput
Structured output result with validation.
ValidationError
Validation error with location information.
ValidationResult
Result of validation operation.

Enums§

JsonMode
JSON mode options for structured output.

Traits§

IntoValidatorData
Trait for types that can be converted to validator data.

Functions§

json_schema_from_type
schema_from_type_name