Project Phoenix Domain

AI_WQ Architecture

Four-Phase Agentic Framework

Phase Status

Phase Status Components
Phase 0: Foundation Complete CLI, DataClient, ToolRegistry, ExecutionContext
Phase 1: Glass Box Complete PlanBuilder, AgenticEngine, BlueprintPanel, ExecutionTrace
Phase 2: Human-in-Loop Complete Pause/Resume/Cancel controls, InspectorPanel
Phase 3: Progressive Disclosure Complete Expandable blueprint details, tabbed inspector
Phase 4: Multi-Modal Output Complete ArtifactWorkspace, charts, PNG/CSV/JSON export

Architecture Layers

+------------------------------------------------------------------+ | AI_WQ Unified Interface | | +---------------+ +---------------+ +---------------+ | | | Project | | Model | | Notebook | | | | Explorer | | Discovery | | Browser | | | +---------------+ +---------------+ +---------------+ | +------------------------------------------------------------------+ | v +------------------------------------------------------------------+ | ToolRegistry (~18 tools) | | +--------------------------------------------------------------+ | | | PROJECT TOOLS (2 per project) | | | | - load_proj{1-6}_info | | | | - list_proj{N}_notebooks/models/modules | | | +--------------------------------------------------------------+ | | | CROSS-PROJECT TOOLS | | | | - compare_projects, find_similar_projects | | | | - list_all_models, suggest_technique | | | +--------------------------------------------------------------+ | | | UTILITY TOOLS | | | | - show_capabilities, get_project_info | | | +--------------------------------------------------------------+ | +------------------------------------------------------------------+ | v +------------------------------------------------------------------+ | ExecutionContext (3-Tier Cache) | | step_results: Dict[int, Any] # Per-execution step outputs | | model_cache: Dict[str, Any] # Loaded models | | data_cache: Dict[str, Any] # Project data caching | +------------------------------------------------------------------+ | v +------------------------------------------------------------------+ | AIDataClient | | Source: ~/Python/WQ_AI/AI/ | | - Proj1: Camera trap images, CNN models | | - Proj2: Cassava dataset, pretrained/fine-tuned models | | - Proj3: YOLO datasets, augmentation pipelines | | - Proj4: Face datasets, MTCNN/FaceNet models | | - Proj5: GAN training data, generator/discriminator | | - Proj6: Diffusion prompts, pipeline configs | +------------------------------------------------------------------+

Agentic Engine State Machine

+--------+ | IDLE | +--------+ | v +-----------+ | PLANNING | <-- parse_query() +-----------+ | v +---------------------+ | AWAITING_APPROVAL | <-- approve_plan() +---------------------+ | v +---------+ | RUNNING | -----> COMPLETED +---------+ | ^ v | +--------+ | PAUSED | <-- pause() / resume() +--------+ | v +-----------+ | CANCELLED | +-----------+

File Structure

domains/AI_WQ/ +-- cli/ | +-- main.py # Phase 0: CLI interface (cmd.Cmd) +-- cockpit/ | +-- ai_wq_cockpit.py # Phase 1-4: tkinter GUI | +-- ui_components/ | +-- blueprint_panel.py # Plan preview | +-- execution_trace.py # Real-time log | +-- inspector_panel.py # Detail drill-down | +-- artifact_workspace.py # Multi-modal output +-- unified_agent/ | +-- data_client.py # AIDataClient | +-- tool_registry.py # ~18 tools | +-- execution_context.py # 3-tier caching | +-- plan_builder.py # Query -> Plan | +-- agentic_engine.py # State machine +-- variations/ | +-- variation_1/ # 6 tools (Proj 1-2) | +-- variation_2/ # 10 tools (+ Proj 3-4) | +-- variation_3/ # 18 tools (+ Proj 5-6, cross-project) +-- Proj1-6/ # Symlinks to source data +-- DOMAIN_README.md

Plan Builder Pattern Priority

The plan builder uses regex pattern matching with the following priority:

  1. Cross-project patterns - "compare", "similar", "suggest"
  2. Project-specific patterns - "project 1", "yolo", "gan", "diffusion"
  3. Exploration patterns - "list models", "list projects", "info N"
  4. Fallback - "explore", "overview"

More specific patterns must be matched first to ensure correct plan generation.

Example Query Flows

Flow 1: Project Exploration

User: "What's available in the face recognition project?" -> load_proj4_info -> list_proj4_modules -> Result: MTCNN, InceptionResNet notebooks + Python modules

Flow 2: Cross-Project Analysis

User: "Compare CNNs vs YOLOv8 for object detection" -> compare_projects(proj1, proj3) -> suggest_technique("detection") -> Result: Technique comparison with recommendations

Flow 3: Model Discovery

User: "What pre-trained models are available?" -> list_all_models -> Result: Models by project with paths

Flow 4: Technique Recommendation

User: "Best approach for image generation?" -> suggest_technique("generation") -> Result: GAN (Proj5) or Diffusion (Proj6) recommendations

Key Design Decisions

Lightweight Implementation

Focus on exploration and metadata; heavy ML ops use source notebooks directly

Source Reference

Data lives at ~/Python/WQ_AI/AI/, accessed via symlinks for separation

Tool Composition

Cross-project tools compose project-specific tools for complex queries

Educational Focus

Tools designed for learning and exploration, not production inference