text: Title: [Detections] - `from_inference` should include `'class_name'` key in `Detections.data` even if result is empty
  Body: ### Bug
  
  [`from_inference`](https://github.com/roboflow/supervision/blob/0ccb0b85adee4202f5fe96834a374a057bbbd9da/supervision/detection/core.py#L448) should include `'class_name'` key in `Detections.data` even if `roboflow` inference result is empty.
  
  ### Environment
  
  - Latest version of supervision
  - macOS
  
  ### Minimal Reproducible Example
  
  ```python
  import cv2
  import roboflow
  import numpy as np
  import supervision as sv
  from tempfile import NamedTemporaryFile
  
  roboflow.login()
  
  rf = roboflow.Roboflow()
  project = rf.workspace().project("people-detection-general")
  model = project.version(5).model
  
  x = np.zeros((1000, 1000, 3), dtype=np.uint8)
  with NamedTemporaryFile(suffix=".jpeg") as f:
      cv2.imwrite(f.name, x)
      result = model.predict(f.name).json()
  
      detections = sv.Detections.from_inference(result)
      print(detections)
  ```
  
  Here is the result:
  
  ```
  Detections(xyxy=array([], shape=(0, 4), dtype=float32), mask=None, confidence=array([], dtype=float32), class_id=array([], dtype=int64), tracker_id=None, data={})
  ```
  
  Note `data={}` and it should be `data={'class_name': []}`.
  
  ### Additional
  
  - Note: Please share a Google Colab with minimal code to test the new feature. We know it's additional work, but it will speed up the review process. The reviewer must test each change. Setting up a local environment to do this is time-consuming. Please ensure that Google Colab can be accessed without any issues (make it public). Thank you! 🙏🏻 