TODO
The directory structure of the project looks like this:
├── .github/ # Github actions and dependabot
│ ├── dependabot.yaml
│ └── workflows/
│ └── tests.yaml
├── configs/ # Configuration files
├── data/ # Data directory
│ ├── processed
│ └── raw
├── dockerfiles/ # Dockerfiles
│ ├── api.Dockerfile
│ └── train.Dockerfile
├── docs/ # Documentation
│ ├── mkdocs.yml
│ └── source/
│ └── index.md
├── models/ # Trained models
├── notebooks/ # Jupyter notebooks
├── reports/ # Reports
│ └── figures/
├── src/ # Source code
│ ├── project_name/
│ │ ├── __init__.py
│ │ ├── api.py
│ │ ├── data.py
│ │ ├── evaluate.py
│ │ ├── models.py
│ │ ├── train.py
│ │ └── visualize.py
└── tests/ # Tests
│ ├── __init__.py
│ ├── test_api.py
│ ├── test_data.py
│ └── test_model.py
├── .gitignore
├── .pre-commit-config.yaml
├── LICENSE
├── pyproject.toml # Python project file
├── README.md # Project README
├── requirements.txt # Project requirements
├── requirements_dev.txt # Development requirements
└── tasks.py # Project tasks
The following tasks can be executed using the invoke
command:
create_environment
: Create a new conda environment for the project.requirements
: Install project requirements.dev_requirements
: Install development requirements.preprocess_data
: Preprocess raw data and save it to the processed directory.train
: Train the model.evaluate
: Evaluate the trained model.visualize
: Visualize model predictions.test
: Run tests and generate a coverage report.docker_build
: Build Docker images for training and API.build_docs
: Build the project documentation.serve_docs
: Serve the project documentation locally.
To run a task, use the following command:
invoke <task_name>
For example, to train the model, use:
invoke train
Created using mlops_template, a cookiecutter template for getting started with Machine Learning Operations (MLOps).