From 8ff8c9255fc7f8f0d477b22cfac1b17abd92782c Mon Sep 17 00:00:00 2001 From: Dong Hyuk Chang Date: Fri, 18 Apr 2025 10:30:53 -0700 Subject: [PATCH 1/3] Import guard sqlitedict --- .../collections/eval_harness/lm_eval/base.py | 11 +++++++++-- requirements.txt | 1 - 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py b/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py index f23fa6907d..5c59414fa3 100755 --- a/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py +++ b/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py @@ -23,7 +23,13 @@ import numpy as np import spacy from lm_eval.metrics import mean, weighted_mean, weighted_perplexity -from sqlitedict import SqliteDict + +try: + from sqlitedict import SqliteDict + HAS_SQLITEDICT = True +except ImportError: + print("Eval harness with sqlitedict is deprecated. Sqlitedict has known vulnerability GHSA-g4r7-86gm-pgqc") + HAS_SQLITEDICT = True def _SPACY_NLP(*args, **kwargs): @@ -607,7 +613,8 @@ def __init__(self, lm, cache_db): self.cache_db = cache_db if os.path.dirname(cache_db): os.makedirs(os.path.dirname(cache_db), exist_ok=True) - self.dbdict = SqliteDict(cache_db, autocommit=True) + if HAS_SQLITEDICT: + self.dbdict = SqliteDict(cache_db, autocommit=True) # add hook to lm lm.set_cache_hook(self.get_cache_hook()) diff --git a/requirements.txt b/requirements.txt index 84f9b3c7bc..2b219f6d01 100755 --- a/requirements.txt +++ b/requirements.txt @@ -9,7 +9,6 @@ pytablewriter==0.58.0 requests==2.26.0 tqdm==4.62.3 zstandard==0.15.2 -sqlitedict hera pydantic kubeflow-training>=1.8 From 4df979abeb5323cd064572c415129d0defce06d2 Mon Sep 17 00:00:00 2001 From: Dong Hyuk Chang Date: Fri, 18 Apr 2025 10:34:45 -0700 Subject: [PATCH 2/3] Format changes --- .../nemo_launcher/collections/eval_harness/lm_eval/base.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py b/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py index 5c59414fa3..f573c11105 100755 --- a/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py +++ b/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py @@ -26,9 +26,12 @@ try: from sqlitedict import SqliteDict + HAS_SQLITEDICT = True except ImportError: - print("Eval harness with sqlitedict is deprecated. Sqlitedict has known vulnerability GHSA-g4r7-86gm-pgqc") + print( + "Eval harness with sqlitedict is deprecated. Sqlitedict has known vulnerability GHSA-g4r7-86gm-pgqc" + ) HAS_SQLITEDICT = True @@ -614,7 +617,7 @@ def __init__(self, lm, cache_db): if os.path.dirname(cache_db): os.makedirs(os.path.dirname(cache_db), exist_ok=True) if HAS_SQLITEDICT: - self.dbdict = SqliteDict(cache_db, autocommit=True) + self.dbdict = SqliteDict(cache_db, autocommit=True) # add hook to lm lm.set_cache_hook(self.get_cache_hook()) From fb73c6867bb82c2874bdf6a6628337de15c4403a Mon Sep 17 00:00:00 2001 From: Dong Hyuk Chang Date: Fri, 18 Apr 2025 10:53:56 -0700 Subject: [PATCH 3/3] Fix var setting --- .../nemo_launcher/collections/eval_harness/lm_eval/base.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py b/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py index f573c11105..a5f848b680 100755 --- a/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py +++ b/launcher_scripts/nemo_launcher/collections/eval_harness/lm_eval/base.py @@ -32,7 +32,7 @@ print( "Eval harness with sqlitedict is deprecated. Sqlitedict has known vulnerability GHSA-g4r7-86gm-pgqc" ) - HAS_SQLITEDICT = True + HAS_SQLITEDICT = False def _SPACY_NLP(*args, **kwargs): @@ -618,6 +618,8 @@ def __init__(self, lm, cache_db): os.makedirs(os.path.dirname(cache_db), exist_ok=True) if HAS_SQLITEDICT: self.dbdict = SqliteDict(cache_db, autocommit=True) + else: + self.dbdict = None # add hook to lm lm.set_cache_hook(self.get_cache_hook())