Skip to content

mlflow

MLflow user-feedback logging: detect whether MLflow tracing is wired for this deployment, and log a thumbs / comment as a trace assessment via the Databricks MLflow REST API.

Feedback attaches to a trace, and the plugin’s spans reach MLflow through the same OTel pipeline as every other AppKit span (see observability.ts). On Databricks Apps that pipeline is the UC sidecar injected by telemetry_export_destinations, not a direct workspace OTLP URL. MLflow derives its trace id from the OpenTelemetry trace id (tr-<hex(otelTraceId)>), so the server stamps the active trace id on each turn’s response and the client sends it back here.

There is no MLflow JS SDK, so this posts to the assessments REST endpoint directly using the OBO-scoped workspace client (the feedback is thus attributed to the signed-in user). Trace export is asynchronous, so the just-finished trace may not exist in MLflow yet when the user reacts; the log call retries briefly on “not found” before giving up softly.