code: def set_details(self, details: str) -> None:
      self._details = details
      if self._code != grpc.StatusCode.OK:
          self._active_span.set_status(
              Status(
                  status_code=StatusCode.ERROR,
                  description=f"{self._code}:{details}",
              )
          )
      return self._servicer_context.set_details(details)
  
imports: from __future__ import annotations
  import functools
  import logging
  import typing
  from contextlib import asynccontextmanager
  from typing import TYPE_CHECKING
  from opentelemetry import trace
  from opentelemetry.context import attach
  from opentelemetry.context import detach
  from opentelemetry.propagate import extract
  from opentelemetry.semconv.trace import SpanAttributes
  from opentelemetry.trace.status import Status
  from opentelemetry.trace.status import StatusCode
  from simple_di import Provide
  from simple_di import inject
  from bentoml._internal.configuration.containers import BentoMLContainer
  from bentoml._internal.utils.pkg import get_pkg_version
  from bentoml.grpc.utils import GRPC_CONTENT_TYPE
  from bentoml.grpc.utils import import_grpc
  from bentoml.grpc.utils import parse_method_name
  from bentoml.grpc.utils import wrap_rpc_handler
label_desc: Use image node_id 14 for calling the _OpenTelemetryServicerContext obj's underlying member method code with example usage: obj.set_details(details) and returns: self