Job
- class datarobot.models.Job(data, completed_resource_url=None)
Tracks asynchronous work being done within a project
- Attributes:
- idint
the id of the job
- project_idstr
the id of the project the job belongs to
- statusstr
the status of the job - will be one of
datarobot.enums.QUEUE_STATUS
- job_typestr
what kind of work the job is doing - will be one of
datarobot.enums.JOB_TYPE
- is_blockedbool
if true, the job is blocked (cannot be executed) until its dependencies are resolved
- classmethod get(project_id, job_id)
Fetches one job.
- Parameters:
- project_idstr
The identifier of the project in which the job resides
- job_idstr
The job id
- Returns:
- jobJob
The job
- Raises:
- AsyncFailureError
Querying this resource gave a status code other than 200 or 303
- Return type:
- cancel()
Cancel this job. If this job has not finished running, it will be removed and canceled.
- get_result(params=None)
- Parameters:
- paramsdict or None
Query parameters to be added to request to get results.
- For featureEffects, source param is required to define source,
- otherwise the default is `training`
- Returns:
- resultobject
- Return type depends on the job type:
for model jobs, a Model is returned
for predict jobs, a pandas.DataFrame (with predictions) is returned
for featureImpact jobs, a list of dicts by default (see
with_metadata
parameter of theFeatureImpactJob
class and itsget()
method).for primeRulesets jobs, a list of Rulesets
for primeModel jobs, a PrimeModel
for primeDownloadValidation jobs, a PrimeFile
for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
for predictionExplanations jobs, a PredictionExplanations
for featureEffects, a FeatureEffects
- Raises:
- JobNotFinished
If the job is not finished, the result is not available.
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- get_result_when_complete(max_wait=600, params=None)
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- paramsdict, optional
Query parameters to be added to request.
- Returns:
- result: object
Return type is the same as would be returned by Job.get_result.
- Raises:
- AsyncTimeoutError
If the job does not finish in time
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- refresh()
Update this object with the latest job data from the server.
- wait_for_completion(max_wait=600)
Waits for job to complete.
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- Return type:
None
- class datarobot.models.TrainingPredictionsJob(data, model_id, data_subset, **kwargs)
- classmethod get(project_id, job_id, model_id=None, data_subset=None)
Fetches one training predictions job.
The resulting
TrainingPredictions
object will be annotated with model_id and data_subset.- Parameters:
- project_idstr
The identifier of the project in which the job resides
- job_idstr
The job id
- model_idstr
The identifier of the model used for computing training predictions
- data_subsetdr.enums.DATA_SUBSET, optional
Data subset used for computing training predictions
- Returns:
- jobTrainingPredictionsJob
The job
- refresh()
Update this object with the latest job data from the server.
- cancel()
Cancel this job. If this job has not finished running, it will be removed and canceled.
- get_result(params=None)
- Parameters:
- paramsdict or None
Query parameters to be added to request to get results.
- For featureEffects, source param is required to define source,
- otherwise the default is `training`
- Returns:
- resultobject
- Return type depends on the job type:
for model jobs, a Model is returned
for predict jobs, a pandas.DataFrame (with predictions) is returned
for featureImpact jobs, a list of dicts by default (see
with_metadata
parameter of theFeatureImpactJob
class and itsget()
method).for primeRulesets jobs, a list of Rulesets
for primeModel jobs, a PrimeModel
for primeDownloadValidation jobs, a PrimeFile
for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
for predictionExplanations jobs, a PredictionExplanations
for featureEffects, a FeatureEffects
- Raises:
- JobNotFinished
If the job is not finished, the result is not available.
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- get_result_when_complete(max_wait=600, params=None)
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- paramsdict, optional
Query parameters to be added to request.
- Returns:
- result: object
Return type is the same as would be returned by Job.get_result.
- Raises:
- AsyncTimeoutError
If the job does not finish in time
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- wait_for_completion(max_wait=600)
Waits for job to complete.
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- Return type:
None
- class datarobot.models.ShapMatrixJob(data, model_id=None, dataset_id=None, **kwargs)
- classmethod get(project_id, job_id, model_id=None, dataset_id=None)
Fetches one SHAP matrix job.
- Parameters:
- project_idstr
The identifier of the project in which the job resides
- job_idstr
The job identifier
- model_idstr
The identifier of the model used for computing prediction explanations
- dataset_idstr
The identifier of the dataset against which prediction explanations should be computed
- Returns:
- jobShapMatrixJob
The job
- Raises:
- AsyncFailureError
Querying this resource gave a status code other than 200 or 303
- Return type:
- refresh()
Update this object with the latest job data from the server.
- Return type:
None
- cancel()
Cancel this job. If this job has not finished running, it will be removed and canceled.
- get_result(params=None)
- Parameters:
- paramsdict or None
Query parameters to be added to request to get results.
- For featureEffects, source param is required to define source,
- otherwise the default is `training`
- Returns:
- resultobject
- Return type depends on the job type:
for model jobs, a Model is returned
for predict jobs, a pandas.DataFrame (with predictions) is returned
for featureImpact jobs, a list of dicts by default (see
with_metadata
parameter of theFeatureImpactJob
class and itsget()
method).for primeRulesets jobs, a list of Rulesets
for primeModel jobs, a PrimeModel
for primeDownloadValidation jobs, a PrimeFile
for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
for predictionExplanations jobs, a PredictionExplanations
for featureEffects, a FeatureEffects
- Raises:
- JobNotFinished
If the job is not finished, the result is not available.
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- get_result_when_complete(max_wait=600, params=None)
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- paramsdict, optional
Query parameters to be added to request.
- Returns:
- result: object
Return type is the same as would be returned by Job.get_result.
- Raises:
- AsyncTimeoutError
If the job does not finish in time
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- wait_for_completion(max_wait=600)
Waits for job to complete.
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- Return type:
None
- class datarobot.models.FeatureImpactJob(data, completed_resource_url=None, with_metadata=False)
Custom Feature Impact job to handle different return value structures.
The original implementation had just the the data and the new one also includes some metadata.
In general, we aim to keep the number of Job classes low by just utilizing the job_type attribute to control any specific formatting; however in this case when we needed to support a new representation with the _same_ job_type, customizing the behavior of _make_result_from_location allowed us to achieve our ends without complicating the _make_result_from_json method.
- classmethod get(project_id, job_id, with_metadata=False)
Fetches one job.
- Parameters:
- project_idstr
The identifier of the project in which the job resides
- job_idstr
The job id
- with_metadatabool
To make this job return the metadata (i.e. the full object of the completed resource) set the with_metadata flag to True.
- Returns:
- jobJob
The job
- Raises:
- AsyncFailureError
Querying this resource gave a status code other than 200 or 303
- cancel()
Cancel this job. If this job has not finished running, it will be removed and canceled.
- get_result(params=None)
- Parameters:
- paramsdict or None
Query parameters to be added to request to get results.
- For featureEffects, source param is required to define source,
- otherwise the default is `training`
- Returns:
- resultobject
- Return type depends on the job type:
for model jobs, a Model is returned
for predict jobs, a pandas.DataFrame (with predictions) is returned
for featureImpact jobs, a list of dicts by default (see
with_metadata
parameter of theFeatureImpactJob
class and itsget()
method).for primeRulesets jobs, a list of Rulesets
for primeModel jobs, a PrimeModel
for primeDownloadValidation jobs, a PrimeFile
for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
for predictionExplanations jobs, a PredictionExplanations
for featureEffects, a FeatureEffects
- Raises:
- JobNotFinished
If the job is not finished, the result is not available.
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- get_result_when_complete(max_wait=600, params=None)
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- paramsdict, optional
Query parameters to be added to request.
- Returns:
- result: object
Return type is the same as would be returned by Job.get_result.
- Raises:
- AsyncTimeoutError
If the job does not finish in time
- AsyncProcessUnsuccessfulError
If the job errored or was aborted
- refresh()
Update this object with the latest job data from the server.
- wait_for_completion(max_wait=600)
Waits for job to complete.
- Parameters:
- max_waitint, optional
How long to wait for the job to finish.
- Return type:
None