Skip to main content

Introduction

The ZEDEDA Edge AI Client (zededa-eip-client) is a Python package that provides programmatic access to ZEDEDA Edge Inference Services. You can use it to import models from external providers, upload model files from your local machine, browse available model versions, and monitor import jobs from a Jupyter Notebook, a Python script, or any other Python environment. This article covers model import and job management using the client. For console-based model management, see Manage Models. For configuring external providers before importing, see Manage Providers Using Jupyter Notebook Integration.

Prerequisites

  • Python 3.8 or later.
  • Access to ZEDEDA Edge Inference Services with a valid organization ID.
  • At least one external provider configured in your organization if you plan to import from an external source. See Manage Providers Using Jupyter Notebook Integration.
  • A Local File System provider configured in your organization if you plan to upload model files from your local machine.

Install the Client

Install the zededa-eip-client package from PyPI:

Authenticate

Authenticate with ZEDEDA Edge Inference Services before making any API calls:
After authentication, initialize the client:

Browse Available Model Versions

Before importing a model, use list_model_versions to browse the versions available in an external provider. This is supported for providers that offer versioned model catalogs, such as Qualcomm AI Hub.
The response includes a versions list and a latest_version field. For Qualcomm AI Hub providers, the versions represent runtime, precision, and device variant selectors.

Import a Model from an External Provider

Use import_model_from_external_provider to start an import job that fetches a model from a configured external provider into your ZEDEDA Edge Inference Services model catalog.
To block until the import completes instead of polling manually, pass wait=True:
The payload dictionary accepts the following keys:

Upload a Model from Local Files

Use upload_model_from_local_files to upload model files directly from your local machine. This is the recommended method for importing models that are not stored in an external provider. A Local File System provider must be configured in your organization before uploading.

Upload a single file

Upload a directory

All files in the directory are uploaded recursively:

Upload to a specific organization

The Local provider you name must belong to the target organization. If it belongs to a different organization, the upload is rejected.

Monitor Import Jobs

Import jobs run asynchronously. Use the job management methods to track progress and handle failures.

List import jobs

Filter by status to find jobs in a specific state:

Get a specific import job

Cancel a running job

You can cancel a job in the Pending or Running status.

Retry a failed job

Only Failed jobs can be retried. File-upload jobs, such as those created by upload_model_from_local_files, cannot be retried.

Delete a job record

A Running job must be cancelled before it can be deleted.

Work Across Organizations

If you have access to multiple organizations, use list_catalogs to see all available organizations and switch_catalog to change the active organization context without logging out.

List available organizations

Switch to a different organization

After switching, subsequent API calls use the new organization context. Environment variables for storage and MLflow access are updated automatically.

In This Section