Buckets:
| # Metrics | |
| ## Metrics | |
| [//]: # (TODO: aenum.Enum raises error when generating docs: not supported by inspect.signature. See: https://github.com/ethanfurman/aenum/issues/44) | |
| [//]: # (### Metrics) | |
| [//]: # ([[autodoc]] metrics.metrics.Metrics) | |
| ### Metric[[lighteval.metrics.Metric]] | |
| #### lighteval.metrics.Metric[[lighteval.metrics.Metric]] | |
| ```python | |
| lighteval.metrics.Metric(metric_name: str, higher_is_better: bool, category: SamplingMethod, sample_level_fn: lighteval.metrics.metrics_sample.SampleLevelComputation | lighteval.metrics.sample_preparator.Preparator, corpus_level_fn: typing.Union[lighteval.metrics.metrics_corpus.CorpusLevelComputation, typing.Callable], batched_compute: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/metric_utils.py#L33) | |
| ### CorpusLevelMetric[[lighteval.metrics.utils.metric_utils.CorpusLevelMetric]] | |
| #### lighteval.metrics.utils.metric_utils.CorpusLevelMetric[[lighteval.metrics.utils.metric_utils.CorpusLevelMetric]] | |
| ```python | |
| lighteval.metrics.utils.metric_utils.CorpusLevelMetric(metric_name: str, higher_is_better: bool, category: SamplingMethod, sample_level_fn: lighteval.metrics.metrics_sample.SampleLevelComputation | lighteval.metrics.sample_preparator.Preparator, corpus_level_fn: typing.Union[lighteval.metrics.metrics_corpus.CorpusLevelComputation, typing.Callable], batched_compute: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/metric_utils.py#L117) | |
| Metric computed over the whole corpora, with computations happening at the aggregation phase | |
| ### SampleLevelMetric[[lighteval.metrics.utils.metric_utils.SampleLevelMetric]] | |
| #### lighteval.metrics.utils.metric_utils.SampleLevelMetric[[lighteval.metrics.utils.metric_utils.SampleLevelMetric]] | |
| ```python | |
| lighteval.metrics.utils.metric_utils.SampleLevelMetric(metric_name: str, higher_is_better: bool, category: SamplingMethod, sample_level_fn: lighteval.metrics.metrics_sample.SampleLevelComputation | lighteval.metrics.sample_preparator.Preparator, corpus_level_fn: typing.Union[lighteval.metrics.metrics_corpus.CorpusLevelComputation, typing.Callable], batched_compute: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/metric_utils.py#L124) | |
| Metric computed per sample, then aggregated over the corpus | |
| ### MetricGrouping[[lighteval.metrics.utils.metric_utils.MetricGrouping]] | |
| #### lighteval.metrics.utils.metric_utils.MetricGrouping[[lighteval.metrics.utils.metric_utils.MetricGrouping]] | |
| ```python | |
| lighteval.metrics.utils.metric_utils.MetricGrouping(metric_name: list, higher_is_better: dict, category: SamplingMethod, sample_level_fn: lighteval.metrics.metrics_sample.SampleLevelComputation | lighteval.metrics.sample_preparator.Preparator, corpus_level_fn: dict, batched_compute: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/metric_utils.py#L106) | |
| Some metrics are more advantageous to compute together at once. | |
| For example, if a costly preprocessing is the same for all metrics, it makes more sense to compute it once. | |
| ### CorpusLevelMetricGrouping[[lighteval.metrics.utils.metric_utils.CorpusLevelMetricGrouping]] | |
| #### lighteval.metrics.utils.metric_utils.CorpusLevelMetricGrouping[[lighteval.metrics.utils.metric_utils.CorpusLevelMetricGrouping]] | |
| ```python | |
| lighteval.metrics.utils.metric_utils.CorpusLevelMetricGrouping(metric_name: list, higher_is_better: dict, category: SamplingMethod, sample_level_fn: lighteval.metrics.metrics_sample.SampleLevelComputation | lighteval.metrics.sample_preparator.Preparator, corpus_level_fn: dict, batched_compute: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/metric_utils.py#L131) | |
| MetricGrouping computed over the whole corpora, with computations happening at the aggregation phase | |
| ### SampleLevelMetricGrouping[[lighteval.metrics.utils.metric_utils.SampleLevelMetricGrouping]] | |
| #### lighteval.metrics.utils.metric_utils.SampleLevelMetricGrouping[[lighteval.metrics.utils.metric_utils.SampleLevelMetricGrouping]] | |
| ```python | |
| lighteval.metrics.utils.metric_utils.SampleLevelMetricGrouping(metric_name: list, higher_is_better: dict, category: SamplingMethod, sample_level_fn: lighteval.metrics.metrics_sample.SampleLevelComputation | lighteval.metrics.sample_preparator.Preparator, corpus_level_fn: dict, batched_compute: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/metric_utils.py#L138) | |
| MetricGrouping are computed per sample, then aggregated over the corpus | |
| ## Corpus Metrics | |
| ### CorpusLevelF1Score[[lighteval.metrics.metrics_corpus.CorpusLevelF1Score]] | |
| #### lighteval.metrics.metrics_corpus.CorpusLevelF1Score[[lighteval.metrics.metrics_corpus.CorpusLevelF1Score]] | |
| ```python | |
| lighteval.metrics.metrics_corpus.CorpusLevelF1Score(average: str, num_classes: int = 2) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L81) | |
| #### compute_corpus[[lighteval.metrics.metrics_corpus.CorpusLevelF1Score.compute_corpus]] | |
| ```python | |
| compute_corpus(items: list) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L96) | |
| Computes the metric score over all the corpus generated items, by using the scikit learn implementation. | |
| ### CorpusLevelPerplexityMetric[[lighteval.metrics.metrics_corpus.CorpusLevelPerplexityMetric]] | |
| #### lighteval.metrics.metrics_corpus.CorpusLevelPerplexityMetric[[lighteval.metrics.metrics_corpus.CorpusLevelPerplexityMetric]] | |
| ```python | |
| lighteval.metrics.metrics_corpus.CorpusLevelPerplexityMetric(metric_type: str) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L164) | |
| #### compute_corpus[[lighteval.metrics.metrics_corpus.CorpusLevelPerplexityMetric.compute_corpus]] | |
| ```python | |
| compute_corpus(items: list) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L182) | |
| Computes the metric score over all the corpus generated items. | |
| ### CorpusLevelTranslationMetric[[lighteval.metrics.metrics_corpus.CorpusLevelTranslationMetric]] | |
| #### lighteval.metrics.metrics_corpus.CorpusLevelTranslationMetric[[lighteval.metrics.metrics_corpus.CorpusLevelTranslationMetric]] | |
| ```python | |
| lighteval.metrics.metrics_corpus.CorpusLevelTranslationMetric(metric_type: str, lang: typing.Literal['zh', 'ja', 'ko', ''] = '') | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L116) | |
| #### compute_corpus[[lighteval.metrics.metrics_corpus.CorpusLevelTranslationMetric.compute_corpus]] | |
| ```python | |
| compute_corpus(items: list) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L142) | |
| Computes the metric score over all the corpus generated items, by using the sacrebleu implementation. | |
| ### MatthewsCorrCoef[[lighteval.metrics.metrics_corpus.MatthewsCorrCoef]] | |
| #### lighteval.metrics.metrics_corpus.MatthewsCorrCoef[[lighteval.metrics.metrics_corpus.MatthewsCorrCoef]] | |
| ```python | |
| lighteval.metrics.metrics_corpus.MatthewsCorrCoef() | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L66) | |
| #### compute_corpus[[lighteval.metrics.metrics_corpus.MatthewsCorrCoef.compute_corpus]] | |
| ```python | |
| compute_corpus(items: list) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_corpus.py#L67) | |
| **Parameters:** | |
| items (list[dict]) : List of GenerativeCorpusMetricInput | |
| **Returns:** `float` | |
| Score | |
| Computes the Matthews Correlation Coefficient, using scikit learn ([doc](https://scikit-learn.org/stable/modules/generated/sklearn.metrics.matthews_corrcoef.html)). | |
| ## Sample Metrics | |
| ### ExactMatches[[lighteval.metrics.metrics_sample.ExactMatches]] | |
| #### lighteval.metrics.metrics_sample.ExactMatches[[lighteval.metrics.metrics_sample.ExactMatches]] | |
| ```python | |
| lighteval.metrics.metrics_sample.ExactMatches(aggregation_function: typing.Callable[[list[float]], float] = <built-in function max>, normalize_gold: typing.Optional[typing.Callable[[str], str]] = None, normalize_pred: typing.Optional[typing.Callable[[str], str]] = None, strip_strings: bool = False, type_exact_match: str = 'full') | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L81) | |
| #### compute[[lighteval.metrics.metrics_sample.ExactMatches.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L118) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Aggregated score over the current sample's items. | |
| Computes the metric over a list of golds and predictions for one single sample. | |
| #### compute_one_item[[lighteval.metrics.metrics_sample.ExactMatches.compute_one_item]] | |
| ```python | |
| compute_one_item(gold: str, pred: str) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L137) | |
| **Parameters:** | |
| gold (str) : One of the possible references | |
| pred (str) : One of the possible predictions | |
| **Returns:** `float` | |
| The exact match score. Will be 1 for a match, 0 otherwise. | |
| Compares two strings only. | |
| ### F1_score[[lighteval.metrics.metrics_sample.F1_score]] | |
| #### lighteval.metrics.metrics_sample.F1_score[[lighteval.metrics.metrics_sample.F1_score]] | |
| ```python | |
| lighteval.metrics.metrics_sample.F1_score(aggregation_function: typing.Callable[[list[float]], float] = <built-in function max>, normalize_gold: typing.Optional[typing.Callable[[str], str]] = None, normalize_pred: typing.Optional[typing.Callable[[str], str]] = None, strip_strings: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L170) | |
| #### compute[[lighteval.metrics.metrics_sample.F1_score.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L197) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Aggregated score over the current sample's items. | |
| Computes the metric over a list of golds and predictions for one single sample. | |
| #### compute_one_item[[lighteval.metrics.metrics_sample.F1_score.compute_one_item]] | |
| ```python | |
| compute_one_item(gold: str, pred: str) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L217) | |
| **Parameters:** | |
| gold (str) : One of the possible references | |
| pred (str) : One of the possible predictions | |
| **Returns:** `float` | |
| The f1 score over the bag of words, computed using nltk. | |
| Compares two strings only. | |
| ### LoglikelihoodAcc[[lighteval.metrics.metrics_sample.LoglikelihoodAcc]] | |
| #### lighteval.metrics.metrics_sample.LoglikelihoodAcc[[lighteval.metrics.metrics_sample.LoglikelihoodAcc]] | |
| ```python | |
| lighteval.metrics.metrics_sample.LoglikelihoodAcc(logprob_normalization: lighteval.metrics.normalizations.LogProbCharNorm | lighteval.metrics.normalizations.LogProbTokenNorm | lighteval.metrics.normalizations.LogProbPMINorm | None = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L243) | |
| #### compute[[lighteval.metrics.metrics_sample.LoglikelihoodAcc.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L254) | |
| **Parameters:** | |
| doc (Doc) : The document containing choices and gold indices. | |
| model_response (ModelResponse) : The model's response containing logprobs. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `int` | |
| The eval score: 1 if the best log-prob choice is in gold, 0 otherwise. | |
| Computes the log likelihood accuracy: is the choice with the highest logprob in `choices_logprob` present | |
| in the `gold_ixs`? | |
| ### NormalizedMultiChoiceProbability[[lighteval.metrics.metrics_sample.NormalizedMultiChoiceProbability]] | |
| #### lighteval.metrics.metrics_sample.NormalizedMultiChoiceProbability[[lighteval.metrics.metrics_sample.NormalizedMultiChoiceProbability]] | |
| ```python | |
| lighteval.metrics.metrics_sample.NormalizedMultiChoiceProbability(log_prob_normalization: lighteval.metrics.normalizations.LogProbCharNorm | lighteval.metrics.normalizations.LogProbTokenNorm | lighteval.metrics.normalizations.LogProbPMINorm | None = None, aggregation_function: typing.Callable[[numpy.ndarray], float] = <function max at 0x7f69f4fd73f0>) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L297) | |
| #### compute[[lighteval.metrics.metrics_sample.NormalizedMultiChoiceProbability.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L313) | |
| **Parameters:** | |
| doc (Doc) : The document containing choices and gold indices. | |
| model_response (ModelResponse) : The model's response containing logprobs. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| The probability of the best log-prob choice being a gold choice. | |
| Computes the log likelihood probability: chance of choosing the best choice. | |
| ### Probability[[lighteval.metrics.metrics_sample.Probability]] | |
| #### lighteval.metrics.metrics_sample.Probability[[lighteval.metrics.metrics_sample.Probability]] | |
| ```python | |
| lighteval.metrics.metrics_sample.Probability(normalization: lighteval.metrics.normalizations.LogProbTokenNorm | None = None, aggregation_function: typing.Callable[[numpy.ndarray], float] = <function max at 0x7f69f4fd73f0>) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L357) | |
| #### compute[[lighteval.metrics.metrics_sample.Probability.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L373) | |
| **Parameters:** | |
| doc (Doc) : The document containing choices and gold indices. | |
| model_response (ModelResponse) : The model's response containing logprobs. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| The probability of the best log-prob choice being a gold choice. | |
| Computes the log likelihood probability: chance of choosing the best choice. | |
| ### Recall[[lighteval.metrics.metrics_sample.Recall]] | |
| #### lighteval.metrics.metrics_sample.Recall[[lighteval.metrics.metrics_sample.Recall]] | |
| ```python | |
| lighteval.metrics.metrics_sample.Recall(k: int) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L408) | |
| #### compute[[lighteval.metrics.metrics_sample.Recall.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L418) | |
| **Parameters:** | |
| doc (Doc) : The document containing choices and gold indices. | |
| model_response (ModelResponse) : The model's response containing logprobs. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `int` | |
| Score: 1 if one of the top level predicted choices was correct, 0 otherwise. | |
| Computes the recall at the requested depth level: looks at the `n` best predicted choices (with the | |
| highest log probabilities) and see if there is an actual gold among them. | |
| ### MRR[[lighteval.metrics.metrics_sample.MRR]] | |
| #### lighteval.metrics.metrics_sample.MRR[[lighteval.metrics.metrics_sample.MRR]] | |
| ```python | |
| lighteval.metrics.metrics_sample.MRR(length_normalization: bool = False) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L438) | |
| #### compute[[lighteval.metrics.metrics_sample.MRR.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L447) | |
| **Parameters:** | |
| model_response (ModelResponse) : The model's response containing logprobs. | |
| doc (Doc) : The document containing choices and gold indices. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| MRR score. | |
| Mean reciprocal rank. Measures the quality of a ranking of choices (ordered by correctness). | |
| ### ROUGE[[lighteval.metrics.metrics_sample.ROUGE]] | |
| #### lighteval.metrics.metrics_sample.ROUGE[[lighteval.metrics.metrics_sample.ROUGE]] | |
| ```python | |
| lighteval.metrics.metrics_sample.ROUGE(methods: str | list[str], multiple_golds: bool = False, bootstrap: bool = False, normalize_gold: typing.Optional[typing.Callable] = None, normalize_pred: typing.Optional[typing.Callable] = None, aggregation_function: typing.Optional[typing.Callable] = None, tokenizer: object = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L486) | |
| #### compute[[lighteval.metrics.metrics_sample.ROUGE.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L533) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float or dict` | |
| Aggregated score over the current sample's items. | |
| If several rouge functions have been selected, returns a dict which maps name and scores. | |
| Computes the metric(s) over a list of golds and predictions for one single sample. | |
| ### BertScore[[lighteval.metrics.metrics_sample.BertScore]] | |
| #### lighteval.metrics.metrics_sample.BertScore[[lighteval.metrics.metrics_sample.BertScore]] | |
| ```python | |
| lighteval.metrics.metrics_sample.BertScore(normalize_gold: typing.Optional[typing.Callable] = None, normalize_pred: typing.Optional[typing.Callable] = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L598) | |
| #### compute[[lighteval.metrics.metrics_sample.BertScore.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L628) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `dict` | |
| Scores over the current sample's items. | |
| Computes the prediction, recall and f1 score using the bert scorer. | |
| ### Extractiveness[[lighteval.metrics.metrics_sample.Extractiveness]] | |
| #### lighteval.metrics.metrics_sample.Extractiveness[[lighteval.metrics.metrics_sample.Extractiveness]] | |
| ```python | |
| lighteval.metrics.metrics_sample.Extractiveness(normalize_input: callable = <function remove_braces at 0x7f68fefa1120>, normalize_pred: callable = <function remove_braces_and_strip at 0x7f68fefa11b0>, input_column: str = 'text', language: typing.Literal['en', 'de', 'fr', 'it'] = 'en') | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L661) | |
| #### compute[[lighteval.metrics.metrics_sample.Extractiveness.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L685) | |
| **Parameters:** | |
| doc (Doc) : The document containing input text. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** dict[str, float] | |
| The extractiveness scores. | |
| Compute the extractiveness of the predictions. | |
| This method calculates coverage, density, and compression scores for a single | |
| prediction against the input text. | |
| ### Faithfulness[[lighteval.metrics.metrics_sample.Faithfulness]] | |
| #### lighteval.metrics.metrics_sample.Faithfulness[[lighteval.metrics.metrics_sample.Faithfulness]] | |
| ```python | |
| lighteval.metrics.metrics_sample.Faithfulness(normalize_input: typing.Callable = <function remove_braces at 0x7f68fefa1120>, normalize_pred: typing.Callable = <function remove_braces_and_strip at 0x7f68fefa11b0>, input_column: str = 'text') | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L717) | |
| #### compute[[lighteval.metrics.metrics_sample.Faithfulness.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L738) | |
| **Parameters:** | |
| doc (Doc) : The document containing input text. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** dict[str, float] | |
| The faithfulness scores. | |
| Compute the faithfulness of the predictions. | |
| The SummaCZS (Summary Content Zero-Shot) model is used with configurable granularity and model variation. | |
| ### BLEURT[[lighteval.metrics.metrics_sample.BLEURT]] | |
| #### lighteval.metrics.metrics_sample.BLEURT[[lighteval.metrics.metrics_sample.BLEURT]] | |
| ```python | |
| lighteval.metrics.metrics_sample.BLEURT() | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L765) | |
| #### compute[[lighteval.metrics.metrics_sample.BLEURT.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L786) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Score over the current sample's items. | |
| Uses the stored BLEURT scorer to compute the score on the current sample. | |
| ### BLEU[[lighteval.metrics.metrics_sample.BLEU]] | |
| #### lighteval.metrics.metrics_sample.BLEU[[lighteval.metrics.metrics_sample.BLEU]] | |
| ```python | |
| lighteval.metrics.metrics_sample.BLEU(n_gram: int) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L805) | |
| #### compute[[lighteval.metrics.metrics_sample.BLEU.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L815) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Score over the current sample's items. | |
| Computes the sentence level BLEU between the golds and each prediction, then takes the average. | |
| ### StringDistance[[lighteval.metrics.metrics_sample.StringDistance]] | |
| #### lighteval.metrics.metrics_sample.StringDistance[[lighteval.metrics.metrics_sample.StringDistance]] | |
| ```python | |
| lighteval.metrics.metrics_sample.StringDistance(metric_types: list[str] | str, strip_prediction: bool = True) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L847) | |
| #### compute[[lighteval.metrics.metrics_sample.StringDistance.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L869) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `dict` | |
| The different scores computed | |
| Computes all the requested metrics on the golds and prediction. | |
| #### edit_similarity[[lighteval.metrics.metrics_sample.StringDistance.edit_similarity]] | |
| ```python | |
| edit_similarity(s1, s2) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L927) | |
| **Returns:** `float` | |
| Edit similarity score between 0 and 1 | |
| Compute the edit similarity between two lists of strings. | |
| Edit similarity is also used in the paper | |
| Lee, Katherine, et al. | |
| "Deduplicating training data makes language models better." | |
| arXiv preprint arXiv:2107.06499 (2021). | |
| #### longest_common_prefix_length[[lighteval.metrics.metrics_sample.StringDistance.longest_common_prefix_length]] | |
| ```python | |
| longest_common_prefix_length(s1: ndarray, s2: ndarray) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L920) | |
| Compute the length of the longest common prefix. | |
| ### Metrics allowing sampling | |
| #### PassAtK[[lighteval.metrics.metrics_sample.PassAtK]] | |
| #### lighteval.metrics.metrics_sample.PassAtK[[lighteval.metrics.metrics_sample.PassAtK]] | |
| ```python | |
| lighteval.metrics.metrics_sample.PassAtK(k: int | None = None, n: int | None = None, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1263) | |
| #### compute[[lighteval.metrics.metrics_sample.PassAtK.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1277) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Aggregated score over the current sample's items. | |
| Computes the metric over a list of golds and predictions for one single item with possibly many samples. | |
| It applies normalisation (if needed) to model prediction and gold, computes their per prediction score, | |
| then aggregates the scores over the samples using a pass@k. | |
| #### pass_at_k[[lighteval.metrics.metrics_sample.PassAtK.pass_at_k]] | |
| ```python | |
| pass_at_k(all_scores: list) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1318) | |
| Algo from https://arxiv.org/pdf/2107.03374 | |
| #### MajAtN[[lighteval.metrics.metrics_sample.MajAtN]] | |
| #### lighteval.metrics.metrics_sample.MajAtN[[lighteval.metrics.metrics_sample.MajAtN]] | |
| ```python | |
| lighteval.metrics.metrics_sample.MajAtN(n: int | None = None, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1211) | |
| #### compute[[lighteval.metrics.metrics_sample.MajAtN.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1224) | |
| **Parameters:** | |
| doc (Doc) : The document containing gold references. | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Aggregated score over the current sample's items. | |
| Computes the metric over a list of golds and predictions for one single sample. | |
| It applies normalisation (if needed) to model prediction and gold, and takes the most frequent answer of all the available ones, | |
| then compares it to the gold. | |
| #### AvgAtN[[lighteval.metrics.metrics_sample.AvgAtN]] | |
| #### lighteval.metrics.metrics_sample.AvgAtN[[lighteval.metrics.metrics_sample.AvgAtN]] | |
| ```python | |
| lighteval.metrics.metrics_sample.AvgAtN(n: int | None = None, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1175) | |
| #### compute[[lighteval.metrics.metrics_sample.AvgAtN.compute]] | |
| ```python | |
| compute(doc: Doc, model_response: ModelResponse, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1187) | |
| **Parameters:** | |
| model_response (ModelResponse) : The model's response containing predictions. | |
| doc (Doc) : The document containing gold references. | |
| - ****kwargs** : Additional keyword arguments. | |
| **Returns:** `float` | |
| Aggregated score over the current sample's items. | |
| Computes the metric over a list of golds and predictions for one single sample. | |
| It applies normalisation (if needed) to model prediction and gold, and takes the most frequent answer of all the available ones, | |
| then compares it to the gold. | |
| ## LLM-as-a-Judge | |
| ### JudgeLM[[lighteval.metrics.utils.llm_as_judge.JudgeLM]] | |
| #### lighteval.metrics.utils.llm_as_judge.JudgeLM[[lighteval.metrics.utils.llm_as_judge.JudgeLM]] | |
| ```python | |
| lighteval.metrics.utils.llm_as_judge.JudgeLM(model: str, templates: typing.Callable, process_judge_response: typing.Callable, judge_backend: typing.Literal['litellm', 'openai', 'transformers', 'tgi', 'vllm', 'inference-providers'], url: str | None = None, api_key: str | None = None, max_tokens: int | None = None, response_format: BaseModel = None, hf_provider: typing.Optional[typing.Literal['black-forest-labs', 'cerebras', 'cohere', 'fal-ai', 'fireworks-ai', 'inference-providers', 'hyperbolic', 'nebius', 'novita', 'openai', 'replicate', 'sambanova', 'together']] = None, backend_options: dict | None = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/llm_as_judge.py#L67) | |
| **Parameters:** | |
| model (str) : The name of the model. | |
| templates (Callable) : A function taking into account the question, options, answer, and gold and returning the judge prompt. | |
| process_judge_response (Callable) : A function for processing the judge's response. | |
| judge_backend (Literal["litellm", "openai", "transformers", "tgi", "vllm", "inference-providers"]) : The backend for the judge. | |
| url (str | None) : The URL for the OpenAI API. | |
| api_key (str | None) : The API key for the OpenAI API (either OpenAI or HF key). Stored internally as a SecretStr so it is masked in logs, reprs, and serialized configs. | |
| max_tokens (int) : The maximum number of tokens to generate. Defaults to 512. | |
| response_format (BaseModel | None) : The format of the response from the API, used for the OpenAI and TGI backend. | |
| hf_provider (Literal["black-forest-labs", "cerebras", "cohere", "fal-ai", "fireworks-ai", : "inference-providers", "hyperbolic", "nebius", "novita", "openai", "replicate", "sambanova", "together"] | None): The HuggingFace provider when using the inference-providers backend. | |
| backend_options (dict | None) : Options for the backend. Currently only supported for litellm. | |
| A class representing a judge for evaluating answers using either the chosen backend. | |
| Methods: | |
| evaluate_answer: Evaluates an answer using the OpenAI API or Transformers library. | |
| __lazy_load_client: Lazy loads the OpenAI client or Transformers pipeline. | |
| __call_api: Calls the API to get the judge's response. | |
| __call_transformers: Calls the Transformers pipeline to get the judge's response. | |
| __call_vllm: Calls the VLLM pipeline to get the judge's response. | |
| #### dict_of_lists_to_list_of_dicts[[lighteval.metrics.utils.llm_as_judge.JudgeLM.dict_of_lists_to_list_of_dicts]] | |
| ```python | |
| dict_of_lists_to_list_of_dicts(dict_of_lists) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/llm_as_judge.py#L210) | |
| **Parameters:** | |
| dict_of_lists : A dictionary where each value is a list. All lists are expected to have the same length. | |
| **Returns:** | |
| A list of dictionaries. | |
| Transform a dictionary of lists into a list of dictionaries. | |
| Each dictionary in the output list will contain one element from each list in the input dictionary, | |
| with the same keys as the input dictionary. | |
| Example: | |
| >>> dict_of_lists_to_list_of_dicts({'k': [1, 2, 3], 'k2': ['a', 'b', 'c']}) | |
| [{'k': 1, 'k2': 'a'}, {'k': 2, 'k2': 'b'}, {'k': 3, 'k2': 'c'}] | |
| #### evaluate_answer[[lighteval.metrics.utils.llm_as_judge.JudgeLM.evaluate_answer]] | |
| ```python | |
| evaluate_answer(question: str, answer: str, options: list[str] | None = None, gold: str | None = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/utils/llm_as_judge.py#L278) | |
| **Parameters:** | |
| question (str) : The prompt asked to the evaluated model. | |
| answer (str) : Answer given by the evaluated model. | |
| options (list[str] | None) : Optional list of answer options. | |
| gold (str | None) : Optional reference answer. | |
| **Returns:** | |
| A tuple containing the score, prompts, and judgment. | |
| Evaluates an answer using either Transformers or OpenAI API. | |
| ### JudgeLLM[[lighteval.metrics.metrics_sample.JudgeLLM]] | |
| #### lighteval.metrics.metrics_sample.JudgeLLM[[lighteval.metrics.metrics_sample.JudgeLLM]] | |
| ```python | |
| lighteval.metrics.metrics_sample.JudgeLLM(judge_model_name: str, template: typing.Callable, process_judge_response: typing.Callable, judge_backend: typing.Literal['litellm', 'openai', 'transformers', 'vllm', 'tgi', 'inference-providers'], short_judge_name: str | None = None, response_format: pydantic.main.BaseModel | None = None, url: str | None = None, api_key: str | None = None, hf_provider: str | None = None, max_tokens: int | None = None, backend_options: dict | None = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L942) | |
| ### JudgeLLMMTBench[[lighteval.metrics.metrics_sample.JudgeLLMMTBench]] | |
| #### lighteval.metrics.metrics_sample.JudgeLLMMTBench[[lighteval.metrics.metrics_sample.JudgeLLMMTBench]] | |
| ```python | |
| lighteval.metrics.metrics_sample.JudgeLLMMTBench(judge_model_name: str, template: typing.Callable, process_judge_response: typing.Callable, judge_backend: typing.Literal['litellm', 'openai', 'transformers', 'vllm', 'tgi', 'inference-providers'], short_judge_name: str | None = None, response_format: pydantic.main.BaseModel | None = None, url: str | None = None, api_key: str | None = None, hf_provider: str | None = None, max_tokens: int | None = None, backend_options: dict | None = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1046) | |
| #### compute[[lighteval.metrics.metrics_sample.JudgeLLMMTBench.compute]] | |
| ```python | |
| compute(model_response: list, doc: list, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1047) | |
| Compute the score of a generative task using a llm as a judge. | |
| The generative task can be multiturn with 2 turns max, in that case, we | |
| return scores for turn 1 and 2. Also returns user_prompt and judgement | |
| which are ignored later by the aggregator. | |
| ### JudgeLLMMixEval[[lighteval.metrics.metrics_sample.JudgeLLMMixEval]] | |
| #### lighteval.metrics.metrics_sample.JudgeLLMMixEval[[lighteval.metrics.metrics_sample.JudgeLLMMixEval]] | |
| ```python | |
| lighteval.metrics.metrics_sample.JudgeLLMMixEval(judge_model_name: str, template: typing.Callable, process_judge_response: typing.Callable, judge_backend: typing.Literal['litellm', 'openai', 'transformers', 'vllm', 'tgi', 'inference-providers'], short_judge_name: str | None = None, response_format: pydantic.main.BaseModel | None = None, url: str | None = None, api_key: str | None = None, hf_provider: str | None = None, max_tokens: int | None = None, backend_options: dict | None = None) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1081) | |
| #### compute[[lighteval.metrics.metrics_sample.JudgeLLMMixEval.compute]] | |
| ```python | |
| compute(responses: list, docs: list, **kwargs) | |
| ``` | |
| [Source](https://github.com/huggingface/lighteval/blob/vr_1326/src/lighteval/metrics/metrics_sample.py#L1082) | |
| Compute the score of a generative task using a llm as a judge. | |
| The generative task can be multiturn with 2 turns max, in that case, we | |
| return scores for turn 1 and 2. Also returns user_prompt and judgement | |
| which are ignored later by the aggregator. | |
Xet Storage Details
- Size:
- 36.5 kB
- Xet hash:
- eca0d3225792e14bb014060f4613648a49507eebd9004367aa1dd538e912258b
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.