Environment:Arize ai Phoenix Python Runtime
| Knowledge Sources | |
|---|---|
| Domains | Infrastructure, AI_Observability |
| Last Updated | 2026-02-14 06:00 GMT |
Overview
Python 3.10+ runtime environment with core scientific computing and web framework dependencies for the Phoenix AI observability platform.
Description
This environment provides the base Python runtime required for the arize-phoenix server and all sub-packages. The main Phoenix package requires Python >=3.10, <3.14, while sub-packages (phoenix-otel, phoenix-evals) support Python >=3.8, and phoenix-client requires >=3.9. Development should target Python 3.10 to ensure compatibility across all supported versions.
The runtime includes scientific computing libraries (numpy, scipy, scikit-learn, pandas), web framework components (FastAPI, Starlette, uvicorn), database tooling (SQLAlchemy, Alembic), and serialization libraries (protobuf, PyArrow, orjson).
Usage
Use this environment for any Phoenix workflow: running the server, using the client, executing evaluations, or instrumenting applications with OpenTelemetry. It is the mandatory prerequisite for all Implementation pages in this wiki.
System Requirements
| Category | Requirement | Notes |
|---|---|---|
| OS | Linux, macOS, Windows | `sqlean.py` has a version cap on Windows (<3.50) |
| Python | >=3.10, <3.14 | Develop on 3.10 for compatibility |
| Disk | 500MB+ | For package installation and SQLite databases |
Dependencies
Python Packages (Core)
- `pandas` >= 1.0
- `numpy` != 2.0.0 (bug in umap: https://github.com/lmcinnes/umap/issues/1138)
- `scikit-learn`
- `scipy`
- `pyarrow`
- `typing-extensions` >= 4.6
- `pydantic` >= 2.1.0 (excludes 2.0.* which lacks `json_encoders` support)
- `wrapt` >= 1.17.2, < 2
Python Packages (Web/Server)
- `fastapi`
- `starlette`
- `uvicorn`
- `httpx`
- `python-multipart` (required by Starlette for form parsing)
- `strawberry-graphql` == 0.287.3
Python Packages (Database)
- `sqlalchemy[asyncio]` >= 2.0.4, < 3
- `alembic` >= 1.3.0, < 2
- `aiosqlite`
- `sqlean.py` >= 3.45.1 (full version on non-Windows; <3.50 cap on Windows)
Python Packages (Serialization/Protocol)
- `protobuf` >= 4.25.8
- `grpcio`
- `grpc-interceptor`
- `orjson`
Python Packages (Sub-packages)
- `arize-phoenix-evals` >= 2.8.0
- `arize-phoenix-otel` >= 0.14.0
- `arize-phoenix-client` >= 1.29.0
Credentials
No credentials are required for the base Python runtime. See Environment:Arize_ai_Phoenix_Phoenix_Server_Runtime for server-specific environment variables.
Quick Install
# Install the full Phoenix platform
pip install arize-phoenix
# Install with PostgreSQL support
pip install "arize-phoenix[pg]"
# Install with embeddings support (UMAP, HDBSCAN)
pip install "arize-phoenix[embeddings]"
# Install with container/production dependencies
pip install "arize-phoenix[container]"
Code Evidence
Python version constraint from `pyproject.toml:5`:
requires-python = ">=3.10, <3.14"
numpy exclusion from `pyproject.toml:25`:
"numpy!=2.0.0", # https://github.com/lmcinnes/umap/issues/1138
pydantic version constraint from `pyproject.toml:62`:
"pydantic>=2.1.0", # exclude 2.0.* since it does not support the `json_encoders` configuration setting
SQLean Windows cap from `pyproject.toml:55-56`:
"sqlean.py>=3.45.1; platform_system != 'Windows'",
"sqlean.py>=3.45.1,<3.50; platform_system == 'Windows'",
Common Errors
| Error Message | Cause | Solution |
|---|---|---|
| `requires-python >=3.10` | Python version too old | Upgrade to Python 3.10+ |
| `numpy 2.0.0 incompatible` | umap-learn crashes with numpy 2.0.0 | Pin numpy != 2.0.0 or upgrade past 2.0.0 |
| `pydantic 2.0.* json_encoders` | Missing json_encoders config | Upgrade to pydantic >= 2.1.0 |
| `sqlean.py >= 3.50 on Windows` | Windows compatibility issue | Cap sqlean.py < 3.50 on Windows |
Compatibility Notes
- Windows: `sqlean.py` must be capped at < 3.50 due to a platform-specific bug. `uvloop` is not available on Windows.
- Python 3.8-3.9: Sub-packages (phoenix-otel, phoenix-evals) support Python 3.8+, but the main server requires 3.10+.
- Development: Always develop on Python 3.10 (the lowest supported version) to catch compatibility issues early.