Safe Haskell | None |
---|---|
Language | Haskell2010 |
Haskell Bindings for MLFlow: https://www.mlflow.org/
Synopsis
- type TrackingURI = String
- trackingURI :: String -> String -> TrackingURI
- trackingURI' :: String -> Int -> TrackingURI
- type ExperimentID = String
- createExperiment :: TrackingURI -> String -> IO ExperimentID
- listExperiments :: TrackingURI -> IO [Experiment]
- getExperiment :: TrackingURI -> ExperimentID -> IO Experiment
- getExperimentByName :: TrackingURI -> String -> IO Experiment
- deleteExperiment :: TrackingURI -> ExperimentID -> IO (Response ByteString)
- resoterExperiment :: TrackingURI -> ExperimentID -> IO (Response ByteString)
- updateExperiment :: TrackingURI -> ExperimentID -> String -> IO (Response ByteString)
- type RunID = String
- createRun :: TrackingURI -> ExperimentID -> [Tag] -> IO Run
- deleteRun :: TrackingURI -> RunID -> IO (Response ByteString)
- restoreRun :: TrackingURI -> RunID -> IO (Response ByteString)
- getRun :: TrackingURI -> RunID -> IO Run
- updateRun :: TrackingURI -> RunID -> RunStatus -> Maybe Int -> IO RunInfo
- endRun :: TrackingURI -> RunID -> IO RunInfo
- logMetric :: TrackingURI -> RunID -> String -> Float -> Int -> IO (Response ByteString)
- logBatch :: TrackingURI -> RunID -> [Metric] -> [Param] -> [Tag] -> IO (Response ByteString)
- logBatch' :: TrackingURI -> RunID -> Int -> Map String Float -> Map String String -> IO (Response ByteString)
- logParam :: TrackingURI -> RunID -> String -> String -> IO (Response ByteString)
- getMetricHistory :: TrackingURI -> RunID -> String -> IO [Metric]
- setExperimentTag :: TrackingURI -> ExperimentID -> String -> String -> IO (Response ByteString)
- setRunTag :: TrackingURI -> RunID -> String -> String -> IO (Response ByteString)
- deleteTag :: TrackingURI -> RunID -> String -> IO (Response ByteString)
Documentation
type TrackingURI Source #
= String | Base URL and Port to mlflow server |
trackingURI :: String -> String -> TrackingURI Source #
Hostname and port to TrackingURI
trackingURI' :: String -> Int -> TrackingURI Source #
Hostname and port (as Int) to TrackingURI
type ExperimentID Source #
= String | Experiment ID |
createExperiment :: TrackingURI -> String -> IO ExperimentID Source #
Create 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.
listExperiments :: TrackingURI -> IO [Experiment] Source #
Get a list of all experiments.
getExperiment :: TrackingURI -> ExperimentID -> IO Experiment Source #
Get metadata for an experiment. This method works on deleted experiments.
getExperimentByName :: TrackingURI -> String -> IO Experiment Source #
Get metadata for an experiment. (By Name)
deleteExperiment :: TrackingURI -> ExperimentID -> IO (Response ByteString) Source #
Mark an experiment and associated metadata, runs, metrics, params, and tags for deletion. If the experiment uses FileStore, artifacts associated with experiment are also deleted.
resoterExperiment :: TrackingURI -> ExperimentID -> IO (Response ByteString) Source #
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.
updateExperiment :: TrackingURI -> ExperimentID -> String -> IO (Response ByteString) Source #
Update experiment metadata.
createRun :: TrackingURI -> ExperimentID -> [Tag] -> IO Run Source #
Create 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 Param, Metric, and RunTag associated with a single execution.
deleteRun :: TrackingURI -> RunID -> IO (Response ByteString) Source #
Mark a run for deletion.
restoreRun :: TrackingURI -> RunID -> IO (Response ByteString) Source #
Restore a deleted run.
getRun :: TrackingURI -> RunID -> IO Run Source #
Get 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.
updateRun :: TrackingURI -> RunID -> RunStatus -> Maybe Int -> IO RunInfo Source #
Update run metadata.
logMetric :: TrackingURI -> RunID -> String -> Float -> Int -> IO (Response ByteString) Source #
Log 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.
logBatch :: TrackingURI -> RunID -> [Metric] -> [Param] -> [Tag] -> IO (Response ByteString) Source #
Log 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.
logBatch' :: TrackingURI -> RunID -> Int -> Map String Float -> Map String String -> IO (Response ByteString) Source #
Just for Convenience, turns maps into Metric and Param types
logParam :: TrackingURI -> RunID -> String -> String -> IO (Response ByteString) Source #
Log 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.
getMetricHistory :: TrackingURI -> RunID -> String -> IO [Metric] Source #
Get a list of all values for the specified metric for a given run.
setExperimentTag :: TrackingURI -> ExperimentID -> String -> String -> IO (Response ByteString) Source #
Set a tag on an experiment. Experiment tags are metadata that can be updated.
setRunTag :: TrackingURI -> RunID -> String -> String -> IO (Response ByteString) Source #
Set a tag on a run. Tags are run metadata that can be updated during a run and after a run completes.
deleteTag :: TrackingURI -> RunID -> String -> IO (Response ByteString) Source #
Delete a tag on a run. Tags are run metadata that can be updated during a run and after a run completes.