Adds support for mlflow experiment search
What does this MR do and why?
Adds support for mlflow experiment search
Adds limited compatibility to mlflow experiment API, enabling users to use the MLflow client search_experiments method. The endpoint does not implement filters as defined in the docs, only pagination and ordering.
Changelog: added
How to set up and validate locally
-
Create a few experiments
p = Project.find_by(id: 1) Ml::Experiment.create(project: p, name: "Experiment 1") Ml::Experiment.create(project: p, name: "Experiment 2")
-
With a PAT with API scope, create a request:
curl -X POST -H "Authorization: Bearer $GPAT" "http://localhost:3000/api/v4/projects/$PROJECT_ID/ml/mlflow/api/2.0/mlflow/experiments/search"
Queries
SELECT
"ml_experiments".*
FROM
"ml_experiments"
WHERE
"ml_experiments"."project_id" = 19
ORDER BY
"ml_experiments"."id" DESC
https://postgres.ai/console/gitlab/gitlab-production-tunnel-pg12/sessions/25163/commands/79911
This should return the list of experiments