class_docstr: Base class for token sources.
  This class defines the interface for defining a source of tokens.
  This class can not be used as is, but must be subclassed with the
  tokenized method implemented in order to implement new token sources.
  
  
  :param name: Name of source. Useful for dealing with serializing
      multiple different versions of the same object
  :param fields: Which fields from the tokenized data to concatenate
      into sentences
  :param downsample: Whether or not to downsample the data
class_docstr_tok: ["Base","class","for","token","sources",".","This","class","defines","the","interface","for","defining","a","source","of","tokens",".","This","class","can","not","be","used","as","is",",","but","must","be","subclassed","with","the","tokenized","method","implemented","in","order","to","implement","new","token","sources",".",":","param","name",":","Name","of","source",".","Useful","for","dealing","with","serializing","multiple","different","versions","of","the","same","object",":","param","fields",":","Which","fields","from","the","tokenized","data","to","concatenate","into","sentences",":","param","downsample",":","Whether","or","not","to","downsample","the","data"]
code: def field_labels(self) -> List[str]:
      return [
          f.field_label if isinstance(f, Field) else f
          for f in self.fields
      ]
  
file_path: life2vec/src/data_new/sources/base.py
imports: from dataclasses import dataclass
  from typing import List, Union
  import dask.array
  import dask.dataframe
  import numpy
  import pandas
label_desc: Use image node_id 4 for calling the TokenSource obj's underlying member method code with example usage: obj.field_labels() and returns: unknown