def run_available_providers_runner(environ: dict) -> list[str]:
    """Run the available providers runner script with the given environment and return the available providers."""
    runner_path = Path(__file__).parent / "available_providers_runner.py"
    python_path = shutil.which("python", path=environ["PATH"])
    with tempfile.TemporaryDirectory() as temp_dir:
        output_path = Path(temp_dir).resolve() / "available_eps.json"
        run_subprocess(
            f"{python_path} {runner_path} --output_path {output_path}",
            env=environ,
            check=True,
        )
        with output_path.open("r") as f:
            return json.load(f)
Run the available providers runner script with the given environment and return the available providers.
olive/systems/utils/misc.py