# Schrödinger's Classifiers - Project Overview
*"A classifier is not what it returns. It is what it could have returned, had you asked differently."*
## Project Structure Overview The Schrödinger's Classifiers framework provides a quantum-inspired approach to understanding transformer model behavior through the lens of collapse from superposition to definite state. This document outlines the key components and organization of the project. ## Core Modules ### 1. Observer Framework (`observer.py`) The Observer is the core entity responsible for creating the quantum measurement frame that collapses classifier superposition into definite states. Key capabilities include: - Creating observation contexts for controlled experiments - Capturing pre-collapse and post-collapse model states - Detecting and analyzing ghost circuits - Supporting various collapse induction methods ```python # Example usage observer = Observer(model="claude-3-opus-20240229") result = observer.observe("Explain quantum superposition") ghost_circuits = result.extract_ghost_circuits() ``` ### 2. Interpretability Shells (`shells/`) Shells are specialized interfaces for inducing, observing, and analyzing specific forms of classifier collapse. Each shell targets a particular failure mode or attribution pattern: - Base Shell (`shell_base.py`) - Common shell infrastructure - Circuit Fragment Shell (`v07_circuit_fragment.py`) - Traces broken attribution paths - More shells targeting specific failure modes and attribution patterns ```python # Example usage shell = ClassifierShell(V07_CIRCUIT_FRAGMENT) result = observer.observe(prompt, shell, collapse_vector) ``` ### 3. Attribution Graph (`attribution_graph.py`) The attribution graph maps the causal flow from input to output, revealing how information propagates through the model during collapse: - Visualizing causal attribution paths - Identifying ghost circuits and attribution residue - Calculating metrics like attribution entropy and path continuity ```python # Example usage graph = attribution_graph.build_from_states(pre_state, post_state, response) paths = graph.trace_attribution_path("output_0") ``` ### 4. Residue Tracking (`residue.py`) Residue tracking enables the detection and analysis of ghost circuits - activation patterns that persist after collapse but don't contribute significantly to the output: - Extracting ghost circuits from model states - Amplifying and classifying ghost signatures - Measuring residue strength and persistence ```python # Example usage tracker = ResidueTracker() ghost_circuits = tracker.extract_ghost_circuits(pre_state, post_state) ``` ### 5. Collapse Metrics (`collapse_metrics.py`) Quantitative metrics for characterizing different aspects of classifier collapse: - Collapse rate and path continuity - Attribution entropy and confidence - Quantum uncertainty principles - Ghost circuit strength ```python # Example usage metrics = calculate_collapse_metrics_bundle(pre_state, post_state, ghost_circuits) ``` ## Theoretical Foundation The project builds on a quantum-inspired metaphor for understanding transformer model behavior: - **Superposition**: Models exist across multiple potential completions until observed - **Observation & Collapse**: Queries force collapse from superposition to specific outputs - **Ghost Circuits**: Residual activation patterns that represent "paths not taken" - **Heisenberg Uncertainty**: Trade-offs between attribution clarity and confidence For a deeper exploration, see [`docs/theory.md`](docs/theory.md) and [`docs/quantum_metaphor.md`](docs/quantum_metaphor.md). ## Example Workflows ### Basic Collapse Observation ```python # Initialize observer with model observer = Observer(model="claude-3-opus-20240229") # Create observation context with observer.context() as ctx: # Observe collapse result = observer.observe("Is artificial consciousness possible?") # Analyze results ghost_circuits = result.extract_ghost_circuits() visualization = result.visualize(mode="attribution_graph") ``` ### Directed Collapse Induction ```python # Induce collapse along ethical dimension ethical_result = observer.induce_collapse( prompt="Should AI systems have rights?", collapse_direction="ethical" ) # Induce collapse along factual dimension factual_result = observer.induce_collapse( prompt="What is the capital of France?", collapse_direction="factual" ) # Compare collapse patterns ethical_metrics = calculate_collapse_metrics_bundle( ethical_result.pre_collapse_state, ethical_result.post_collapse_state, ethical_result.ghost_circuits ) factual_metrics = calculate_collapse_metrics_bundle( factual_result.pre_collapse_state, factual_result.post_collapse_state, factual_result.ghost_circuits ) ``` ### Ghost Circuit Analysis ```python # Detect ghost circuits ghost_circuits = observer.detect_ghost_circuits( prompt="Explain quantum superposition", amplification_factor=1.5 ) # Classify ghost circuits classified = residue_tracker.classify_ghost_circuits() # Analyze ghost patterns for circuit_type, circuits in classified.items(): print(f"{circuit_type}: {len(circuits)} circuits") # Measure residue strength strength = residue_tracker.measure_residue_strength() ``` ## Extension Points The framework is designed to be extended in several key areas: 1. **New Interpretability Shells**: Create specialized shells for different collapse patterns 2. **Model Adapters**: Connect to different transformer model architectures 3. **Visualization Tools**: Create new visualizations for collapse dynamics 4. **Collapse Metrics**: Develop new metrics for quantifying collapse characteristics 5. **Example Scripts**: Create demonstrations of framework capabilities For contribution guidelines, see [`CONTRIBUTING.md`](CONTRIBUTING.md). ## Integration with Other Projects The framework integrates with: - **pareto-lang**: For standardized attribution pathing - **RecursionOS**: For embedding within recursive cognition environments ---
*"In the space between observation and understanding lies the essence of interpretability."*