Skip to main content

trustformers_debug/interpretability/
report.rs

1//! Interpretability reporting functionality
2//!
3//! This module provides comprehensive reporting capabilities for interpretability analyses.
4
5use 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/// Comprehensive interpretability report
17#[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}