Spaces:
Runtime error
Runtime error
Commit History
-
Refactor: extract utils + base pipeline, expand docs
Code changes (KISS + single-responsibility): - src/ccdp/utils/{device,transforms}.py: deduplicate `pick_device`, `seed_everything`, IMAGENET stats, train/eval transforms (~120 lines previously copy/pasted across 5 files). - src/ccdp/infer/base.py: new `BaseVariantPipeline` holding the shared downstream — XGBoost loading, calibration, FX conversion, provenance construction. `VariantAPipeline` and `VariantBPipeline` now subclass it and only implement their vision-specific forward pass. - Wire trainers (`train_car_identifier`, `train_damage_classifier`) and the classifier feature extractor to import from `ccdp.utils` instead of holding private copies of the same helpers. - Fix latent bugs surfaced by the smoke test: * `_can_use_xgb` now also checks that the bundle actually loaded. * `BaseVariantPipeline` resolves the production symlink before deriving the bundle dir; previously it pointed at `checkpoints/production/` where `bundle.json` does not live. Do…76955d6 -
Initial commit: end-to-end car damage + repair-cost predictor
Variants A and B trained end-to-end on CarDD + comprehensive + iaai + Stanford Cars datasets, glued together by a versioned parts-cost catalog and a three-tier (exact / nearest-class / catalog-only) cost estimator with full provenance on every prediction. Production metrics (v0.1.0): - Identifier (ResNet50 + RandAugment + MixUp + CutMix): val acc 77.0% - Damage classifier (ResNet50, 6 damage types): val macro-F1 0.834 - YOLOv8n detector: mAP50 0.687, mAP50-95 0.540 - XGBoost(A) (image features only): val R² 0.630, test R² 0.642 - XGBoost(B) (+ bbox features): val R² 0.716, test R² 0.736 64 unit tests pass. Honest disclosures of synthetic-cost limitation in PLAN.md and progress/*.md.4ce7a7e