Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] add golang client #1792

Closed
jendrikjoe opened this issue Aug 28, 2019 · 3 comments
Closed

[Feature Request] add golang client #1792

jendrikjoe opened this issue Aug 28, 2019 · 3 comments
Labels
area/tracking Tracking service, tracking client APIs, autologging enhancement New feature or request help wanted We would like help from the community to add this support priority/backlog We believe it is useful, but don’t see it being prioritized in the next few months.

Comments

@jendrikjoe
Copy link

Describe the proposal

I would love to have a Go client for the mlflow API, as it would allow to fetch infos over available runs directly from Go, which would be a great advantage for people implementing microservices in Go.
It should be straight forward to generate this client from the .proto files.
I am currently working on getting this ready. I would be happy to as well add this to the mlflow repository, if it is of interest for you.

Motivation

We are using mlflow in a cloud setting which we are testing with terratest. For this it would come in handy to have a Go client of mlflow. I can imagine that the same applies to services written in Go and somehow handling mlflow data.

Proposed Changes

A folder should be added containing the golang client and the option go_package has to be added to the .proto files. It would be generated from the .proto files using the protoc-gen-go project and the commands:

protoc -I="$PROTOS" \
    --go_out=plugins=grpc,paths=source_relative:"$GOPATH/src" \
    "$PROTOS"/databricks.proto \
    "$PROTOS"/service.proto

protoc -I="$PROTOS" \
    --go_out=plugins=grpc,paths=source_relative:"$GOPATH/src" \
    "$PROTOS"/scalapb/scalapb.proto

which can be added to the generate_protos.sh. They have to be separate calls due to this issue: golang/protobuf#39.

@jendrikjoe jendrikjoe added the enhancement New feature or request label Aug 28, 2019
@mparkhe mparkhe added the help wanted We would like help from the community to add this support label Mar 6, 2020
@anggao
Copy link

anggao commented May 15, 2020

Any update for this, we'd like to use this client as well

@mparkhe mparkhe added the area/tracking Tracking service, tracking client APIs, autologging label Jul 1, 2020
@smurching smurching added the priority/backlog We believe it is useful, but don’t see it being prioritized in the next few months. label Jul 13, 2020
@dbczumar
Copy link
Collaborator

dbczumar commented Jun 2, 2022

We do not currently have plans to implement and upstream a golang client into the core MLflow project, but we'd be very excited to advise during the development of a third-party golang client for MLflow and provide a link to it in the MLflow docs.

@dbczumar dbczumar closed this as completed Jun 2, 2022
@nfx
Copy link

nfx commented Feb 27, 2024

@jendrikjoe i've created Go SDK for Databricks and there's full mlflow api coverage - enjoy https://pkg.go.dev/github.com/databricks/databricks-sdk-go/service/ml

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/tracking Tracking service, tracking client APIs, autologging enhancement New feature or request help wanted We would like help from the community to add this support priority/backlog We believe it is useful, but don’t see it being prioritized in the next few months.
Projects
None yet
Development

No branches or pull requests

6 participants