Complete API reference for the Correctover SDK. Full documentation with detailed parameter descriptions is available on GitHub.
Core class for multi-provider LLM calls with verified failover.
AIProvider(
default: str, # Primary provider/model
fallbacks: List[str] = [], # Ordered fallback chain
credentials: dict = {}, # BYOK credentials per provider
contracts: List[Contract] = [], # Default contracts for all calls
circuit_breaker: dict = None, # {"threshold": N, "window_seconds": S}
failover_timeout_ms: int = 5000, # Max time for complete failover chain
)
# Methods:
# .complete(messages, contracts=[], system="") -> Response
# .stream(messages, contracts=[], system="") -> StreamResponse
# .on_failover(callback) -> None
# .metrics() -> ProviderMetrics
Factory class for creating validation contracts. See Contract Validation API for full details.
Contract.structure(name, schema) # JSON Schema validation
Contract.schema(name, field_types) # Field type validation
Contract.latency(name, max_ms) # Response time SLA
Contract.cost(name, max_cents) # Token cost budget
Contract.identity(name, expected) # Model identity verification
Contract.integrity(name, **opts) # Semantic coherence check
Returned by AIProvider.complete()
response.validated # bool: all contracts passed?
response.provider_used # str: which provider served
response.data # dict: parsed response content
response.latency_ms # float: response time
response.cost_cents # float: cost of this call
response.contract_results # dict: per-contract pass/fail
response.metrics # ProviderMetrics object
response.failover_chain # List[str]: provider chain tried
Resilience for long-running agent chains
Checkpoint.save(chain_id, step, state) # Save intermediate state
Checkpoint.load(chain_id) # Resume from last checkpoint
Checkpoint.list(chain_id) # List all saved checkpoints
Real-time drift monitoring across all 6 dimensions
DriftDetector(
dimensions=["schema", "latency", "cost", "identity", "integrity"],
alert_threshold=0.05,
)
report = drift_detector.analyze(response)
# report.drifts: list of detected drifts per dimension