DataScience Project Template
A template with src and tests already prepared, based on Python 3.11.9 and Torch 2.3.1 (same as on GPUHub).
Structure
notebooksJupyter Notebooks go in here, try to use notebooks only for analysis and prototyping, the real training should be done via scriptsscriptsPython/Bash/PowerShell scripts go in here, that can be downloading the dataset, transforming the data, training a model etc.srcThe source code (heart) of your projectdatasets: Write yourtorch.utils.data.Datasetin hereevaluation: Write tasks used to evaluate your model(s) in this modulemodels: Custom model implementation go in hereoptimizers: Custom optimizers are written in hereschedulers: Custom implementation of schedulerstrainers: Your model trainer(s) live heretransforms: If you need specific transformations you will create them in hereutils: Utility functions and modules
TODOs
- Set up your dev environment
pip install -r requirements.txt
# Install pre-commit hook
pre-commit install
To run all the linters on all files:
pre-commit run --all-files
- Change project name and description in
pyproject.toml
[project]
name = "Datascience Project Template"
description = "Template for an AICOMP DataScience Project"
version = "0.1.0"
authors = [
{name = "Pascal Baumann", email = "pascal.baumann@hslu.ch"},
]
- Add your requirements to
requirements.txt - Create some code =)
- Add a PyTest configuration in PyCharm
Code and test conventions
blackfor code styleisortfor import sortingdarglintfor docstring checking- docstring style:
sphinx pytestfor running testsnbcleancleans up your Jupyter notebooks before committing- main/master branch is protected and needs merge request with approval
Running on the GPU and logging to W&B
Due to us now having an enterprise license on W&B we also have our service bot which can log runs to the appropriate team.
Metadata
Release files for aicomp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aicomp-0.1.1.tar.gz | 15.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aicomp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.9 kB
Release files / aicomp-0.1.1.tar.gz
| Download URL | aicomp-0.1.1.tar.gz |
|---|---|
| Size | 15.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b7f64237d70dd14421e96d8ebe5edf77a8ebd51f96aa4455410936a299c2e2f2
|
|
BLAKE2b-256 checksum How to use checksums |
d07158c686c9e722fd3af32ac5650b42ad2c2dda1ed13a528bb6bc90af101785
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|
Release files / aicomp-0.1.1-py3-none-any.whl
| Download URL | aicomp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 17.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
54ce3c8d7681c6df595729a97709dd9858f9fdd558046749a3bc2d840f34dd3c
|
|
BLAKE2b-256 checksum How to use checksums |
6ea5a6e63ff74e734be5017c145a11c264c5678b20617deea8cc2dcc5f7ed225
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|