code: def __init__(self, session, **kwargs):
      # TODO: [AT] Find elegant way to check mutually exclusive args
      if ("query" not in kwargs and "collection" not in kwargs) or (
          "query" in kwargs and "collection" in kwargs
      ):
          raise ValueError(
              "Cannot initialize ModelMappedCollection. Please provide 'query' or 'collection'."
          )
  
      self.session = session
      self.query = kwargs.get("query")
      self._cache = kwargs.get("collection")
  
file_path: aim/aim/storage/structured/sql_engine/utils.py
imports: from abc import ABCMeta
  from typing import Iterator, Collection, TypeVar, Union, Callable
  from sqlalchemy import text
label_desc: Use image node_id 1 to create a new ModelMappedCollection object from inherited base classes: Collection with example: obj = ModelMappedCollection(session)