Installation
Requirements
- Python 3.10+
- uv package manager
- AWS credentials — for LLM-based metrics via Bedrock, and for persistence via DynamoDB/S3
From the repository (recommended)
pyproject.toml + uv.lock are the single source of truth for dependencies.
git clone <repo-url>
cd uaef
uv sync # install everything from the lockfile
uv sync installs everything needed to run every metric and use every capability — all
metric backends (RAGAS, DeepEval), every adapter, analysis and reporting, the Bedrock LLM
judge, and the UAEFClient remote SDK. Nothing else to install.
The only optional add-on is a Jupyter kernel for notebook use:
uv sync --extra notebooks # or --extra all, which is core + the notebook kernel
The capability extras are no-ops
integrations, langgraph, analysis, judge, client, and server are retained as
aliases so older install commands keep resolving. Every capability already ships in the
required core, so these extras add nothing.
From a distributed package
If you received UAEF as a .whl or .tar.gz:
uv pip install ./packages/uaef-0.2.0-py3-none-any.whl
For development
uv sync --extra dev # adds pytest, black, ruff, mypy, hypothesis
uv run pytest
See Development for the dependency rules, the notebook output filter, and code style.