Skip to main content

Takeoff SDK package is a python sdk that provides a simple interface to interact with Takeoff

Project description

Takeoff SDK - Internal

Table of Contents

About

The Takeoff SDK library facilitates launching Takeoff within Python. It provides a Pythonic interface, simplifying the process of initiating Takeoff using the docker run command. Essentially, it wraps the dev.sh script, which manages Docker with all necessary environment variables, volume mounting, network configuration, and device settings. This library is specifically designed for an internal team of developers who need to integrate Python applications with the Takeoff Server, offering a quick and straightforward way to start Takeoff in a Python runtime. It also enables running benchmarks and integration tests.

Getting Started

Installing

To get started with the Takeoff SDK Library, you can install it directly using pip:

pip install takeoff_sdk

Alternatively, if you are working on developing the library, you can install it in editable mode. This allows you to make changes to the library and test them in real-time. Navigate to the takeoff-sdk folder and run the following command:

pip install -e . 

Usage

Launch Takeoff

To quickly launch the Takeoff server with default configurations, use the following script:

from takeoff_sdk import Takeoff

takeoff = Takeoff(model_name="test_model", device="cuda")
takeoff.start() # this will start a docker with takeoff server in the background

For a more customized setup:

from takeoff_sdk import Takeoff, TakeoffEnvSetting
config = TakeoffEnvSetting(model_name="test_model", device="cpu", max_batch_size=16)
takeoff = Takeoff.from_config(config)
takeoff.start() # this will start a docker with takeoff server in the background

Refer to the TakeoffEnvSetting Data Object or Takeoff Environment Variables Settings for additional configuration options.

Launch from a manifest mode:

from takeoff_sdk import Takeoff

takeoff = Takeoff.from_manifest("path_to_your_manifest.yaml")
takeoff.start() # this will takeoff server using manifest.yaml

Add Extra Model

This utilizes the model_management_api functionality, which in python you can do:

# assume you have a takeoff object running
# takeoff.start() running

 # This will add one more model to `embedding` consumer group
takeoff.add_model(model_name="test_model", backend="hf", device="cuda", consumer_group="embedding")

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

takeoff_sdk-0.3.2.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

takeoff_sdk-0.3.2-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file takeoff_sdk-0.3.2.tar.gz.

File metadata

  • Download URL: takeoff_sdk-0.3.2.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for takeoff_sdk-0.3.2.tar.gz
Algorithm Hash digest
SHA256 0a1fe4b03926e3af7edcebdc45eb4a43a4e231cf9d96e08a98d5e1debc9b286b
MD5 40846ef2b2b988ec17a157f31b544c40
BLAKE2b-256 f8234f4096455c5d98bcc5baed38f8c2d87b49d0e952c4d42285212254aa6d6f

See more details on using hashes here.

File details

Details for the file takeoff_sdk-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: takeoff_sdk-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for takeoff_sdk-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6289055234755d2fbb026a2463359f33fb9bd34598d211793be970e547ea5648
MD5 0859f1d36a162bc24c14dc67cd1213d3
BLAKE2b-256 256e177c0844ea3d1bd7466bc7c23adea9f4085dbd8774a42207b0da7cbb728d

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