MLFlowClient.jl icon indicating copy to clipboard operation
MLFlowClient.jl copied to clipboard

Support GitLabs MLFlow backend

Open freemin7 opened this issue 1 year ago • 1 comments

I got it sort of working in GitLab Screenshot_20240404_160828

For that i needed to undo https://github.com/JuliaAI/MLFlowClient.jl/pull/36 locally.

And artifact uploading is currently broken due to it not being supported by the library. I have a patch for that too.

I see two paths forward i could see working:

  • Do an AbstractMLFlow of which GitLabMLFlow and DagshubFlow are implementations which diverge in how URI is calculated
  • Break how URI is calculated and change the internal structure of MLFlow to allow different endpoints based on arguments passed at the MLFlow struct creation

freemin7 avatar Apr 04 '24 17:04 freemin7

Hi.

mlflow contains two endpoints for external communication: /ajax-api and /api. As far as I understand, the /ajax-api only works in the graphical instances of the app, and /api for the REST server. There is a particular case in DagsHub, where the /api endpoint was removed by unknown reasons. I expected the possibility of this issue.

In my opinion, point 2 is a better option. We can add an argument like MLFlow(ajax_endpoint=...).

pebeto avatar Apr 09 '24 02:04 pebeto