Skip to main content

Snark Hub

Project description

DataFlow · SnarkAI

Prototyping for Hub Dataflow

Setup

  1. Install the package
> pip3 install git+https://github.com/snarkai/dataflow@v0.2.2

Make sure gdal and opencv is installed as required by image_io.py

  1. Setup credentials in the local folder and don't forget to put those in .gitignore
.secrets/agmri.cfg
.secrets/intelinair #AWS credentials
  1. Example to get started
from dataflow import hub
import torch

hub.init()

df = hub.agmri().get_polygons_by_type(hub.agmri.UIUC_ENDROW, max=1) 
ds = hub.polygon_sampler(df, sample_count=32, shape=(1024,1024,4))
ds[0]

Troubleshooting

Install GDAL and OpenCV

If it throws error on gdal or opencv install those manually

./bin/prepare.sh
./bin/gdal.sh
./bin/opencv.sh

Credentials examples

intelinair file should look like this

[default]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-east-1

agmri.cfg

[production]
admin_username = ...
admin_password = ...

Known Issues

[ ] Credentials are not flexible where to be stored

Push a new version

git commit -a -m 'current changes'
git tag -a 'v0.2.2' -m 'some message here'
git push origin 'v0.2.2' 

Automated integration testing

To run pytest before git push we need to do create .git/hooks/pre-push file with the following content:

#!/bin/bash
docker-compose run test

And make it executable

chmod +x .git/hooks/pre-push

Also whenever updating requirements.txt and options.txt please rebuild the test

docker-compose build test

Formatting and Linting

Hub uses Black and Flake8 to ensure a consistent code format throughout the project. Replace .vscode/settings.json content withthe following:

{
    "[py]": {
        "editor.formatOnSave": true
    },
    "python.formatting.provider": "black",
    "python.linting.flake8Enabled": true,
    "python.linting.flake8Path": "flake8",
    "python.linting.flake8Args": [
        "--max-line-length=80",
        "--select=B,C,E,F,W,B950",
        "--ignore=E203,E501,W503"
    ],
    "python.linting.pylintEnabled": false,
    "python.linting.enabled": true,
}

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

dataflow_gegham_test-0.9.0.tar.gz (22.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dataflow_gegham_test-0.9.0-py3-none-any.whl (30.2 kB view details)

Uploaded Python 3

File details

Details for the file dataflow_gegham_test-0.9.0.tar.gz.

File metadata

  • Download URL: dataflow_gegham_test-0.9.0.tar.gz
  • Upload date:
  • Size: 22.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.9

File hashes

Hashes for dataflow_gegham_test-0.9.0.tar.gz
Algorithm Hash digest
SHA256 56a5eb798f01a7eaf7d0946ac9eb871ae7dc71b727ccea7a193368073551727e
MD5 83155074d08a4b0bdb340576b8a38ca8
BLAKE2b-256 546ae455e37e73139a145a3480620352b87e78bc05f51aef608236b0082fb870

See more details on using hashes here.

File details

Details for the file dataflow_gegham_test-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: dataflow_gegham_test-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 30.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.9

File hashes

Hashes for dataflow_gegham_test-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f3f74fd2642406d5b7d76a45259695d82ff73c6af73e0525121087cf683b55b8
MD5 fa590c9ce88f7667427c7739c4f1edf3
BLAKE2b-256 961c0a08cfcb9d8bc23c73849bc7fd751308240677e51e072eb196a91e389275

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page