Disable YOLO training plot side effects
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
|
||||
- Added `scripts/export_operator_yolo_dataset.py` to convert prepared operator orthophoto/GRB sample pairs into a standard local YOLO detection dataset with `dataset.yaml`, train/validation image folders, label folders and `yolo_dataset_summary.json`.
|
||||
- Added `scripts/train_operator_yolo_detector.sh` as an operator-only training smoke wrapper that uses an existing local base `.pt` model and writes a trained local `.pt` artifact plus `training_summary.json`.
|
||||
- Disabled Ultralytics plot generation in the training wrapper so the smoke path avoids auxiliary plot/font network behavior.
|
||||
- Added readiness coverage for the exporter Python compile check and training wrapper shell syntax.
|
||||
- Added regression coverage in `backend/tests/test_sprint129_operator_yolo_training_dataset.py`.
|
||||
- Updated operator documentation for dataset export, training smoke usage and the requirement to benchmark any trained model through the existing real-data Detection + QA matrix before treating it as useful.
|
||||
|
||||
@@ -63,6 +63,7 @@ def test_operator_yolo_train_smoke_script_contract() -> None:
|
||||
assert "dataset.yaml" in script
|
||||
assert "from ultralytics import YOLO" in script
|
||||
assert "model.train" in script
|
||||
assert "plots=False" in script
|
||||
assert "training_summary.json" in script
|
||||
assert "download" not in script.lower()
|
||||
assert "fixture_mode" not in script
|
||||
|
||||
@@ -21,6 +21,9 @@ Tested:
|
||||
- `python scripts\export_operator_yolo_dataset.py --help` passed without requiring local GIS dependencies.
|
||||
- `python -m py_compile scripts\export_operator_yolo_dataset.py` passed.
|
||||
- `bash -n scripts/train_operator_yolo_detector.sh` passed.
|
||||
- Live Tower export passed: `/app/storage/operator-data/yolo-building-dataset` contains 3 images and 1427 labels from the current Geel/Mol/Turnhout samples.
|
||||
- Live Tower training smoke passed with the existing `/app/models/yolov8n.pt` base model and wrote `/app/models/geointel-building-yolov8n-smoke.pt`.
|
||||
- The first live smoke showed Ultralytics fetching an auxiliary plot font. The wrapper now sets `plots=False` so the operator smoke path does not invoke plot/font network behavior.
|
||||
|
||||
Open:
|
||||
- Run the exporter and training smoke inside the AI-enabled Tower runtime, then benchmark the trained artifact through the existing multi-sample Detection + QA matrix.
|
||||
|
||||
@@ -106,6 +106,7 @@ model.train(
|
||||
name=run_name,
|
||||
exist_ok=True,
|
||||
pretrained=True,
|
||||
plots=False,
|
||||
verbose=True,
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user