How cdzchen/gnss-llm works
This repository is a modular GNSS spoofing and jamming monitor. Its principal workflow ingests GNSS feature data, builds multi-source features and a context state, lets an agent choose and invoke detectors, fuses their results, and manages event-level alerts; an optional LLM summarizes structured event logs for operators. Training, evaluation, and model deployment are meaningful supporting capabilities. The README documents the overall flow; sampled code confirms details of parsing, context encoding, policy selection, fusion, event management, and temporal detection, but not every runtime connection.
Main entry points: executor.py Agent executor · parser.py Data parser · event_manager.py Event manager · tool_registry.py Tool registry
Components 22
Data and features
- Data parser
src/data/parser.py - Data quality
src/data/quality.py - Feature extraction
src/features
Context and orchestration
- Context encoder
src/context/context_encoder.py - Agent executor
src/agent/executor.py - Policy and planner
src/agent/policy.py - Tool registry
src/agent/tool_registry.py
Detection and fusion
- Detector library
src/detectors - Deep temporal detector
src/detectors/deep_temporal.py - Result fusion
src/fusion/result_fusion.py
Events and reporting
- Event manager
src/event/event_manager.py - Event records
src/event/event_record.py - Event logger
src/event/event_logger.py - LLM summaries
src/llm/summarizer.py - Reports
src/llm/report.py
Model lifecycle
- Model training
src/train - Windowed datasets
src/train/dataset.py - Evaluation
src/eval - Model deployment
src/deploy
Other components
- GNSS data
- Monitoring operator
- LLM service
Connections 23
- GNSS data → Data parser: provides data
- Data parser → Data quality: checks quality
- Data parser → Feature extraction: supplies records
- Feature extraction → Context encoder: provides features
- Context encoder → Agent executor: provides context
- Agent executor → Policy and planner: requests plan
- Agent executor → Tool registry: dispatches tools
- Tool registry → Detector library: invokes detectors
- Tool registry → Deep temporal detector: invokes temporal model
- Agent executor → Result fusion: fuses results
- Agent executor → Event manager: updates events
- Event manager → Event records: updates record
- Event manager → Event logger: logs events
- Event logger → LLM summaries: supplies event logs
- LLM summaries → LLM service: requests summary
- LLM summaries → Reports: creates report
- Reports → Monitoring operator: presents summary
- Event manager → Monitoring operator: raises alerts
- Data parser → Windowed datasets: supplies records
- Windowed datasets → Model training: builds windows
- Model training → Deep temporal detector: trains model
- Deep temporal detector → Model deployment: exports model
- Model training → Evaluation: evaluates experiments