cancel
Showing results forย 
Search instead forย 
Did you mean:ย 
Generative AI
Explore discussions on generative artificial intelligence techniques and applications within the Databricks Community. Share ideas, challenges, and breakthroughs in this cutting-edge field.
cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Error from mlflow traces in Databricks notebook

rafaelgildin
Visitor

I'm unable to log my traces in my mlflow experiments.

The goal is to have the tracing from my genAI calls like described in Tutorial: Connect your development environment to MLflow .

So I'm able to create my experiment run, but they are every time empty, as shown below.

rafaelgildin_0-1764261207256.png

 

By adding the logging for showing debugging infos I was able to get the following error.

Overriding of current TracerProvider is not allowed 2025/11/27 16:16:35 DEBUG mlflow.tracing.utils: Failed to get attribute mlflow.traceRequestId with from span NonRecordingSpan(SpanContext(trace_id=0x00000000000000000000000000000000, span_id=0x0000000000000000, trace_flags=0x00, trace_state=[], is_remote=False)). Traceback (most recent call last): File "/local_disk0/.ephemeral_nfs/envs/pythonEnv-7eff4f88-fa35-45e5-8cad-fdcd71df8df3/lib/python3.12/site-packages/mlflow/tracing/utils/__init__.py", line 240, in get_otel_attribute attribute_value = span.attributes.get(key) ^^^^^^^^^^^^^^^

 

 What I've tried to do for solving it.

  1. Recreating my compute resource to check if the error persist. And it does. 
  2. Adding multiple layers for open telemetry and trying to change the packages versions.

Which none worked out. Also this is very strange, since I've people from my team that's able to run it with ease.

Current code I'm using with my notebook in databricks.

# -------------------------------- cell 1
%pip install uv
%uv pip install -U 'mlflow[databricks]>=3.1' openai "flask<3.0.0" "opentelemetry-exporter-otlp-proto-grpc"
dbutils.library.restartPython()

# -------------------------------- cell 2
import os, logging, mlflow
from dotenv import load_dotenv
from databricks.sdk.runtime import dbutils

# Initialize OpenTelemetry
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.resources import Resource
from opentelemetry.sdk.trace.export import BatchSpanProcessor

os.environ["MLFLOW_ENABLE_TRACES"] = "true"
os.environ["MLFLOW_TRACKING_URI"] = "databricks"

# Set up the tracer provider
resource = Resource.create({"service.name": "mlflow-tracing"})
tracer_provider = TracerProvider(resource=resource)
trace._TRACER_PROVIDER = None 
trace.set_tracer_provider(tracer_provider)

logging.getLogger().setLevel(logging.DEBUG)
mlflow.openai.autolog()
mlflow.set_experiment(experiment_id=EXPERIMENT_ID)

os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY

from openai import OpenAI
client = OpenAI()

messages = [
  {
    "role": "system", 
    "content": "You are a helpful assistant."
  },
  {
    "role": "user",
    "content": "Hello!"
  }
]

client.chat.completions.create(model="gpt-4o-mini-2024-07-18", messages=messages)



1 REPLY 1

rafaelgildin
Visitor

Also, I've created this issue on Mlflow Github: https://github.com/mlflow/mlflow/issues/19092

Join Us as a Local Community Builder!

Passionate about hosting events and connecting people? Help us grow a vibrant local communityโ€”sign up today to get started!

Sign Up Now