mlflow / mlflow

Open source platform for the machine learning lifecycle
https://mlflow.org
Apache License 2.0
18.77k stars 4.24k forks source link

[FR] Support Github Markdown flavor in the description fields #7991

Open darenr opened 1 year ago

darenr commented 1 year ago

Willingness to contribute

Yes. I can contribute this feature independently.

Proposal Summary

Commonmark is significantly less expressive than the github markdown flavor. My feature request is to switch out commonmark for github markdow so get color syntax highlighting of code blocks, svg support (express pipelines visually) etc.

Motivation

Improve description capabilities to be more expressive

Good descriptions with illustrations gives data scientists the ability to "comment" their experiment runs more expressively

Good descriptions with illustrations gives data scientists the ability to "comment" their experiment runs more expressively

The current description field for experiments and models is rendered with a less expressive library that doesn't support the github flavor of markdown that for many has become the format they are used to

Details

No response

What component(s) does this bug affect?

What interface(s) does this bug affect?

What language(s) does this bug affect?

What integration(s) does this bug affect?

WeichenXu123 commented 1 year ago

Would you paste some example snapshot to show the difference between them ? And how much performance difference between them ? And what's the major gramma differences between them ?

dbczumar commented 1 year ago

@sunishsheth2009 can you take a look at this request?

dbczumar commented 1 year ago

@darenr as @sunishsheth2009 pointed out, MLflow already appears to use GitHub markdown: https://github.com/mlflow/mlflow/blob/a54ca23bb4fbd4fdcd7f895c84969cedc4b2f523/mlflow/server/js/src/common/utils/MarkdownUtils.js#L6. Are there missing features?

darenr commented 1 year ago

that's embarassing! I appreciate you letting me know.

I'd tried using

 def foo() -> str:
   return "bar"

to see if color syntax highlighting works (as above) in an experiment description and didn't see the highlighting. I'd also tried an svg path which also didn't seem to work (to embed an image without an external source)


<svg height="210" width="400">
  <path d="M150 0 L75 200 L225 200 Z" />
</svg>

the main one was to embedd yaml with color syntax highlighting
dbczumar commented 1 year ago

Got it, perhaps the JS plugin needs to be updated @sunishsheth2009 ?

sunishsheth2009 commented 1 year ago

That is possible. We are on version 1.9.1 of showdown and there is a newer version: 2.1.0. Maybe upgrading to the newer version would solve that. But since it is a major version upgrade, we need to figure out the upgrading path and see if there are any breaking changes.

dbczumar commented 1 year ago

Thanks @sunishsheth2009 .

@darenr Would you be willing to try upgrading showdown to see if the latest version works with the MLflow UI and, if so, file an upgrade PR? We would really appreciate your contribution :D

mlflow-automation commented 1 year ago

@BenWilson2 @dbczumar @harupy @WeichenXu123 Please assign a maintainer and start triaging this issue.