From f03db8da9301e2a1f2a1783338464bec7e7a859e Mon Sep 17 00:00:00 2001
From: Logan <logan.markewich@live.com>
Date: Wed, 3 Apr 2024 20:25:25 -0600
Subject: [PATCH] fix check in batch eval runner for multi-kwargs (#12563)

---
 .../llama_index/core/evaluation/batch_runner.py           | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/llama-index-core/llama_index/core/evaluation/batch_runner.py b/llama-index-core/llama_index/core/evaluation/batch_runner.py
index 33b335c8bf..e7ce75b5c4 100644
--- a/llama-index-core/llama_index/core/evaluation/batch_runner.py
+++ b/llama-index-core/llama_index/core/evaluation/batch_runner.py
@@ -207,7 +207,9 @@ class BatchEvalRunner:
         eval_kwargs_lists = self._validate_nested_eval_kwargs_types(eval_kwargs_lists)
 
         # boolean to check if using multi kwarg evaluator
-        multi_kwargs = isinstance(next(iter(eval_kwargs_lists.values())), dict)
+        multi_kwargs = len(eval_kwargs_lists) > 0 and isinstance(
+            next(iter(eval_kwargs_lists.values())), dict
+        )
 
         # run evaluations
         eval_jobs = []
@@ -265,7 +267,9 @@ class BatchEvalRunner:
         eval_kwargs_lists = self._validate_nested_eval_kwargs_types(eval_kwargs_lists)
 
         # boolean to check if using multi kwarg evaluator
-        multi_kwargs = isinstance(next(iter(eval_kwargs_lists.values())), dict)
+        multi_kwargs = len(eval_kwargs_lists) > 0 and isinstance(
+            next(iter(eval_kwargs_lists.values())), dict
+        )
 
         # run evaluations
         eval_jobs = []
-- 
GitLab