Skip to main content

No project description provided

Project description

AutoArena

Create leaderboards ranking LLM outputs against one another using automated judge evaluation

Apache-2.0 License CI Test Coverage PyPI Version Supported Python Versions Slack


  • 🏆 Rank outputs from different LLMs, RAG setups, and prompts to find the best configuration of your system
  • ⚔️ Perform automated head-to-head evaluation using judges from OpenAI, Anthropic, Cohere, and more
  • 🤖 Define and run your own custom judges, connecting to internal services or implementing bespoke logic
  • 💻 Run application locally, getting full control over your environment and data

AutoArena user interface

🔥 Getting Started

Install from PyPI:

pip install autoarena

Run as a module and visit localhost:8899 in your browser:

python -m autoarena

With the application running, getting started is simple:

  1. Create a project via the UI.
  2. Add responses from a model by selecting a CSV file with prompt and response columns.
  3. Configure an automated judge via the UI. Note that most judges require credentials, e.g. X_API_KEY in the environment where you're running AutoArena.
  4. Add responses from a second model to kick off an automated judging task using the judges you configured in the previous step to decide which of the models you've uploaded provided a better response to a given prompt.

That's it! After these steps you're fully set up for automated evaluation on AutoArena.

📄 Formatting Your Data

AutoArena requires two pieces of information to test a model: the input prompt and corresponding model response.

  • prompt: the inputs to your model. When uploading responses, any other models that have been run on the same prompts are matched and evaluated using the automated judges you have configured.
  • response: the output from your model. Judges decide which of two models produced a better response, given the same prompt.

📂 Data Storage

Data is stored in ./data/<project>.duckdb files in the directory where you invoked AutoArena. See data/README.md for more details on data storage in AutoArena.

🦾 Development

AutoArena uses uv to manage dependencies. To set up this repository for development, run:

uv venv && source .venv/bin/activate
uv pip install --all-extras -r pyproject.toml
uv tool run pre-commit install
uv run python3 -m autoarena --dev

To run AutoArena for development, you will need to run both the backend and frontend service:

  • Backend: uv run python3 -m autoarena --dev (the --dev/-d flag enables automatic service reloading when source files change)
  • Frontend: see ui/README.md

To build a release tarball in the ./dist directory:

./scripts/build.sh

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autoarena-0.1.0b6.tar.gz (1.2 MB view details)

Uploaded Source

File details

Details for the file autoarena-0.1.0b6.tar.gz.

File metadata

  • Download URL: autoarena-0.1.0b6.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for autoarena-0.1.0b6.tar.gz
Algorithm Hash digest
SHA256 9f46a4687bfea879403b3010a1c0e1b0b0fb3a097bf5fafd9e791fec55a2f67e
MD5 d4b14a4775dc5f13b8cc3140333aa7b0
BLAKE2b-256 09dbc08a42124a4397e0cb81b463361855103971b90b040224a7f68bfa3d4067

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page