From bfb58b30148470db7b89f62f2fbbbb2b9ae565b3 Mon Sep 17 00:00:00 2001 From: Ziggy Cross Date: Tue, 15 Apr 2025 14:34:51 -0400 Subject: [PATCH 1/2] Dev instructions touch up --- DEVELOPMENT.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 5451efbe6..bf6400117 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -65,6 +65,11 @@ make run-ci V=1 ## Running Tests +To install the libraries required for testing: +```bash +pip install -e ".[test]" +``` + To run the test suite: ```bash From 079e4b59f4709b486b44996e050fb1785a068703 Mon Sep 17 00:00:00 2001 From: Ziggy Cross Date: Tue, 15 Apr 2025 23:30:41 -0400 Subject: [PATCH 2/2] Add error messages for wrong metric input. --- src/ragas/evaluation.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/ragas/evaluation.py b/src/ragas/evaluation.py index cfef3e7d4..bb59def68 100644 --- a/src/ragas/evaluation.py +++ b/src/ragas/evaluation.py @@ -154,6 +154,17 @@ def evaluate( if dataset is None: raise ValueError("Provide dataset!") + # Check metrics are correct type + if not isinstance(metrics, None | list): + raise TypeError( + "Metrics should be provded in a list, e.g: metrics=[BleuScore()]" + ) + + if isinstance(metrics, list) and any(not isinstance(m, Metric) for m in metrics): + raise TypeError( + "All metrics must be initialised metric objects, e.g: metrics=[BleuScore(), AspectCritic()]" + ) + # default metrics if metrics is None: from ragas.metrics import (