code: def pytest_collection_modifyitems(
      session: Session, config: Config, items: list[Item]
  ) -> None:
      subprocess.check_call(
          [
              sys.executable,
              "-m",
              "pip",
              "install",
              "-r",
              f"{os.path.join(PROJECT_DIR, 'requirements.txt')}",
          ]
      )
      subprocess.check_call(
          [sys.executable, f"{os.path.join(PROJECT_DIR, 'train.py')}"]
      )
  
file_path: BentoML/tests/e2e/bento_server_grpc/tests/conftest.py
imports: from __future__ import annotations
  import os
  import subprocess
  import sys
  import typing
  from typing import TYPE_CHECKING
  import psutil
  import pytest
label_desc: Use image node_id 1 for calling a global function with example usage: pytest_collection_modifyitems(session, config, items) without return types