aito.api.job_request

aito.api.job_request(client: aito.client.aito_client.AitoClient, job_endpoint: Optional[str] = None, query: Optional[Union[Dict, List]] = None, request_obj: Optional[Union[aito.client.requests.query_api_request.QueryAPIRequest, aito.client.requests.job_api_request.CreateJobRequest]] = None, polling_time: int = 10)aito.client.responses.aito_response.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