class_docstr: Represents a resource requirement in an execution environment for an operator.
  
  :param name: Name of the resource
  :param units_str: The string representing the units of a resource (e.g. MB for a CPU
      resource) to be used for display purposes
  :param qty: The number of units of the specified resource that are required for
      execution of the operator.
code: def __init__(self, name, units_str, qty):
      if qty < 0:
          raise AirflowException(
              f"Received resource quantity {qty} for resource {name}, "
              f"but resource quantity must be non-negative."
          )
  
      self._name = name
      self._units_str = units_str
      self._qty = qty
  
imports: from __future__ import annotations
  from airflow.configuration import conf
  from airflow.exceptions import AirflowException
label_desc: Use image node_id 1 to create a new Resource object  with example: obj = Resource(name, units_str, qty)