šŸ•WAVEGO WHISPER-BOT DOCS
Back to Home

Architecture & Files

The workspace is divided into two primary projects: a Python web server managing hardware components and model inference on the Raspberry Pi target, and a Flutter mobile terminal providing responsive cyberpunk control interfaces.

Backend File Structure

/home/rpi/WaveGo/whisper-bot/
ā”œā”€ā”€ webServer.py              # Main Flask router hosting REST APIs & thread managers
ā”œā”€ā”€ requirements.txt          # Python dependency specifications
ā”œā”€ā”€ MiniLM/                   # Semantic Intent Classifier
│   ā”œā”€ā”€ all-MiniLM.onnx       # Sentence-transformer ONNX model (384 dimensions)
│   ā”œā”€ā”€ intents.yaml          # Intent dictionary containing natural language training phrases
│   └── knowledge_inference.py# Inference helper generating semantic embedding vectors
ā”œā”€ā”€ knowledge/                # Retrieval-Augmented Generation (RAG)
│   ā”œā”€ā”€ knowledge.pdf         # Base PDF user manuals & specs
│   ā”œā”€ā”€ vector_db_gen.py      # PDF text extractor, sliding chunker, & vector compiler
│   ā”œā”€ā”€ knowledge_db.pkl      # Compiled vector database holding text chunks & embeddings
│   ā”œā”€ā”€ gemma3.onnx           # Gemma 3 Causal Language Model ONNX graph
│   └── inference.py          # Greedy decoding generation loop using KV-Caching
ā”œā”€ā”€ lenet5/                   # Handwriting Digit Recognition
│   ā”œā”€ā”€ mnist-12.onnx         # CNN model for handwritten digit classification
│   └── detect.py             # Inference runner returning predictions, weights, & activation maps
└── core/                     # Hardware control utilities (robot serial commands & servos)

Mobile App File Structure

whisper_bot_control/
ā”œā”€ā”€ pubspec.yaml              # App configuration, dependency tags, & assets
└── lib/
    ā”œā”€ā”€ main.dart             # App initialization, dark theme definitions, & route loader
    ā”œā”€ā”€ services/
    │   └── bot_api_client.dart # Unified HTTP network client wrapper for robot endpoints
    └── screens/
        ā”œā”€ā”€ ip_connection_screen.dart # IP validator, connection test, & storage persistence
        ā”œā”€ā”€ dashboard_screen.dart     # Primary multi-tabbed interface (Controls, Vision, Assistant)
        └── character_recognition_screen.dart # Interactive drawing canvas & LeNet visualizer