Interface ExperimentsService
-
@Generated public interface ExperimentsService
Experiments are the primary unit of organization in MLflow; all MLflow runs belong to an experiment. Each experiment lets you visualize, search, and compare runs, as well as download run artifacts or metadata for analysis in other tools. Experiments are maintained in a Databricks hosted MLflow tracking server.Experiments are located in the workspace file tree. You manage experiments using the same tools you use to manage other workspace objects such as folders, notebooks, and libraries.
This is the high-level interface, that contains generated methods.
Evolving: this interface is under development. Method signatures may change.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CreateExperimentResponse
createExperiment(CreateExperiment createExperiment)
Create experiment.CreateRunResponse
createRun(CreateRun createRun)
Create a run.void
deleteExperiment(DeleteExperiment deleteExperiment)
Delete an experiment.void
deleteRun(DeleteRun deleteRun)
Delete a run.void
deleteTag(DeleteTag deleteTag)
Delete a tag.GetExperimentByNameResponse
getByName(GetByNameRequest getByNameRequest)
Get metadata.Experiment
getExperiment(GetExperimentRequest getExperimentRequest)
Get an experiment.GetMetricHistoryResponse
getHistory(GetHistoryRequest getHistoryRequest)
Get history of a given metric within a run.GetRunResponse
getRun(GetRunRequest getRunRequest)
Get a run.ListArtifactsResponse
listArtifacts(ListArtifactsRequest listArtifactsRequest)
Get all artifacts.ListExperimentsResponse
listExperiments(ListExperimentsRequest listExperimentsRequest)
List experiments.void
logBatch(LogBatch logBatch)
Log a batch.void
logInputs(LogInputs logInputs)
Log inputs to a run.void
logMetric(LogMetric logMetric)
Log a metric.void
logModel(LogModel logModel)
Log a model.void
logParam(LogParam logParam)
Log a param.void
restoreExperiment(RestoreExperiment restoreExperiment)
Restores an experiment.void
restoreRun(RestoreRun restoreRun)
Restore a run.SearchExperimentsResponse
searchExperiments(SearchExperiments searchExperiments)
Search experiments.SearchRunsResponse
searchRuns(SearchRuns searchRuns)
Search for runs.void
setExperimentTag(SetExperimentTag setExperimentTag)
Set a tag.void
setTag(SetTag setTag)
Set a tag.void
updateExperiment(UpdateExperiment updateExperiment)
Update an experiment.UpdateRunResponse
updateRun(UpdateRun updateRun)
Update a run.
-
-
-
Method Detail
-
createExperiment
CreateExperimentResponse createExperiment(CreateExperiment createExperiment)
Create experiment.Creates an experiment with a name. Returns the ID of the newly created experiment. Validates that another experiment with the same name does not already exist and fails if another experiment with the same name already exists.
Throws `RESOURCE_ALREADY_EXISTS` if a experiment with the given name exists.
-
createRun
CreateRunResponse createRun(CreateRun createRun)
Create a run.Creates a new run within an experiment. A run is usually a single execution of a machine learning or data ETL pipeline. MLflow uses runs to track the `mlflowParam`, `mlflowMetric` and `mlflowRunTag` associated with a single execution.
-
deleteExperiment
void deleteExperiment(DeleteExperiment deleteExperiment)
Delete an experiment.Marks an experiment and associated metadata, runs, metrics, params, and tags for deletion. If the experiment uses FileStore, artifacts associated with experiment are also deleted.
-
deleteRun
void deleteRun(DeleteRun deleteRun)
Delete a run.Marks a run for deletion.
-
deleteTag
void deleteTag(DeleteTag deleteTag)
Delete a tag.Deletes a tag on a run. Tags are run metadata that can be updated during a run and after a run completes.
-
getByName
GetExperimentByNameResponse getByName(GetByNameRequest getByNameRequest)
Get metadata.Gets metadata for an experiment.
This endpoint will return deleted experiments, but prefers the active experiment if an active and deleted experiment share the same name. If multiple deleted experiments share the same name, the API will return one of them.
Throws `RESOURCE_DOES_NOT_EXIST` if no experiment with the specified name exists.
-
getExperiment
Experiment getExperiment(GetExperimentRequest getExperimentRequest)
Get an experiment.Gets metadata for an experiment. This method works on deleted experiments.
-
getHistory
GetMetricHistoryResponse getHistory(GetHistoryRequest getHistoryRequest)
Get history of a given metric within a run.Gets a list of all values for the specified metric for a given run.
-
getRun
GetRunResponse getRun(GetRunRequest getRunRequest)
Get a run.Gets the metadata, metrics, params, and tags for a run. In the case where multiple metrics with the same key are logged for a run, return only the value with the latest timestamp.
If there are multiple values with the latest timestamp, return the maximum of these values.
-
listArtifacts
ListArtifactsResponse listArtifacts(ListArtifactsRequest listArtifactsRequest)
Get all artifacts.List artifacts for a run. Takes an optional `artifact_path` prefix. If it is specified, the response contains only artifacts with the specified prefix.",
-
listExperiments
ListExperimentsResponse listExperiments(ListExperimentsRequest listExperimentsRequest)
List experiments.Gets a list of all experiments.
-
logBatch
void logBatch(LogBatch logBatch)
Log a batch.Logs a batch of metrics, params, and tags for a run. If any data failed to be persisted, the server will respond with an error (non-200 status code).
In case of error (due to internal server error or an invalid request), partial data may be written.
You can write metrics, params, and tags in interleaving fashion, but within a given entity type are guaranteed to follow the order specified in the request body.
The overwrite behavior for metrics, params, and tags is as follows:
* Metrics: metric values are never overwritten. Logging a metric (key, value, timestamp) appends to the set of values for the metric with the provided key.
* Tags: tag values can be overwritten by successive writes to the same tag key. That is, if multiple tag values with the same key are provided in the same API request, the last-provided tag value is written. Logging the same tag (key, value) is permitted. Specifically, logging a tag is idempotent.
* Parameters: once written, param values cannot be changed (attempting to overwrite a param value will result in an error). However, logging the same param (key, value) is permitted. Specifically, logging a param is idempotent.
Request Limits ------------------------------- A single JSON-serialized API request may be up to 1 MB in size and contain:
* No more than 1000 metrics, params, and tags in total * Up to 1000 metrics * Up to 100 params * Up to 100 tags
For example, a valid request might contain 900 metrics, 50 params, and 50 tags, but logging 900 metrics, 50 params, and 51 tags is invalid.
The following limits also apply to metric, param, and tag keys and values:
* Metric keys, param keys, and tag keys can be up to 250 characters in length * Parameter and tag values can be up to 250 characters in length
-
logInputs
void logInputs(LogInputs logInputs)
Log inputs to a run.**NOTE:** Experimental: This API may change or be removed in a future release without warning.
-
logMetric
void logMetric(LogMetric logMetric)
Log a metric.Logs a metric for a run. A metric is a key-value pair (string key, float value) with an associated timestamp. Examples include the various metrics that represent ML model accuracy. A metric can be logged multiple times.
-
logModel
void logModel(LogModel logModel)
Log a model.**NOTE:** Experimental: This API may change or be removed in a future release without warning.
-
logParam
void logParam(LogParam logParam)
Log a param.Logs a param used for a run. A param is a key-value pair (string key, string value). Examples include hyperparameters used for ML model training and constant dates and values used in an ETL pipeline. A param can be logged only once for a run.
-
restoreExperiment
void restoreExperiment(RestoreExperiment restoreExperiment)
Restores an experiment.Restore an experiment marked for deletion. This also restores associated metadata, runs, metrics, params, and tags. If experiment uses FileStore, underlying artifacts associated with experiment are also restored.
Throws `RESOURCE_DOES_NOT_EXIST` if experiment was never created or was permanently deleted.
-
restoreRun
void restoreRun(RestoreRun restoreRun)
Restore a run.Restores a deleted run.
-
searchExperiments
SearchExperimentsResponse searchExperiments(SearchExperiments searchExperiments)
Search experiments.Searches for experiments that satisfy specified search criteria.
-
searchRuns
SearchRunsResponse searchRuns(SearchRuns searchRuns)
Search for runs.Searches for runs that satisfy expressions.
Search expressions can use `mlflowMetric` and `mlflowParam` keys.",
-
setExperimentTag
void setExperimentTag(SetExperimentTag setExperimentTag)
Set a tag.Sets a tag on an experiment. Experiment tags are metadata that can be updated.
-
setTag
void setTag(SetTag setTag)
Set a tag.Sets a tag on a run. Tags are run metadata that can be updated during a run and after a run completes.
-
updateExperiment
void updateExperiment(UpdateExperiment updateExperiment)
Update an experiment.Updates experiment metadata.
-
updateRun
UpdateRunResponse updateRun(UpdateRun updateRun)
Update a run.Updates run metadata.
-
-