<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: MLFlow tracking from Azure Container Instance in Generative AI</title>
    <link>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/157336#M1819</link>
    <description>&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;Similar response to the one from WorksBuddy.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;Short&lt;/STRONG&gt; &lt;STRONG&gt;answer:&lt;/STRONG&gt; &lt;STRONG&gt;yes,&lt;/STRONG&gt; &lt;STRONG&gt;it's&lt;/STRONG&gt; &lt;STRONG&gt;supported,&lt;/STRONG&gt; &lt;STRONG&gt;and&lt;/STRONG&gt; &lt;STRONG&gt;there's&lt;/STRONG&gt; &lt;STRONG&gt;a&lt;/STRONG&gt; &lt;STRONG&gt;specific&lt;/STRONG&gt; &lt;STRONG&gt;Databricks&lt;/STRONG&gt; &lt;STRONG&gt;guide&lt;/STRONG&gt; &lt;STRONG&gt;for&lt;/STRONG&gt; &lt;STRONG&gt;your&lt;/STRONG&gt; &lt;STRONG&gt;case.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;The tutorial you found is for local/IDE; the production-container equivalent is here: Trace agents deployed outside of Databricks (&lt;A href="https://docs.databricks.com/aws/en/mlflow3/genai/tracing/prod-tracing-external" target="_blank"&gt;https://docs.databricks.com/aws/en/mlflow3/genai/tracing/prod-tracing-external&lt;/A&gt;). &lt;BR /&gt;Same wiring (four&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;env vars + the &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow-tracing&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; SDK).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;1.&lt;/STRONG&gt; &lt;STRONG&gt;Feasibility&lt;/STRONG&gt; — Yes. Install &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow-tracing&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, set &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;DATABRICKS_HOST&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;DATABRICKS_TOKEN&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_TRACKING_URI=databricks&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; (literal string), &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_EXPERIMENT_NAME&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;. Traces ship over HTTPS, async logging is on by default so it's off your&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;request path. Your container, Databricks components, and Azure AI Foundry can be &lt;STRONG&gt;stitched&lt;/STRONG&gt; &lt;STRONG&gt;into&lt;/STRONG&gt; &lt;STRONG&gt;one&lt;/STRONG&gt; &lt;STRONG&gt;trace&lt;/STRONG&gt; via W3C TraceContext header propagation → Distributed Tracing&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;(&lt;A href="https://mlflow.org/docs/latest/genai/tracing/app-instrumentation/distributed-tracing" target="_blank"&gt;https://mlflow.org/docs/latest/genai/tracing/app-instrumentation/distributed-tracing&lt;/A&gt;).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;2.&lt;/STRONG&gt; &lt;STRONG&gt;Recommended&lt;/STRONG&gt; &lt;STRONG&gt;for&lt;/STRONG&gt; &lt;STRONG&gt;prod&lt;/STRONG&gt; &lt;STRONG&gt;—&lt;/STRONG&gt; &lt;STRONG&gt;with&lt;/STRONG&gt; &lt;STRONG&gt;these&lt;/STRONG&gt; &lt;STRONG&gt;upgrades&lt;/STRONG&gt; &lt;STRONG&gt;over&lt;/STRONG&gt; &lt;STRONG&gt;the&lt;/STRONG&gt; &lt;STRONG&gt;dev&lt;/STRONG&gt; &lt;STRONG&gt;tutorial:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;OAuth&lt;/STRONG&gt; &lt;STRONG&gt;M2M&lt;/STRONG&gt; &lt;STRONG&gt;service&lt;/STRONG&gt; &lt;STRONG&gt;principal&lt;/STRONG&gt; instead of PAT → docs (&lt;A href="https://docs.databricks.com/aws/en/dev-tools/auth/oauth-m2m" target="_blank"&gt;https://docs.databricks.com/aws/en/dev-tools/auth/oauth-m2m&lt;/A&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;&lt;STRONG&gt;mlflow-tracing&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; package (~5 MB) instead of full &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; (~1 GB); don't install both → docs (&lt;A href="https://mlflow.org/docs/latest/genai/tracing/lightweight-sdk" target="_blank"&gt;https://mlflow.org/docs/latest/genai/tracing/lightweight-sdk&lt;/A&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;Unity&lt;/STRONG&gt; &lt;STRONG&gt;Catalog–backed&lt;/STRONG&gt; &lt;STRONG&gt;experiment&lt;/STRONG&gt; to escape the 100K-trace cap and 1,000-trace search ceiling&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- Tune &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_TRACE_SAMPLING_RATIO&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, async worker/queue sizes, and &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_TRACE_TIMEOUT_SECONDS&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; → Production Tracing (&lt;A href="https://mlflow.org/docs/latest/genai/tracing/prod-tracing" target="_blank"&gt;https://mlflow.org/docs/latest/genai/tracing/prod-tracing&lt;/A&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;Limits&lt;/STRONG&gt; &lt;STRONG&gt;to&lt;/STRONG&gt; &lt;STRONG&gt;plan&lt;/STRONG&gt; &lt;STRONG&gt;around&lt;/STRONG&gt; (per workspace): 200 QPS trace creation, 25 QPS search, UC ingestion 200 traces/sec &amp;amp; 100 MB/sec per table → Tracing FAQ (&lt;A href="https://docs.databricks.com/aws/en/mlflow3/genai/tracing/faq" target="_blank"&gt;https://docs.databricks.com/aws/en/mlflow3/genai/tracing/faq&lt;/A&gt;).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;Gotchas:&lt;/STRONG&gt; async = fire-and-forget, so flush on graceful shutdown or you lose queued traces on container kill. Keep voice audio/full transcripts as artifacts/URIs — don't inline them in trace payloads (latency overhead will climb to&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;100ms + above 1 MB). Production Monitoring Delta sync runs ~every 15 min, so use online judges for realtime alerting.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;3.&lt;/STRONG&gt; &lt;STRONG&gt;Alternatives:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- Stay on Lakebase custom traces — fine, but you rebuild dashboards/search/judges yourself&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;Recommended:&lt;/STRONG&gt; MLflow → Databricks (above)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;OpenTelemetry&lt;/STRONG&gt; &lt;STRONG&gt;collector&lt;/STRONG&gt; &lt;STRONG&gt;→&lt;/STRONG&gt; &lt;STRONG&gt;multi-sink&lt;/STRONG&gt; — MLflow spans are OTel-compatible, good if you also want Datadog/Grafana or vendor-neutrality&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- Self-hosted OSS MLflow + Postgres — only if data-residency forces it; you operate everything and lose UC/judges&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;Net&lt;/STRONG&gt; &lt;STRONG&gt;recommendation:&lt;/STRONG&gt; the external-deployment MLflow pattern with &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow-tracing&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; SDK + OAuth M2M + a UC-backed experiment. It's the documented path, gets you centralized observability in Databricks, and unlocks the LLM-as-judge eval&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;layer (hallucination, PII, response-relevance) that a voice agent will want next.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Wed, 20 May 2026 13:55:45 GMT</pubDate>
    <dc:creator>MoJaMa</dc:creator>
    <dc:date>2026-05-20T13:55:45Z</dc:date>
    <item>
      <title>MLFlow tracking from Azure Container Instance</title>
      <link>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/156284#M1800</link>
      <description>&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;we're building a &lt;STRONG&gt;voice chatbot&lt;/STRONG&gt; for a customer using a mix of technologies — Databricks, Azure AI Foundry, and a few external containerized services.&lt;/P&gt;&lt;P&gt;Currently, we're tracking requests and logs via &lt;STRONG&gt;Lakebase with custom traces&lt;/STRONG&gt;, but I'm now evaluating whether it makes sense to shift to &lt;STRONG&gt;MLflow (Databricks-managed)&lt;/STRONG&gt; for tracing instead.&lt;/P&gt;&lt;P&gt;I came across this tutorial on connecting an external environment to MLflow: &lt;span class="lia-unicode-emoji" title=":backhand_index_pointing_right:"&gt;👉&lt;/span&gt; &lt;A href="https://docs.databricks.com/aws/en/mlflow3/genai/getting-started/connect-environment#local-development-environment" target="_blank"&gt;Connect your dev environment to MLflow – Databricks Docs&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The guide focuses on &lt;STRONG&gt;local/dev setups&lt;/STRONG&gt;, but our use case is different:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;The chatbot runs in an &lt;STRONG&gt;external container&lt;/STRONG&gt; (not inside Databricks)&lt;/LI&gt;&lt;LI&gt;We need to track GenAI traces (inputs, outputs, latency, etc.) &lt;STRONG&gt;in production&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;We want a centralized observability layer directly in Databricks&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;My questions:&lt;/STRONG&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Is it technically feasible to send MLflow traces from an &lt;STRONG&gt;external production container&lt;/STRONG&gt; to a Databricks-managed MLflow instance?&lt;/LI&gt;&lt;LI&gt;Is this approach &lt;STRONG&gt;recommended for production&lt;/STRONG&gt;, or are there known limitations/gotchas?&lt;/LI&gt;&lt;LI&gt;Any alternative patterns you'd suggest for &lt;STRONG&gt;GenAI observability&lt;/STRONG&gt; in this kind of hybrid architecture?&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Thanks in advance &lt;span class="lia-unicode-emoji" title=":folded_hands:"&gt;🙏&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Alessandro&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 06 May 2026 16:33:42 GMT</pubDate>
      <guid>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/156284#M1800</guid>
      <dc:creator>Ale_Armillotta</dc:creator>
      <dc:date>2026-05-06T16:33:42Z</dc:date>
    </item>
    <item>
      <title>Re: MLFlow tracking from Azure Container Instance</title>
      <link>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/157219#M1816</link>
      <description>&lt;P class=""&gt;Hey Alessandro,&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;1. Technically feasible? Yes.&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;MLflow's tracking client is just HTTP. As long as your container can reach the Databricks-managed MLflow endpoint, you can send traces from anywhere. Set your workspace host and token as environment variables inside the container, point the tracking URI to Databricks, and you're connected.&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;2. Production gotchas:&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;The biggest one for a voice chatbot: don't let MLflow calls block your response path. Send traces asynchronously so observability never adds to user-facing latency.&lt;/P&gt;&lt;P class=""&gt;Use a service principal over a PAT for auth. PATs expire, and manual rotation will catch you off guard in production. Also sort your network config early. If your ACI and Databricks workspace are in different VNets, private endpoints or IP allow-listing needs to be in place before anything else.&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;3. Alternative worth considering:&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;If latency is still a concern after going async, an OpenTelemetry sidecar collector in the same container gives you better control over batching and buffering before traces hit the network. You can export via OTLP to Databricks without the direct MLflow overhead.&lt;/P&gt;&lt;P class=""&gt;The hybrid architecture you're describing is a common pattern now. MLflow as the centralized observability layer is a reasonable call. Just keep the tracing async and auth service-principal-based before you go live.&lt;/P&gt;&lt;P class=""&gt;Good luck with the build.&lt;/P&gt;</description>
      <pubDate>Tue, 19 May 2026 06:33:07 GMT</pubDate>
      <guid>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/157219#M1816</guid>
      <dc:creator>WorksBuddy</dc:creator>
      <dc:date>2026-05-19T06:33:07Z</dc:date>
    </item>
    <item>
      <title>Re: MLFlow tracking from Azure Container Instance</title>
      <link>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/157336#M1819</link>
      <description>&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;Similar response to the one from WorksBuddy.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;Short&lt;/STRONG&gt; &lt;STRONG&gt;answer:&lt;/STRONG&gt; &lt;STRONG&gt;yes,&lt;/STRONG&gt; &lt;STRONG&gt;it's&lt;/STRONG&gt; &lt;STRONG&gt;supported,&lt;/STRONG&gt; &lt;STRONG&gt;and&lt;/STRONG&gt; &lt;STRONG&gt;there's&lt;/STRONG&gt; &lt;STRONG&gt;a&lt;/STRONG&gt; &lt;STRONG&gt;specific&lt;/STRONG&gt; &lt;STRONG&gt;Databricks&lt;/STRONG&gt; &lt;STRONG&gt;guide&lt;/STRONG&gt; &lt;STRONG&gt;for&lt;/STRONG&gt; &lt;STRONG&gt;your&lt;/STRONG&gt; &lt;STRONG&gt;case.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;The tutorial you found is for local/IDE; the production-container equivalent is here: Trace agents deployed outside of Databricks (&lt;A href="https://docs.databricks.com/aws/en/mlflow3/genai/tracing/prod-tracing-external" target="_blank"&gt;https://docs.databricks.com/aws/en/mlflow3/genai/tracing/prod-tracing-external&lt;/A&gt;). &lt;BR /&gt;Same wiring (four&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;env vars + the &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow-tracing&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; SDK).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;1.&lt;/STRONG&gt; &lt;STRONG&gt;Feasibility&lt;/STRONG&gt; — Yes. Install &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow-tracing&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, set &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;DATABRICKS_HOST&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;DATABRICKS_TOKEN&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_TRACKING_URI=databricks&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; (literal string), &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_EXPERIMENT_NAME&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;. Traces ship over HTTPS, async logging is on by default so it's off your&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;request path. Your container, Databricks components, and Azure AI Foundry can be &lt;STRONG&gt;stitched&lt;/STRONG&gt; &lt;STRONG&gt;into&lt;/STRONG&gt; &lt;STRONG&gt;one&lt;/STRONG&gt; &lt;STRONG&gt;trace&lt;/STRONG&gt; via W3C TraceContext header propagation → Distributed Tracing&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;(&lt;A href="https://mlflow.org/docs/latest/genai/tracing/app-instrumentation/distributed-tracing" target="_blank"&gt;https://mlflow.org/docs/latest/genai/tracing/app-instrumentation/distributed-tracing&lt;/A&gt;).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;2.&lt;/STRONG&gt; &lt;STRONG&gt;Recommended&lt;/STRONG&gt; &lt;STRONG&gt;for&lt;/STRONG&gt; &lt;STRONG&gt;prod&lt;/STRONG&gt; &lt;STRONG&gt;—&lt;/STRONG&gt; &lt;STRONG&gt;with&lt;/STRONG&gt; &lt;STRONG&gt;these&lt;/STRONG&gt; &lt;STRONG&gt;upgrades&lt;/STRONG&gt; &lt;STRONG&gt;over&lt;/STRONG&gt; &lt;STRONG&gt;the&lt;/STRONG&gt; &lt;STRONG&gt;dev&lt;/STRONG&gt; &lt;STRONG&gt;tutorial:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;OAuth&lt;/STRONG&gt; &lt;STRONG&gt;M2M&lt;/STRONG&gt; &lt;STRONG&gt;service&lt;/STRONG&gt; &lt;STRONG&gt;principal&lt;/STRONG&gt; instead of PAT → docs (&lt;A href="https://docs.databricks.com/aws/en/dev-tools/auth/oauth-m2m" target="_blank"&gt;https://docs.databricks.com/aws/en/dev-tools/auth/oauth-m2m&lt;/A&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;&lt;STRONG&gt;mlflow-tracing&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; package (~5 MB) instead of full &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; (~1 GB); don't install both → docs (&lt;A href="https://mlflow.org/docs/latest/genai/tracing/lightweight-sdk" target="_blank"&gt;https://mlflow.org/docs/latest/genai/tracing/lightweight-sdk&lt;/A&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;Unity&lt;/STRONG&gt; &lt;STRONG&gt;Catalog–backed&lt;/STRONG&gt; &lt;STRONG&gt;experiment&lt;/STRONG&gt; to escape the 100K-trace cap and 1,000-trace search ceiling&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- Tune &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_TRACE_SAMPLING_RATIO&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, async worker/queue sizes, and &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;MLFLOW_TRACE_TIMEOUT_SECONDS&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; → Production Tracing (&lt;A href="https://mlflow.org/docs/latest/genai/tracing/prod-tracing" target="_blank"&gt;https://mlflow.org/docs/latest/genai/tracing/prod-tracing&lt;/A&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;Limits&lt;/STRONG&gt; &lt;STRONG&gt;to&lt;/STRONG&gt; &lt;STRONG&gt;plan&lt;/STRONG&gt; &lt;STRONG&gt;around&lt;/STRONG&gt; (per workspace): 200 QPS trace creation, 25 QPS search, UC ingestion 200 traces/sec &amp;amp; 100 MB/sec per table → Tracing FAQ (&lt;A href="https://docs.databricks.com/aws/en/mlflow3/genai/tracing/faq" target="_blank"&gt;https://docs.databricks.com/aws/en/mlflow3/genai/tracing/faq&lt;/A&gt;).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;Gotchas:&lt;/STRONG&gt; async = fire-and-forget, so flush on graceful shutdown or you lose queued traces on container kill. Keep voice audio/full transcripts as artifacts/URIs — don't inline them in trace payloads (latency overhead will climb to&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;100ms + above 1 MB). Production Monitoring Delta sync runs ~every 15 min, so use online judges for realtime alerting.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;3.&lt;/STRONG&gt; &lt;STRONG&gt;Alternatives:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- Stay on Lakebase custom traces — fine, but you rebuild dashboards/search/judges yourself&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;Recommended:&lt;/STRONG&gt; MLflow → Databricks (above)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- &lt;STRONG&gt;OpenTelemetry&lt;/STRONG&gt; &lt;STRONG&gt;collector&lt;/STRONG&gt; &lt;STRONG&gt;→&lt;/STRONG&gt; &lt;STRONG&gt;multi-sink&lt;/STRONG&gt; — MLflow spans are OTel-compatible, good if you also want Datadog/Grafana or vendor-neutrality&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;- Self-hosted OSS MLflow + Postgres — only if data-residency forces it; you operate everything and lose UC/judges&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG&gt;Net&lt;/STRONG&gt; &lt;STRONG&gt;recommendation:&lt;/STRONG&gt; the external-deployment MLflow pattern with &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;mlflow-tracing&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; SDK + OAuth M2M + a UC-backed experiment. It's the documented path, gets you centralized observability in Databricks, and unlocks the LLM-as-judge eval&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;layer (hallucination, PII, response-relevance) that a voice agent will want next.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 20 May 2026 13:55:45 GMT</pubDate>
      <guid>https://community.databricks.com/t5/generative-ai/mlflow-tracking-from-azure-container-instance/m-p/157336#M1819</guid>
      <dc:creator>MoJaMa</dc:creator>
      <dc:date>2026-05-20T13:55:45Z</dc:date>
    </item>
  </channel>
</rss>

