Files
gps-denied-onboard/configs/operator_replay.yaml
T
Oleksandr Bezdieniezhnykh ba70381346
ci/woodpecker/push/02-build-push Pipeline failed
Update NetVLAD checkpoint paths and enhance .gitignore
- Changed paths in documentation and configuration files to reflect the new naming convention for the NetVLAD model, transitioning from `models/netvlad/netvlad.pt` to `models/net_vlad/net_vlad.pt`.
- Updated the `.gitignore` to include additional file types and directories related to input data and locally-generated evidence frames.
- Removed the old NetVLAD checkpoint file as part of the transition to the new naming scheme.

These changes ensure consistency across the project and improve the management of generated files.
2026-05-31 19:27:32 +03:00

84 lines
3.2 KiB
YAML

# AZ-962 — Operator pre-flight + replay-mode config for Tier-2 Jetson e2e harness.
#
# Consumed by `tests/e2e/replay/conftest.py::_build_operator_pre_flight_cache`
# (the AZ-839 C3 fixture) which `load_config(env, paths=[this])` then drives the
# AZ-840 7-step orchestrator (`test_az835_e2e_real_flight.py`).
#
# Most fields stay at their dataclass defaults (see
# `src/gps_denied_onboard/components/{c6_tile_cache,c7_inference,c10_provisioning,c11_tile_manager}/config.py`).
# The blocks are declared here primarily so the four-component contract the
# fixture skip-gate cites is satisfied by inspection of this file. The env
# vars below are filled by docker-compose.test.jetson.yml / `.env.test`:
#
# * `GPS_DENIED_FC_PROFILE`, `GPS_DENIED_TIER`, `DB_URL` → runtime
# * `INFERENCE_BACKEND`, `TILE_CACHE_PATH`, `CAMERA_CALIBRATION_PATH` → runtime
# * `LOG_LEVEL`, `LOG_SINK` → log
# * `FDR_PATH` → fdr
# * `SATELLITE_PROVIDER_URL` → c11_tile_manager.satellite_provider_url
# * `SATELLITE_PROVIDER_API_KEY` → c11_tile_manager.service_api_key
#
# AZ-965 (2026-05-29): `c10_provisioning.backbones` declares one
# NetVLAD-VGG16 entry pointing at `models/net_vlad/net_vlad.pt`
# (568 MiB git-lfs blob; see `_docs/03_ip_attribution/netvlad.md` for
# provenance — VGG16 encoder = torchvision IMAGENET1K_V1 BSD, NetVLAD
# pool + PCA tail = deterministic-random untrained). Bind-mounted into
# the e2e-runner at `/opt/models` via docker-compose.test.jetson.yml.
# AZ-321 design: NetVLAD runs on the PyTorch FP16 runtime (NOT TRT),
# so the field literally named `onnx_path` here is actually the path
# to the `.pt` PyTorch state_dict the runtime consumes. File stem MUST
# equal `MODEL_NAME == "net_vlad"` from c2_vpr.net_vlad because the
# PyTorch runtime uses `path.stem` as the registry lookup key.
__top__:
mode: replay
runtime:
fc_profile: ardupilot_plane
tier: 2
replay:
pace: asap
target_fc_dialect: ardupilot_plane
c6_tile_cache:
store_runtime: postgres_filesystem
metadata_runtime: postgres_filesystem
descriptor_index_runtime: faiss_hnsw
postgres_pool_size: 4
lru_eviction_threshold_bytes: 10737418240 # 10 GiB
c7_inference:
runtime: pytorch_fp16
thermal_poll_hz: 1.0
engine_cache_dir: /var/lib/gps-denied/engines
gpu_memory_budget_bytes: 4294967296 # 4 GiB
trtexec_timeout_s: 600
ort_trt_cache_dir: /var/lib/gps-denied/engines/ort_trt_cache
c2_vpr:
strategy: net_vlad
backbone_weights_path: /opt/models/net_vlad/net_vlad.pt
netvlad_descriptor_dim: 4096
warn_top1_threshold: 0.30
# faiss_index_path is overlaid at runtime by
# tests/e2e/replay/_e2e_orchestrator.py::write_effective_replay_config
# to point at <cache_root>/descriptor.index (the C3 fixture's tmp).
c10_provisioning:
workspace_mb: 4096
backbones:
- model_name: net_vlad
onnx_path: /opt/models/net_vlad/net_vlad.pt
expected_input_shape: [3, 480, 480]
input_name: input
c11_tile_manager:
# satellite_provider_url + service_api_key flow in from env vars
# (SATELLITE_PROVIDER_URL / SATELLITE_PROVIDER_API_KEY) via the
# loader's ENV_KEY_MAP additions in AZ-962.
upload_batch_size: 25
upload_http_timeout_s: 30.0
download_http_timeout_s: 30.0
download_max_5xx_retries: 4
download_resolution_floor_m_per_px: 0.5