Skip to main content

Vectice Python library

Project description

Enabling all enterprise’s AI/ML initiatives to result in consistent and positive impact. Data scientists deserve a solution that makes all their experiment reproducible, every asset discoverable and simplifies knowledge transfer. Managers deserve a dedicated data science solution. to secure knowledge, automate reporting and simplify reviews and processes.

Supported Python Versions

Python >= 3.7.1

Documentation

Official documentation for Vectice can be found at https://doc.vectice.com

Installing

To install Vectice without any extras and get started. The following code snippet can be used.

pip install vectice

To install Vectice with any extras and get started. The following code snippet can be used. All the provided extras can be found in the documentation.

pip install vectice[extra_required]

Getting Started

The following code is just an example to test that the Vectice SDK is working as it should be. You can use an IDE or a notebook to execute this code. It’s intializing a vectice object that connects to vectice. If everything is working as it should be you’ll recieve no errors.

from vectice import Vectice
vectice = Vectice(project_token="PROJECT_TOKEN")

The Vectice SDK leverages runs as the terminology used when capturing metadata from the work you do. Thus, if you want to clean data, for example, and capture what you’ve done, you would create the inputs of the data that will be cleaned, create a run and then start it. Then you’d perform the data cleaning.

ds_version = [vectice.create_dataset_version().with_parent_name("DATASET_NAME_IN_VECTICE_APP")]
run = vectice.create_run("RUN_NAME")
vectice.start_run(run, inputs = ds_version)

Once you’ve performed the data cleaning or any other actions you end the run by simple creating outputs and then calling the end_run method.

outputs = [vectice.create_dataset_version().with_parent_name("DATASET_NAME_IN_VECTICE_APP")]
vectice.end_run(outputs)

Auto versioning

The Vectice SDK enables you to leverage auto versioning for a variety of artifacts such as datasets, models and code. Below is an example of auto versioning your code, to find out more see code auto versioning.

vectice = Vectice(PROJECT_TOKEN, autocode=True)
run = vectice.create_run("auto-code-capture")
vectice.start_run(run)
vectice.end_run()

Integrations

Vectice integrates with popular data science tools. There are already a few integrations and MLflow is just one example and the roadmap has more exciting integrations on the way. If you would like to see more, please refer to the integrations in the documentation

MLflow

The Vectice API has MLflow integrated and the possibility to either capture metadata after a run or in a fully integrated manner. This can be achieved by using the Vectice API at a high level. To see more, refer to the MLflow how to or MLflowAdapter API for all the available functionality.

inputs = [Vectice.create_dataset_version().with_parent_name("standalone").with_tag("a_tag", "a tag value")]
# MLflow run
Vectice.save_after_run(PROJECT_TOKEN, run, "MLflow", inputs)

The fully integrated use of MLflow with Vectice uses the Python context manager to easily leverage MLflow with the Vectice API. The MLflow metadata is leveraged by the Vectice API and autolog allows all the metadata to be captured. Furthermore, more parameters and metrics can be captured by using MLflow methods.

mlflow.autolog()
vectice = Vectice(project_token=PROJECT_TOKEN, lib="MLflow")
vectice.create_run(MLFLOW_EXPERIMENT_NAME)

with vectice.start_run(inputs=inputs):
    mlflow.log_param("algorithm", "linear regression")
    mlflow.log_metric("MAE", MAE)

Examples

There is an examples repository dedicated to providing examples of how to leverage the Vectice SDK and Vectice App, you will find integration examples and ways to leverage Vectice in a standalone approach. This can be found in the vectice-examples repository.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vectice-0.23.1.tar.gz (56.7 kB view details)

Uploaded Source

Built Distribution

vectice-0.23.1-py2.py3-none-any.whl (84.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file vectice-0.23.1.tar.gz.

File metadata

  • Download URL: vectice-0.23.1.tar.gz
  • Upload date:
  • Size: 56.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.6.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.8

File hashes

Hashes for vectice-0.23.1.tar.gz
Algorithm Hash digest
SHA256 6677bef9475ed1aede72716704397f50730b36b1b16687aaa9cfdfac19ff8667
MD5 f55512157105bb0390c3ead412307376
BLAKE2b-256 9a76dd033ce4a49c8a8dea58409941a158af473dea70f8f604f0f4dc6d37a2ee

See more details on using hashes here.

File details

Details for the file vectice-0.23.1-py2.py3-none-any.whl.

File metadata

  • Download URL: vectice-0.23.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 84.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.6.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.8

File hashes

Hashes for vectice-0.23.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7dbdcf8242801514a983b464d2540e8200aa88cd8a11d39c33b56422ec61f43f
MD5 9410527199d39806b1add03129816911
BLAKE2b-256 9a873f4b1bdfa3962de5f16832e40d8d09af421ef94dad605cb9249c3af17ef6

See more details on using hashes here.

Supported by

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