#client #server #rest #experiment #mlflow #ml-flow #trs

trs-mlflow

This crate contains an asynchronous client which implements 2.0 REST API of MlFlow server

9 releases

new 0.3.2 Dec 11, 2024
0.3.1 Dec 11, 2024
0.2.4 Dec 10, 2024
0.1.1 Dec 5, 2024

#1447 in Web programming

Download history 393/week @ 2024-12-04

395 downloads per month

MIT license

37KB
871 lines

trs-mlflow

This crate contains an asynchronous client which implements 2.0 REST API of MlFlow server.

The whole api description can be found here: https://mlflow.org/docs/latest/rest-api.html

Usage example:

use trs_mlflow::{run::CreateRun, Client};

let client = Client::new("http://localhost:5000/api");

let experiment_id = client
    .create_experiment(&"foo", vec![])
    .await
    .expect("BUG: Cannot create experiment");

let create = CreateRun::new()
    .run_name("bar")
    .experiment_id(&experiment_id)
    .build();

let run = client
    .create_run(create)
    .await
    .expect("BUG: Cannot create run");

If you want to run tests you need to run MlFlow server locally, which can be done by running this command:

./server/run.sh

This command creates a new venv, installs server and then runs it.

License: MIT


lib.rs:

This crate contains an unofficial asynchronous mlflow client which uses 2.0 API.

The whole API description can be found here: https://mlflow.org/docs/latest/rest-api.html

Usage example:

use trs_mlflow::{run::CreateRun, Client};

let client = Client::new("http://localhost:5000/api");

let experiment_id = client
    .create_experiment(&"foo", vec![])
    .await
    .expect("BUG: Cannot create experiment");

let create = CreateRun::new()
    .run_name("bar")
    .experiment_id(&experiment_id)
    .build();

let run = client
    .create_run(create)
    .await
    .expect("BUG: Cannot create run");

Testing

If you want to run tests you need to run MlFlow server locally, which can be done by running this command:

./server/run.sh

This command creates a new venv, installs server and then runs it.

Dependencies

~7–18MB
~250K SLoC