Skip to main content

Python SDK for Barbara Edge Computing Platform

Project description

Barbara-sdk: Python SDK for Barbara Edge Computing Platform

Deploy your machine learning models to the edge with the Barbara Python SDK. This intuitive library empowers you to streamline your workflow and accelerate edge AI development.

Features

  • Seamless Uploads: Upload your models directly from Python code or Jupyter Notebooks to your Barbara model library.
  • Simplified Deployment: Deploy models directly to edge nodes with just a few lines of code.
  • Enhanced Efficiency: Automate model training & deployment tasks and save valuable development time.
  • Streamlined Workflow: Integrate edge AI development seamlessly into your existing Python environment.

Prerequisites

  • Python (version 3.8 or higher)

Barbara API Credentials

To use this SDK you will need the following credentials:

  • Username: Your Barbara username.
  • Password: Your Barbara password.
  • Client Secret: This credential is only available for users with an Enterprise License.
  • Client Id: This credential is only available for users with an Enterprise License.

Obtaining Enterprise Credentials

If you have an Enterprise License and require the Client Secret and Client ID, please contact Barbara support by sending an email to support@barbara.tech.

Security Note

We strongly recommend storing your username and password securely and avoiding embedding them directly in your code. Consider using environment variables or a secure credential management solution.

Installation with pip

pip install barbara-sdk

Usage

Import the SDK:

import barbara

Create an instance of the SDK

bbr = barbara.ApiClient('client_id', 'client_secret', 'username', 'password')

Replace 'client_id', 'client_secret', 'username' and 'password' with your actual API credentials.

Uploading models to your Library

  • Tensorflow over TFX
bbr.models.upload('model_path', 'model_name')

or

bbr.models.upload('model_path', 'model_name', model_type=barbara.MODEL_TYPE=TENSORFLOW_SAVED_MODEL, engine=barbara.ENGINE_TYPE.TENSORFLOW_TFX)
  • Tensorflow over NVIDIA Triton
bbr.models.upload('model_path', 'model_name', model_type=barbara.MODEL_TYPE.TENSORFLOW_SAVED_MODEL, engine=barbara.ENGINE_TYPE.NVIDIA_TRITON)
  • Torchscript over NVIDIA Triton
bbr.models.upload('model_path', 'model_name', model_type=barbara.MODEL_TYPE.PYTORCH_TORCHSCRIPT, engine=barbara.ENGINE_TYPE.NVIDIA_TRITON)
  • Onnx over NVIDIA Triton
bbr.models.upload('model_path', 'model_name', model_type=barbara.MODEL_TYPE.ONNX, engine=barbara.ENGINE_TYPE.NVIDIA_TRITON)

Listing models in your Library

bbr.models.list()

Listing Edge Nodes

bbr.nodes.list()

Deploy a model to an Edge Node

bbr.models.deploy('edge_node_name', 'model_name')
bbr.models.deploy('edge_node_name', 'model_over_tfx_name', grpc_port=9000, rest_port=9001)
bbr.models.deploy('edge_node_name', 'model_over_nvidia_triton_name', grpc_port=9000, rest_port=9001, monitoring_port=9002)
bbr.models.deploy('edge_node_name', 'model_over_mlflow_name', grpc_port=9000, rest_port=9001, monitoring_port=9002)

Deploy a model to an Edge Node with GPU

bbr.models.deploy('edge_node_name', 'model_name', gpu=True)

Documentation

For detailed API reference and code examples, please refer to Barbara Academy

License

See the LICENSE file for details.

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

barbara_sdk-1.2.0.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

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

barbara_sdk-1.2.0-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file barbara_sdk-1.2.0.tar.gz.

File metadata

  • Download URL: barbara_sdk-1.2.0.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.7

File hashes

Hashes for barbara_sdk-1.2.0.tar.gz
Algorithm Hash digest
SHA256 5dcf6dc7cc5e6693319d056e3c7e1d0475a1c841986a183c4f390d54c3931e76
MD5 b5eb22d4eddc966fbb9cf3a1f109f681
BLAKE2b-256 110c2921f71cb3e4be3b6f1eaad0bd2c14d79b70c47223324ac99175dbf95dd5

See more details on using hashes here.

File details

Details for the file barbara_sdk-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: barbara_sdk-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.7

File hashes

Hashes for barbara_sdk-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f3db8ec2a0741fd580321e33875f26c067253a394779eb767a312ceb154a5ea
MD5 ecd1acbb5909bf509a0d7df346386ccd
BLAKE2b-256 714141f78ea5de4832259f032784fa75b68c51bdd73f3ddbb8146ae06f31654e

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