Spaces:
Sleeping
Sleeping
A newer version of the Gradio SDK is available:
6.4.0
Model Contract Documentation
Overview
The FraudSimulator-AI system implements a strict model contract to ensure consistency, reliability, and auditability across all fraud detection decisions.
Model Identity
Model Name: fraud-risk-agent
Version: 1.0.0
Type: Decision Intelligence Agent
Domain: Insurance Fraud Detection
Decision Output: investigate | allow
Input Contract
Required Fields
{
"claim_id": "string (required)",
"amount": "float (required)",
"type": "string (required)",
"claimant_id": "string (required)",
"days_since_policy_start": "integer (required)"
}
Optional Fields
{
"average_claim_amount": "float (default: 5000)",
"claimant_history": {
"claim_count": "integer (default: 0)",
"avg_amount": "float (default: 5000)",
"total_paid": "float (default: 0)"
},
"document_consistency_score": "float 0.0-1.0 (default: 1.0)",
"linked_suspicious_entities": "integer (default: 0)"
}
Input Validation Rules
amountmust be > 0days_since_policy_startmust be ≥ 0document_consistency_scoremust be between 0.0 and 1.0linked_suspicious_entitiesmust be ≥ 0claim_idmust be uniquetypemust be one of: ["auto", "property", "health", "life", "other"]
Output Contract (STRICT)
Mandatory Fields
The model MUST return exactly these fields:
{
"fraud_score": "float (0.0-1.0, 3 decimal places)",
"risk_band": "string (low | medium | high)",
"top_indicators": "array of strings",
"recommended_action": "string (investigate | allow)",
"confidence": "float (0.0-1.0, 3 decimal places)",
"explainability": {
"signals": "array of objects",
"weights": "object (indicator -> weight mapping)"
}
}
Field Specifications
fraud_score
- Type: Float
- Range: 0.0 to 1.0
- Precision: 3 decimal places
- Description: Overall fraud risk score
risk_band
- Type: String (enum)
- Values: "low" | "medium" | "high"
- Mapping:
- "high": fraud_score ≥ 0.7
- "medium": 0.4 ≤ fraud_score < 0.7
- "low": fraud_score < 0.4
top_indicators
- Type: Array of strings
- Max Length: 5
- Description: Top fraud indicators ranked by contribution
- Possible Values:
- "amount_deviation"
- "high_frequency"
- "early_claim"
- "document_mismatch"
- "entity_linkage"
recommended_action
- Type: String (enum)
- Values: "investigate" | "allow"
- Logic:
- "investigate" if fraud_score ≥ 0.65
- "allow" if fraud_score < 0.65
confidence
- Type: Float
- Range: 0.0 to 1.0
- Precision: 3 decimal places
- Description: Confidence in the decision
explainability
- Type: Object
- Required Fields:
signals: Array of signal objectsweights: Object mapping indicators to weights
Signal Object Structure:
{
"indicator": "string (indicator name)",
"value": "float (0.0-1.0, 3 decimal places)",
"description": "string (human-readable explanation)"
}
Weights Object Structure:
{
"amount_deviation": 0.25,
"high_frequency": 0.20,
"early_claim": 0.15,
"document_mismatch": 0.25,
"entity_linkage": 0.15
}
Output Example
{
"fraud_score": 0.742,
"risk_band": "high",
"top_indicators": [
"early_claim",
"amount_deviation",
"entity_linkage",
"document_mismatch"
],
"recommended_action": "investigate",
"confidence": 0.856,
"explainability": {
"signals": [
{
"indicator": "early_claim",
"value": 1.000,
"description": "Claim filed shortly after policy inception"
},
{
"indicator": "amount_deviation",
"value": 0.667,
"description": "Claim amount significantly differs from average"
}
],
"weights": {
"amount_deviation": 0.25,
"high_frequency": 0.20,
"early_claim": 0.15,
"document_mismatch": 0.25,
"entity_linkage": 0.15
}
}
}
Model Behavior Guarantees
Determinism
- Same input MUST produce same output (given same model version)
- No randomness in decision logic
- Reproducible for audit purposes
Performance
- Latency: < 100ms per prediction (p95)
- Throughput: > 1000 predictions/second
- Availability: 99.9% uptime
Accuracy
- Precision: ≥ 75% (validated on test set)
- Recall: ≥ 80% (validated on test set)
- F1 Score: ≥ 0.77
Explainability
- 100% of decisions include explainability payload
- All signals have human-readable descriptions
- Weights sum to 1.0
Error Handling
Input Validation Errors
{
"error": "INVALID_INPUT",
"message": "Detailed error description",
"field": "Field name that failed validation",
"value": "Invalid value provided"
}
Model Errors
{
"error": "MODEL_ERROR",
"message": "Internal model error",
"model_version": "1.0.0",
"timestamp": "ISO 8601 timestamp"
}
Versioning
Version Format
MAJOR.MINOR.PATCH
- MAJOR: Breaking changes to input/output contract
- MINOR: New features, backward compatible
- PATCH: Bug fixes, no contract changes
Version History
1.0.0 (2026-01-01)
- Initial release
- Core fraud detection logic
- Five fraud indicators
- Binary decision output (investigate | allow)
Deprecation Policy
- Major versions supported for 12 months after new major release
- Minor versions supported for 6 months after new minor release
- Deprecation warnings provided 3 months in advance
Testing & Validation
Unit Tests
- Input validation
- Indicator calculation
- Score calculation
- Decision logic
- Explainability generation
Integration Tests
- End-to-end prediction flow
- Error handling
- Performance benchmarks
Validation Dataset
- 10,000 labeled claims
- Balanced fraud/legitimate split
- Diverse claim types and amounts
- Regular updates with new fraud patterns
Compliance
This model contract complies with:
- BDR-Agent-Factory: Registered in capability registry
- IFRS 17: Actuarial soundness
- AML Standards: Fraud pattern detection
- Explainability Requirements: Full XAI support
- Audit Standards: Complete traceability
Support
For model contract questions:
- Documentation: See DECISION_LOGIC.md and GOVERNANCE.md
- Technical Support: data-science@bdr-ai.com
- Contract Changes: Submit RFC to architecture team