| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | import importlib.metadata |
| | import importlib.util |
| | from functools import lru_cache |
| | from typing import TYPE_CHECKING |
| |
|
| | from packaging import version |
| |
|
| |
|
| | if TYPE_CHECKING: |
| | from packaging.version import Version |
| |
|
| |
|
| | def _is_package_available(name: str) -> bool: |
| | return importlib.util.find_spec(name) is not None |
| |
|
| |
|
| | def _get_package_version(name: str) -> "Version": |
| | try: |
| | return version.parse(importlib.metadata.version(name)) |
| | except Exception: |
| | return version.parse("0.0.0") |
| |
|
| |
|
| | def is_pyav_available(): |
| | return _is_package_available("av") |
| |
|
| |
|
| | def is_librosa_available(): |
| | return _is_package_available("librosa") |
| |
|
| |
|
| | def is_fastapi_available(): |
| | return _is_package_available("fastapi") |
| |
|
| |
|
| | def is_galore_available(): |
| | return _is_package_available("galore_torch") |
| |
|
| |
|
| | def is_apollo_available(): |
| | return _is_package_available("apollo_torch") |
| |
|
| |
|
| | def is_gradio_available(): |
| | return _is_package_available("gradio") |
| |
|
| |
|
| | def is_matplotlib_available(): |
| | return _is_package_available("matplotlib") |
| |
|
| |
|
| | def is_pillow_available(): |
| | return _is_package_available("PIL") |
| |
|
| |
|
| | def is_ray_available(): |
| | return _is_package_available("ray") |
| |
|
| |
|
| | def is_requests_available(): |
| | return _is_package_available("requests") |
| |
|
| |
|
| | def is_rouge_available(): |
| | return _is_package_available("rouge_chinese") |
| |
|
| |
|
| | def is_starlette_available(): |
| | return _is_package_available("sse_starlette") |
| |
|
| |
|
| | @lru_cache |
| | def is_transformers_version_greater_than(content: str): |
| | return _get_package_version("transformers") >= version.parse(content) |
| |
|
| |
|
| | def is_uvicorn_available(): |
| | return _is_package_available("uvicorn") |
| |
|
| |
|
| | def is_vllm_available(): |
| | return _is_package_available("vllm") |
| |
|