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, release_notes='-Added new classes\n-Improved performance')

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.2.tar.gz (15.2 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.2-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for barbara_sdk-1.2.2.tar.gz
Algorithm Hash digest
SHA256 45837482f42cd8f39831f95a546b160f2016c3f0f43105d73455b2955fbc8617
MD5 9fd2ac51f9a1dd2d9cedfc4475e49e36
BLAKE2b-256 0b34a19e6a675e581b919e3fa749154da9ee45db239f7297406e2e7442f2d9f2

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for barbara_sdk-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d45043435e43930df553f5af3dd4e0ba6bf6830fde4de7a782d64e0540560141
MD5 2dcde4d2bbaf9eb43f2190ae9ca40362
BLAKE2b-256 60f1e811df0fef8661779da44c78ff62a17949d79818ca2f4b5e216080bf56b2

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