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_rust::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());

Re-exports§

pub use error::ValidationError;
pub use error::ValidationResult;
pub use json_mode::JsonMode;
pub use json_mode::JsonModeConfig;
pub use json_mode::StructuredOutput;
pub use schema::json_schema_from_type;
pub use schema::schema_from_type_name;
pub use schema::SchemaGenerator;
pub use validator::IntoValidatorData;
pub use validator::OutputValidator;

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.