How palak-poddar12/satquery works
SatQuery AI is presented as a natural-language remote-sensing assistant: users submit imagery and a question, an agent selects an analysis task, and the system returns an explanation with confidence and execution details. The tree also contains a separate secure FastAPI service and multilingual/voice wrappers. The sampled backend query endpoint still returns a placeholder and does not call the ML pipeline; README-described RS-LLaVA training/API modules are absent from the tree, so they are not mapped. Some ML task implementations are only partially sampled, so uncertain dispatch links are omitted.
Main entry points: main.py FastAPI Service · pipeline.py Task Routing · change_detection.py Change Wrapper · voice_assistant.py Voice I/O
Components 21
Secure API
- FastAPI Service
backend/app/main.py - API Key And Limits
backend/app/security.py - Upload Validation
backend/app/uploads.py - Event Logging
backend/app/logging_config.py - Upload Settings
backend/app/config.py
Analysis Agent
- Task Routing
ml/pipeline.py - Image Preparation
ml/pipeline.py
Image Analysis
- Visual Q&A
ml/pipeline.py - Captioning
ml/pipeline.py - Visual Grounding
ml/pipeline.py - Change Detection
ml/pipeline.py - Optical SAR Fusion
ml/pipeline.py - Model Registry
ml/pipeline.py - CLIP Inference
models/base_inference.py - Caption Wrapper
models/captioning.py - Change Wrapper
models/change_detection.py - Grounding Stub
models/grounding.py
Language And Voice
- Language Translation
ml/multilingual.py - Voice I/O
ml/voice_assistant.py
Other components
- Analyst
- Speech Services
Connections 16
- Analyst → FastAPI Service: submits query or image
- FastAPI Service → API Key And Limits: verifies and limits
- FastAPI Service → Upload Validation: saves uploaded image
- Upload Validation → Upload Settings: reads limits and paths
- FastAPI Service → Event Logging: logs events
- FastAPI Service → Analyst: returns placeholder query result
- Task Routing → Image Preparation: prepares inputs
- Task Routing → Captioning: runs low-confidence fallback
- Visual Q&A → Model Registry: loads inference model
- Captioning → Model Registry: loads caption model
- Caption Wrapper → CLIP Inference: calls inference
- Change Wrapper → Caption Wrapper: captions both images
- Change Wrapper → CLIP Inference: asks combined question
- Language Translation → Visual Q&A: runs translated question
- Voice I/O → Language Translation: sends transcription
- Voice I/O → Speech Services: transcribes or synthesizes