code: def get_models(self, active: bool = True):
      query = db.session.query(db.Predictor, db.Integration).filter_by(
          project_id=self.id,
          deleted_at=sa.null(),
          company_id=ctx.company_id,
      )
      if isinstance(active, bool):
          query = query.filter_by(active=active)
  
      query = query.join(
          db.Integration,
          db.Integration.id == db.Predictor.integration_id,
      ).order_by(db.Predictor.name, db.Predictor.id)
  
      data = []
  
      for predictor_record, integraion_record in query.all():
          data.append(
              self._get_model_data(predictor_record, integraion_record)
          )
  
      return data
  
imports: import datetime
  from typing import List
  from collections import OrderedDict
  import sqlalchemy
  import numpy
  from mindsdb_sql.parser.ast.base import ASTNode
  from mindsdb_sql import parse_sql
  from mindsdb.interfaces.storage import db
  from mindsdb.utilities.config import Config
  from mindsdb.interfaces.model.model_controller import ModelController
  from mindsdb.interfaces.database.views import ViewController
  from mindsdb.utilities.context import context
  from mindsdb.utilities.exception import EntityExistsError
  import mindsdb.utilities.profiler
label_desc: Use image node_id 14 for calling the Project obj's underlying member method code with example usage: obj.get_models(active) and returns: data