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/tiny-lm with the commonsense_qa task.

flexeval_lm \
  --language_model HuggingFaceLM \
  --language_model.model "sbintuitions/tiny-lm" \
  --eval_setup "commonsense_qa" \
  --save_dir "results/commonsense_qa"

(The model used in the example is solely for debugging purposes and does not perform well. Try switching to your favorite model!)

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.7.2.tar.gz (186.5 kB view details)

Uploaded Source

Built Distribution

flexeval-0.7.2-py3-none-any.whl (258.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: flexeval-0.7.2.tar.gz
  • Upload date:
  • Size: 186.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.9.20 Linux/6.5.0-1025-azure

File hashes

Hashes for flexeval-0.7.2.tar.gz
Algorithm Hash digest
SHA256 37b7e7d5d9c4d0e739988351f25fb9038fa862ff0e63f1b1057e71cdc359d11d
MD5 fd5f5795b837fcba9114a3dbf3da0bab
BLAKE2b-256 2b138cf530f3c6a9545ce7bf3c0ada46e53507a47c524d54f4a8af166293ba0f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: flexeval-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 258.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.9.20 Linux/6.5.0-1025-azure

File hashes

Hashes for flexeval-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7814c93e726bc5f4ae10f100a3c148f0b01d93c6ca7cbab3fce5362756812da5
MD5 9cb23954b4b47b4ef49b61051b3a4477
BLAKE2b-256 4cb8c7c2d3592c8bae0f8ea43f6199b957ed6a15fd78d18eb4ae87b0cb5799ad

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