code: def pytest_collection_modifyitems(
      session: Session, config: Config, items: list[Item]
  ):
      subprocess.check_call(
          [
              sys.executable,
              "-m",
              "pip",
              "install",
              "-r",
              f"{os.path.join(PROJECT_DIR, 'requirements.txt')}",
          ]
      )
      try:
          print(
              f"Found {bentoml.models.get('iris_clf')}, skipping model saving."
          )
      except bentoml.exceptions.NotFound:
          subprocess.check_call(
              [
                  sys.executable,
                  PROJECT_DIR.joinpath("train.py").__fspath__(),
              ]
          )
  
file_path: BentoML/examples/monitoring/task_classification/tests/conftest.py
imports: from __future__ import annotations
  import contextlib
  import os
  import subprocess
  import sys
  import typing
  from pathlib import Path
  import numpy
  import pytest
  import bentoml
  from bentoml._internal.configuration.containers import BentoMLContainer
label_desc: Use image node_id 1 for calling a global function with example usage: pytest_collection_modifyitems(session, config, items) without return types