Explainability (XAI)
advancedExplain retrievals, get layered explanations, surprise analysis, head weights, and routing decisions.
Explain retrieval
POST
/v1/memory/xai/explainExplain a retrieval: pathway, surprise, regime, head contributions.
queryarray[number]requiredQuery embedding.
resultarray[number]requiredResult embedding.
200Response
{
"pathway_chosen": "energy",
"pathway_scores": {
"exact": 0.23,
"energy": 0.89,
"attention": 0.45
},
"surprise": 0.34,
"regime": "normal",
"head_contributions": [
0.4,
0.35,
0.25
],
"neuromodulation": {
"signal": 0.67,
"gate": 0.82
},
"phi_b_validation": {
"geometric_surprise": 0.12,
"valid": true
}
}Layered explanation
POST
/v1/memory/xai/explain/layeredLayered XAI explanation — simple/detailed/technical. Level auto-selected based on tenant tier if not specified.
queryarray[number]requiredQuery embedding.
resultarray[number]requiredResult embedding.
levelstring | nullExplanation level: simple, detailed, or technical. Auto-selected if omitted.
langstring | nullLanguage: fr or en. Auto-detected if omitted.
200Response
{
"level": "detailed",
"explanation": "The memory was retrieved via the energy pathway because...",
"technical_details": {
"pathway_scores": {
"exact": 0.23,
"energy": 0.89
},
"surprise": 0.34
}
}XAI report
GET
/v1/memory/xai/reportGet comprehensive XAI report combining all observability data.
200Response
{
"surprise_analysis": {
"current": 0.34,
"mean": 0.28,
"trend": "stable"
},
"regime_analysis": {
"current": "normal",
"transitions": 3
},
"routing_analysis": {
"dominant_pathway": "energy",
"distribution": {
"exact": 0.2,
"energy": 0.6,
"attention": 0.2
}
},
"head_evolution": {
"weights": [
0.4,
0.35,
0.25
],
"stability": 0.92
}
}Surprise analysis
GET
/v1/memory/xai/surpriseGet surprise trajectory analysis.
windowintegerDefault: 50Number of recent operations to analyze.
200Response
{
"current": 0.34,
"mean": 0.28,
"std": 0.12,
"min": 0.05,
"max": 0.89,
"trend": "stable",
"trajectory": [
0.23,
0.28,
0.31,
0.34
]
}Head weights
GET
/v1/memory/xai/headsGet head weight evolution over time.
last_nintegerDefault: 50Number of recent snapshots.
200Response
{
"current_weights": [
0.4,
0.35,
0.25
],
"history": [
[
0.38,
0.36,
0.26
],
[
0.39,
0.35,
0.26
],
[
0.4,
0.35,
0.25
]
]
}Routing distribution
GET
/v1/memory/xai/routingGet routing decision distribution.
windowintegerDefault: 100Number of recent decisions to analyze.
200Response
{
"distribution": {
"exact": 0.2,
"energy": 0.6,
"attention": 0.2
},
"total_decisions": 100
}Next steps
- Regime — Operational regime and safety circuits
- Causal Reasoning — Causal analysis
- Neuromodulation — Neuromodulation state and history