Skip to main content

No project description provided

Project description

Python Client to call Inferless API

Installation

$ pip install inferless

Usage

This client can be used to call Inferless API from your python code. It supports both synchronous and asynchronous calls.

Constants

Fetch the URL and API_KEY from the Inferless console https://console-dev.inferless.com/

URL = "<url>"
API_KEY = "<api_key>"

Input Data

Input data can be provided in two formats, as shown below as inputs and data.

INPUTS = { "inputs" : 
          [
              {
                "name": "prompt",
                "shape": [
                  1
                ],
                "datatype": "BYTES",
                "data": [
                  "Once upon a time"
                ]
              }
          ]
        }

This other format is simpler and can be used if other parameters are not required. datatype and shape are automatically inferred.

DATA = {
    "prompt": "Once upon a time"
}

Synchrounous call

An example to call Inferless API synchronously

import inferless
import datetime
def main():
    t1 = datetime.datetime.now()
    data = inferless.call(url=URL, workspace_api_key=API_KEY, inputs=INPUTS)
    t2 = datetime.datetime.now()
    print(f"time taken: {t2-t1}")

main()

Output

time taken: 0:00:05.218835

For a particular url, the synchronous call took approximately 5 seconds to complete.

Async call with callback

This library also supports async calls to Inferless API. The following example shows how to call Inferless API in background with a callback function.

import inferless
import datetime

def callback_func(e, response):
    # e is the error object
    # response is the response object
    with open("response.json", "w") as f:
        f.write(json.dumps(response))
    

t1 = datetime.now()
inferless.call_async(url=URL, workspace_api_key=KEY, data=data, callback=callback_func)
t2 = datetime.now()
print(t2 - t1)

Output

time taken: 0:00:00.000141

It can be seen that the program continues without waiting for the response. The response is written to a file by the callback function after it is received.

Batch call

If the model is configured for batch processing, is_batch should be set to True

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

inferless-0.2.6.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

inferless-0.2.6-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file inferless-0.2.6.tar.gz.

File metadata

  • Download URL: inferless-0.2.6.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.15 Darwin/23.6.0

File hashes

Hashes for inferless-0.2.6.tar.gz
Algorithm Hash digest
SHA256 71761bb5c90fb13ed6c13e71d44293213490ec57a1b0bae92781921fa0f0c9f3
MD5 602b988122664d5d9f41f1fca5ec7302
BLAKE2b-256 826c82af3405d4b2e471bf0e8e1713476e3c463acfa1429cb5f8cfa107e81ec8

See more details on using hashes here.

File details

Details for the file inferless-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: inferless-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.15 Darwin/23.6.0

File hashes

Hashes for inferless-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 d9310328d79c94bb60421cd68bdf77e7e3c8b96c4656c7ed472447f39b2b8a13
MD5 33bef8182976a9831aae4346face308e
BLAKE2b-256 d53d7ab70e9d5d57c2afdcaf1401495255da3b2b9a8e527013b2f3ec91d92d96

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