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.5.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: inferless-0.2.5.tar.gz
  • Upload date:
  • Size: 8.6 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.5.tar.gz
Algorithm Hash digest
SHA256 ce7361653ad062fbd159e9f445abef166a75f701be992393282cbe36adb4c4f4
MD5 9e66d6c7cceb52e2aa88892f30df4053
BLAKE2b-256 473e0cd790315f3ac0792bb3d4cc0a160c7efd14c50c2c48a42a018dcfa2f905

See more details on using hashes here.

File details

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

File metadata

  • Download URL: inferless-0.2.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e6bed317aaeb3dbcb621c4485eaf8d8689b0f02ba7b3d9ddd3d59b019066b930
MD5 81b197bebe41c2fd3a13352b7d347e55
BLAKE2b-256 fccffcc8cc5ea0c94f4dde787d19b9803c675cf9976f98ab7e47976f78ceb488

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