Skip to main content

Logo

Unified, accurate, and beautiful LLM Benchmarking

PyPI version Python versions Types - Mypy Coverage - coverage License

| User Guide | Contribution Guideline |

UI

Introduction

Genai-bench is a powerful benchmark tool designed for comprehensive token-level performance evaluation of large language model (LLM) serving systems.

It provides detailed insights into model serving performance, offering both a user-friendly CLI and a live UI for real-time progress monitoring.

Features

  • 🛠️ CLI Tool: Validates user inputs and initiates benchmarks seamlessly.
  • 📊 Live UI Dashboard: Displays current progress, logs, and real-time metrics.
  • 📝 Rich Logs: Automatically flushed to both terminal and file upon experiment completion.
  • 📈 Experiment Analyzer: Generates comprehensive Excel reports with pricing and raw metrics data, plus flexible plot configurations (default 2x4 grid) that visualize key performance metrics including throughput, latency (TTFT, E2E, TPOT), error rates, and RPS across different traffic scenarios and concurrency levels. Supports custom plot layouts and multi-line comparisons.

Installation

Quick Start: Install with pip install genai-bench. Alternatively, check Installation Guide for other options.

How to use

Quick Start

  1. Run a benchmark against your model:

    # Text generation (chat completions)
    genai-bench benchmark --api-backend "your-backend" \
      --api-base "http://localhost:8080" \
      --api-key "your-api-key" \
      --api-model-name "your-model" \
      --task text-to-text \
      --max-time-per-run 5 \
      --max-requests-per-run 100
    
    # Image generation (OpenAI-compatible /v1/images/generations)
    genai-bench benchmark --api-backend openai \
      --api-base "http://localhost:8080" \
      --api-key "your-api-key" \
      --api-model-name "your-model" \
      --model-tokenizer "gpt2" \
      --task text-to-image \
      --traffic-scenario "I(1024,1024)" \
      --max-time-per-run 60 \
      --max-requests-per-run 10 \
      --dataset-path /path/to/image_prompts.txt
    
  2. Generate Excel reports from your results:

    genai-bench excel --experiment-folder ./experiments/your_experiment \
      --excel-name results --metric-percentile mean
    
  3. Create visualizations:

    genai-bench plot --experiments-folder ./experiments \
      --group-key traffic_scenario --preset 2x4_default
    

Next Steps

If you're new to GenAI Bench, check out the Getting Started page.

For detailed instructions, advanced configuration options, and comprehensive examples, check out the User Guide.

Development

If you are interested in contributing to GenAI-Bench, you can use the Development Guide.

Metadata

Release files for genai-bench 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for genai-bench 0.0.5
File Size Uploaded
genai_bench-0.0.5.tar.gz 126.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for genai-bench 0.0.5
File Interpreter ABI Platform
genai_bench-0.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 308.0 kB

Release files / genai_bench-0.0.5.tar.gz

Download URL genai_bench-0.0.5.tar.gz
Size 126.5 kB
Tags Source
SHA-256 checksum
How to use checksums
4a656204a947dfffee42a1bbeebb1fa19a79462c9a32beb182e9eaf879171930
BLAKE2b-256 checksum
How to use checksums
ec8d3072e6b695ecc1d6054f3dee2f3a201d3855281af28ea42fb7062346628f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / genai_bench-0.0.5-py3-none-any.whl

Download URL genai_bench-0.0.5-py3-none-any.whl
Size 181.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
15310a9a00ca816dc6008896a8d9cb4726884bf22a1dfbfeba3e5de586f34b3b
BLAKE2b-256 checksum
How to use checksums
e22c2a3baf9e7705517a0a9424a4010171d1471ad47417afcac769bbe457045b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

0.0.5 This release

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page