aito.api.job_request

aito.api.job_request(client: AitoClient, job_endpoint: str | None = None, query: Dict | List | None = None, request_obj: QueryAPIRequest | CreateJobRequest | None = None, polling_time: int = 10) BaseResponse

make a request to an Aito API endpoint using Job

This method should be used for requests that take longer than 30 seconds, e.g: evaluate

The following query evaluate the performance of a predict query that uses the name of a product to predict its category

>>> response = client.job_request(
...     job_endpoint='/api/v1/jobs/_evaluate',
...     query={
...         "test": { "$index": { "$mod": [4, 0] } },
...         "evaluate": {
...             "from": "products",
...             "where": { "name": { "$get": "name" } },
...             "predict": "category"
...         }
...     }
... )
>>> print(response["accuracy"])
0.72...
Parameters:
  • client (AitoClient) – the AitoClient instance

  • job_endpoint (Optional[str]) – job end point

  • query (Optional[Union[List, Dict]]) – the query for the endpoint

  • request_obj (Optional[Union[aito_requests.QueryAPIRequest, aito_requests.CreateJobRequest]]) – a CreateJobRequest or an QueryAPIRequest instance

  • polling_time (int) – polling wait time, defaults to 10

Raises:

RequestError – an error occurred during the execution of the job

Returns:

request JSON content

Return type:

Dict