update-lock-file:
    uv lock

install-dependencies:
    uv sync --dev

dev:
    uv run poe dev

dev-wandb-offline:
    WANDB_MODE=offline \
    uv run poe dev

dev-download-original-data:
    uv run poe dev --should_download_original_data=True

test:
    uv run poe test

test-coverage:
    uv run poe test-coverage

dvc-initialize:
    uv run dvc init

dvc-add:
    uv run dvc add data/raw/cifar-10-python.tar.gz

dvc-run-prepare:
    uv run dvc run --name=prepare --deps=data/raw/cifar-10-python.tar.gz --outs=data/processed/cifar-10-batches-py/ tar -x -f data/raw/cifar-10-python.tar.gz -C data/processed

dvc-run-main:
    uv run dvc run --name=main --deps=data/processed/cifar-10-batches-py/ --deps=model/ --deps=main.py --deps=train.py --deps=evaluate.py --params=lr,train.epochs --outs=output/models/model.pt python main.py

dvc-run-main-no-exec:
    uv run dvc run --no-exec --name=main --deps=data/processed/cifar-10-batches-py/ --deps=model/ --deps=main.py --deps=train.py --deps=evaluate.py --params=lr,train.epochs --outs=output/models/model.pt python main.py

dvc-repro:
    uv run dvc repro

dvc-remove:
    uv run dvc remove -- STAGE_NAME

dvc-dag:
    uv run dvc dag

dvc-remote-add:
    uv run dvc remote add --default hm-remote s3://hm-production-bucket/hm-cnn-dvc-store

dvc-push:
    uv run dvc push

dvc-pull:
    uv run dvc pull

aws-create-s3:
    aws s3 mb s3://hm-production-bucket/hm-cnn-dvc-store --region us-west-2

aws-ls:
    aws s3 ls s3://hm-production-bucket/hm-cnn-dvc-store
