A small example package
Project description
Python-Packaging-Demo :)
Reference repo:
https://github.com/entbappy/DVC-ML-DEMO
wokflow -
STEPS:
STEP 01: Create a empty remote repository
STEP 02: intialize a git local repository and connect to remote repository
- open and project folder in VS code then follow below command -
echo "# DVC-ML-DEMO" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/USER_NAME/REPO_NAME.git
git push -u origin main
touch .gitignore
content of the gitignore can be found from reference repository
STEP 03: create and activate conda environment
conda create -n dvc-ml python=3.7 -y
conda activate dvc-ml
STEP 04: create a setup file
touch setup.py
paste the below content in the setup.py file and make the necessary changes as per your user ID-
from setuptools import setup
with open("README.md", "r", encoding="utf-8") as f:
long_description = f.read()
setup(
name="src",
version="0.0.1",
author="Bappy Ahmed",
description="A small package for DVC ML pipeline demo",
long_description=long_description,
long_description_content_type="text/markdown",
url="https://github.com/entbappy/DVC-ML-DEMO",
author_email="entbappy73@gmail.com",
packages=["src"],
python_requires=">=3.7",
install_requires=[
'dvc',
'pandas',
'scikit-learn'
]
)
STEP 05: create requirement file and install dependencies
touch requirements.txt
pip install -r requirements.txt
content of requirements.txt - Refer the reference repository
STEP 06: initialize dvc
dvc init
STEP 07: create the basic directory structure
mkdir -p src/utils config
STEP 08: create the config file
touch config/config.yml
content of config.yml -
data_source: http://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/winequality-red.csv
artifacts:
artifacts_dir: artifacts
raw_local_dir: raw_local_dir
raw_local_file: data.csv
STEP 09: create the stage 01 python file and all_utils file:
touch src/stage_01_load_save.py src/utils/all_utils.py
content of both these files can be refererd from the reference given
STEP 10: create the dvc.yaml file and add the stage 01:
touch dvc.yaml
content of dvc.yaml file -
stages:
load_data:
cmd: python src/stage_01_load_save.py --config=config/config.yaml
deps:
- src/stage_01_load_save.py
- src/utils/all_utils.py
- config/config.yaml
outs:
- artifacts/raw_local_dir/data.csv
STEP 11: run the dvc repro command
dvc repo
STEP 12: push the changes to remote repository
git add .
git commit -m "stage 01 added"
git push origin main
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file PythonDemoPackage-0.0.6.tar.gz.
File metadata
- Download URL: PythonDemoPackage-0.0.6.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f558cf4eb51b88420b9569fe3aacceb7ac75cd3260c6542c5a190e65a2aec925
|
|
| MD5 |
fc61179da73f3585a9d54630c94cbcc8
|
|
| BLAKE2b-256 |
78900016e97ba04fef44c86dfc20bda120337e1b83f55d553aeef17d64a55cb4
|
File details
Details for the file PythonDemoPackage-0.0.6-py3-none-any.whl.
File metadata
- Download URL: PythonDemoPackage-0.0.6-py3-none-any.whl
- Upload date:
- Size: 4.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce38ab379afaedd6d6b12785698eda3568a93da4a68099eb4dd47e70335bc41e
|
|
| MD5 |
c30854eb6a864aadf6bc74d2f1d827cb
|
|
| BLAKE2b-256 |
ed7d0e10069aa94bfff546e539495f0e069ea9dd031bcc4c129af3a62622e967
|