trustformers_debug/interpretability/
report.rs1use chrono::{DateTime, Utc};
6use serde::{Deserialize, Serialize};
7use std::collections::HashMap;
8
9use super::attention::AttentionAnalysisResult;
10use super::attribution::FeatureAttributionResult;
11use super::config::InterpretabilityConfig;
12use super::counterfactual::CounterfactualResult;
13use super::lime::LimeAnalysisResult;
14use super::shap::ShapAnalysisResult;
15
16#[derive(Debug, Clone, Serialize, Deserialize)]
18pub struct InterpretabilityReport {
19 pub timestamp: DateTime<Utc>,
20 pub config: InterpretabilityConfig,
21 pub shap_analyses_count: usize,
22 pub lime_analyses_count: usize,
23 pub attention_analyses_count: usize,
24 pub attribution_analyses_count: usize,
25 pub counterfactual_analyses_count: usize,
26 pub recent_shap_results: Vec<ShapAnalysisResult>,
27 pub recent_lime_results: Vec<LimeAnalysisResult>,
28 pub recent_attention_results: Vec<AttentionAnalysisResult>,
29 pub recent_attribution_results: Vec<FeatureAttributionResult>,
30 pub recent_counterfactual_results: Vec<CounterfactualResult>,
31 pub interpretability_summary: HashMap<String, String>,
32}