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
[FR] "Share" button for experiment UI views #4820
Comments
Hey @sunishsheth2009, I'm looking to try and implement this FR and was wondering about some points. Right now, most of the state related to what is shown in the experiment view is stored in two separate objects here (ExperimentPagePersistedState & ExperimentViewPersistedState). Is there a good reason for them to be separate like this? I feel they are similar enough to be in the same object and handled the same way across the ExperimentPage and ExperimentView components. That would make exporting the state to a url simpler as well. Some of the state is already being pushed to the query parameters in the url (such as search string and column to sort on). What are your thoughts on pushing all the other state changes ( In the meantime I'll work on a bit of a prototype and share my thoughts |
Well I feel, ExperimentPage would maintain state for experiments page and same for experiment view. We can lift the state up when we need the state to be shared across multiple components. I don't think that is the case here. Each component maintaining its own persistent state does sound good. I do agree adding things to the URL does make it easier to share the URL. We can surely do that. But, we need to consider what all is important to be shared. Example, sharing if the runs are expanded or what columns are expanded/order of columns might not be super useful. So can we list the things that we feel are important that could be part of the URL and necessary for sharing? |
Thanks for the response @sunishsheth2009. I created a draft PR with a prototype for this FR. It adds the share button that copies the current url to the users clipboard and displays a small notification message. Also, the prototype maintains the following state in the url:
The other state elements that could be included with the share button are:
I think adding the the Finally, I ended up lifting the state of |
MLflow Roadmap Item
This is an MLflow Roadmap item that has been prioritized by the MLflow maintainers. We're seeking help with the implementation of roadmap items tagged with the
help wanted
label. Items tagged with theneeds design
label are awaiting a design sketch from an MLflow maintainer: @sunishsheth2009.For requirements clarifications and implementation questions, or to request a PR review, please tag @sunishsheth2009 in your communications related to this issue.
Proposal Summary
Introduce a "share" button that can be used to share a view / configuration of the MLflow experiment UI with other users. This button should generate a link that, when opened, configures the MLflow experiment UI to display the same Runs table columns, search query, and table ordering properties that were selected when the link was generated.
Motivation
What component(s), interfaces, languages, and integrations does this feature affect?
Components
area/artifacts
: Artifact stores and artifact loggingarea/build
: Build and test infrastructure for MLflowarea/docs
: MLflow documentation pagesarea/examples
: Example codearea/model-registry
: Model Registry service, APIs, and the fluent client calls for Model Registryarea/models
: MLmodel format, model serialization/deserialization, flavorsarea/projects
: MLproject format, project running backendsarea/scoring
: MLflow Model server, model deployment tools, Spark UDFsarea/server-infra
: MLflow Tracking server backendarea/tracking
: Tracking Service, tracking client APIs, autologgingInterfaces
area/uiux
: Front-end, user experience, plotting, JavaScript, JavaScript dev serverarea/docker
: Docker use across MLflow's components, such as MLflow Projects and MLflow Modelsarea/sqlalchemy
: Use of SQLAlchemy in the Tracking Service or Model Registryarea/windows
: Windows supportLanguages
language/r
: R APIs and clientslanguage/java
: Java APIs and clientslanguage/new
: Proposals for new client languagesIntegrations
integrations/azure
: Azure and Azure ML integrationsintegrations/sagemaker
: SageMaker integrationsintegrations/databricks
: Databricks integrationsThe text was updated successfully, but these errors were encountered: