Skip to main content

Takeoff Client is a Python client for the Takeoff Server

Project description

Takeoff Python Client Library

Table of Contents

About

The Takeoff Python Client Library serves as an essential tool for interacting with the Takeoff Server. It simplifies the process of sending requests to the server, offering a streamlined, Pythonic interface. This library is designed for developers who need to integrate their Python applications with the Takeoff Server, providing them with a robust and efficient way to communicate with the server's API.

Getting Started

Installing

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

pip install takeoff_client

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 python-client folder and run the following command:

pip install -e . 

Usage

Establishing a Connection

To start using the client, you need to establish a connection with the Takeoff Server. You can do this by creating an instance of the TakeoffClient. Replace "http://localhost" and 3000 with the appropriate URL and port of your Takeoff Server.

client = TakeoffClient(base_url="http://localhost", port=3000)

Interaction with Server

For more details, please check the API documentation below.

Retrieving Reader Information

To get information about the reader from the server, use the get_reader() method. This method sends a request to the server and returns reader-related information.

client.get_reader() 

Embedding

For querying the embedding model, use the embed() method.

client.embed("Text to embed")

Generation

To generate text based on a given input, use the generate() method.

client.generate("Text to generate")

Takeoff Python Client API Documentation

To convert the provided method descriptions into API documentation, I'll structure each description to include key components like a brief overview, parameters, return type, and any additional notes or exceptions. Here's how the API documentation can be structured:


Takeoff Python Client API Documentation

1. get_readers()

Overview: Retrieves a list of information about all readers from the Takeoff Server.

Returns:

  • dict: A dictionary containing information about all readers.

Example Usage:

reader_info = client.get_readers()

2. embed(text, consumer_group="embed")

Overview: Embeds a batch of text using the specified consumer group.

Parameters:

  • text (str | List[str]): The text or list of texts to be embedded.
  • consumer_group (str, optional): The consumer group to use for embedding. Defaults to "embed".

Returns:

  • dict: A dictionary containing the embedding response.

Exceptions:

  • Raises an exception if the embedding request fails.

Example Usage:

embedding_response = client.embed("Sample text")

3. generate(text, sampling_temperature=None, sampling_topp=None, sampling_topk=None, max_new_tokens=None, min_new_tokens=None, regex_string=None, json_schema=None, prompt_max_tokens=None, consumer_group="primary")

Overview: Generates text based on the given input and parameters.

Parameters:

  • text (str | List[str]): The input text or list of texts for generation.
  • Additional optional parameters for controlling text generation:
    • sampling_temperature (float)
    • sampling_topp (float)
    • sampling_topk (int)
    • max_new_tokens (int)
    • min_new_tokens (int)
    • regex_string (str)
    • json_schema (Any)
    • prompt_max_tokens (int)
    • consumer_group (str): Defaults to "primary".

Returns:

  • dict: A dictionary containing the generated text response.

Exceptions:

  • Raises an exception if the text generation request fails.

Example Usage:

generated_text = client.generate("Sample input text")

4. generate_stream(text, sampling_temperature=None, sampling_topp=None, sampling_topk=None, max_new_tokens=None, min_new_tokens=None, regex_string=None, json_schema=None, prompt_max_tokens=None, consumer_group="primary")

Overview: Similar to generate, but returns an iterator for streaming the generated text.

Parameters:

  • Same as generate method.

Returns:

  • Iterator[Event]: An iterator that yields a server sent event

Exceptions:

  • Raises an exception if the text generation request fails.

Example Usage:

generator = client.generate_stream(["Sample input"])
for event in generator:
    print(event.data)

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_client-0.7.0.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

takeoff_client-0.7.0-py2.py3-none-any.whl (11.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file takeoff_client-0.7.0.tar.gz.

File metadata

  • Download URL: takeoff_client-0.7.0.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for takeoff_client-0.7.0.tar.gz
Algorithm Hash digest
SHA256 6a92f11035357833ab302866ad067c865bc1a12d85d72c768411675e1f37d839
MD5 673cbdd0d9fa2679c7b1d7fb276ff48f
BLAKE2b-256 c16b92cb0b646462de94491c9d18d23bd214bc59f29d8fb9daa72fd057a72e42

See more details on using hashes here.

File details

Details for the file takeoff_client-0.7.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for takeoff_client-0.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ff30e70de65c57d8413d743a810c23aa285631f503d3d1c25053820ac17e4abe
MD5 03d2213ff64dbd1dcd1774492b1a50d1
BLAKE2b-256 acd58d350df5d0b3f08f389f3f3c2ae5e7c5f140e42c2b3bf0376f4780f399be

See more details on using hashes here.

Supported by

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