Skip to main content

No project description provided

Project description

FlexEval

logo

Flexible evaluation tool for language models. Easy to extend, highly customizable!

English | 日本語 |

With FlexEval, you can evaluate language models with:

  • Zero/few-shot in-context learning tasks
  • Open-ended text-generation benchmarks such as MT-Bench with automatic evaluation using GPT-4
  • Log-probability-based multiple-choice tasks
  • Computing perplexity of text data

For more use cases, see the documentation.

Key Features

  • Flexibility: flexeval is flexible in terms of the evaluation setup and the language model to be evaluated.
  • Modularity: The core components of flexeval are easily extensible and replaceable.
  • Clarity: The results of evaluation are clear and all the details are saved.
  • Reproducibility: flexeval should be reproducible, with the ability to save and load configurations and results.

Installation

pip install flexeval

Quick Start

The following minimal example evaluates the hugging face model sbintuitions/sarashina2.2-0.5b with the commonsense_qa task.

Run Command

flexeval_lm \
  --language_model HuggingFaceLM \
  --language_model.model "sbintuitions/sarashina2.2-0.5b" \
  --eval_setup "commonsense_qa" \
  --save_dir "results/commonsense_qa"

Output

...
2025-09-03 16:22:58.434 | INFO     | flexeval.core.evaluate_generation:evaluate_generation:92 - {'exact_match': 0.3185913185913186, 'finish_reason_ratio-stop': 1.0, 'avg_output_length': 9.095004095004095, 'max_output_length': 69, 'min_output_length': 2}
...

The results saved in --saved_dir contain:

  • config.json: The configuration of the evaluation, which can be used to replicate the evaluation.
  • metrics.json: The evaluation metrics.
  • outputs.jsonl: The outputs of the language model that comes with instance-level metrics.

You can flexibly customize the evaluation by specifying command-line arguments or configuration files. Besides the Transformers model, you can also evaluate models via OpenAI ChatGPT and vLLM, and other models can be readily added!

Next Steps

  • Run flexeval_presets to check the list of off-the-shelf presets in addition to commonsense_qa. You can find the details in the Preset Configs section.
  • See Getting Started to check the tutorial examples for other kinds of tasks.
  • See the Configuration Guide to set up your evaluation.

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

flexeval-0.17.0.tar.gz (301.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flexeval-0.17.0-py3-none-any.whl (399.2 kB view details)

Uploaded Python 3

File details

Details for the file flexeval-0.17.0.tar.gz.

File metadata

  • Download URL: flexeval-0.17.0.tar.gz
  • Upload date:
  • Size: 301.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.10.20 Linux/6.14.0-1017-azure

File hashes

Hashes for flexeval-0.17.0.tar.gz
Algorithm Hash digest
SHA256 6d7e07a22d7ed9f666b4a07d7c2c38882496e4e7a936183660b6e38b7f859c9b
MD5 4c50d6714184b0cc9ac0c3ac849c0c4b
BLAKE2b-256 3758682b4741a762db65513b43365ae7fa4f986a7820a73fb2fb806a90687aa5

See more details on using hashes here.

File details

Details for the file flexeval-0.17.0-py3-none-any.whl.

File metadata

  • Download URL: flexeval-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 399.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.10.20 Linux/6.14.0-1017-azure

File hashes

Hashes for flexeval-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b3c462f0a14c6c116112c910bfcc3abc7492888000f251c7b028c165699c9b5
MD5 41af68a8b50b05eda7d070d614e02f45
BLAKE2b-256 afe1e4a6ea6da94a35f5b8de65434048c5fe75708af7b6fe2f9ac7a66a588772

See more details on using hashes here.

Supported by

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