class_docstr: A sample in a :class:`fiftyone.core.dataset.Dataset`.
  
  Samples store all information associated with a particular piece of data in
  a dataset, including basic metadata about the data, one or more sets of
  labels (ground truth, user-provided, or FiftyOne-generated), and additional
  features associated with subsets of the data and/or label sets.
  
  .. note::
  
      :class:`Sample` instances that are **in datasets** are singletons,
      i.e.,  ``dataset[sample_id]`` will always return the same
      :class:`Sample` instance.
  
  Args:
      filepath: the path to the data on disk. The path is converted to an
          absolute path (if necessary) via
          :func:`fiftyone.core.storage.normalize_path`
      tags (None): a list of tags for the sample
      metadata (None): a :class:`fiftyone.core.metadata.Metadata` instance
      **kwargs: additional fields to dynamically set on the sample
class_docstr_tok: ["A","sample","in","a",":","class",":","`","fiftyone.core.dataset.Dataset","`",".","Samples","store","all","information","associated","with","a","particular","piece","of","data","in","a","dataset",",","including","basic","metadata","about","the","data",",","one","or","more","sets","of","labels","(","ground","truth",",","user-provided",",","or","FiftyOne-generated",")",",","and","additional","features","associated","with","subsets","of","the","data","and\/or","label","sets",".","..","note",":",":",":","class",":","`","Sample","`","instances","that","are","*","*","in","datasets","*","*","are","singletons",",","i.e.",",","``","dataset","[","sample_id","]","``","will","always","return","the","same",":","class",":","`","Sample","`","instance",".","Args",":","filepath",":","the","path","to","the","data","on","disk",".","The","path","is","converted","to","an","absolute","path","(","if","necessary",")","via",":","func",":","`","fiftyone.core.storage.normalize_path","`","tags","(","None",")",":","a","list","of","tags","for","the","sample","metadata","(","None",")",":","a",":","class",":","`","fiftyone.core.metadata.Metadata","`","instance","*","*","kwargs",":","additional","fields","to","dynamically","set","on","the","sample"]
code: def __init__(self, filepath, tags=None, metadata=None, **kwargs):
      super().__init__(
          filepath=filepath, tags=tags, metadata=metadata, **kwargs
      )
  
      if self.media_type == fomm.VIDEO:
          self._frames = fofr.Frames(self)
      else:
          self._frames = None
  
imports: import os
  from bson import ObjectId
  from fiftyone.core.document import Document, DocumentView
  import fiftyone.core.frame
  import fiftyone.core.frame_utils
  import fiftyone.core.labels
  import fiftyone.core.metadata
  import fiftyone.core.media
  import fiftyone.core.odm
  import fiftyone.core.utils
  from fiftyone.core.singletons import SampleSingleton
label_desc: Use image node_id 1 to create a new Sample object from inherited base classes: _SampleMixin, Document with example: obj = Sample(filepath, tags, metadata)