Skip to content

Commit 517fd15

Browse files
authored
[Feature Branch][DeepSparse Evaluation API] Update lm-eval, perplexity, additional datasets (#1580)
1 parent 0ddeda2 commit 517fd15

File tree

14 files changed

+852
-292
lines changed

14 files changed

+852
-292
lines changed

setup.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ def _parse_requirements_file(file_path):
149149
"datasets<2.16",
150150
"accelerate<0.26",
151151
"seqeval",
152+
"evaluate",
152153
]
153154
_sentence_transformers_integration_deps = ["optimum-deepsparse"] + _torch_deps
154155

@@ -308,7 +309,7 @@ def _setup_entry_points() -> Dict:
308309
f"deepsparse.image_classification.eval={ic_eval}",
309310
"deepsparse.license=deepsparse.license:main",
310311
"deepsparse.validate_license=deepsparse.license:validate_license_cli",
311-
"deepsparse.eval=deepsparse.evaluation.cli:main",
312+
"deepsparse.evaluate=deepsparse.evaluation.cli:main",
312313
]
313314
}
314315

src/deepsparse/evaluation/cli.py

+6-8
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Module for evaluating models on the various evaluation integrations
2121
2222
OPTIONS:
23-
--model_path MODEL_PATH
23+
MODEL_PATH
2424
A path to an ONNX model, local directory containing ONNX model
2525
(including all the auxiliary files) or a SparseZoo stub
2626
-d DATASET, --dataset DATASET
@@ -72,7 +72,7 @@
7272

7373
from deepsparse.evaluation.evaluator import evaluate
7474
from deepsparse.evaluation.results import Result, save_result
75-
from deepsparse.evaluation.utils import args_to_dict, get_save_path
75+
from deepsparse.evaluation.utils import get_save_path, parse_kwarg_tuples
7676
from deepsparse.operators.engine_operator import (
7777
DEEPSPARSE_ENGINE,
7878
ORT_ENGINE,
@@ -88,12 +88,10 @@
8888
ignore_unknown_options=True,
8989
)
9090
)
91-
@click.option(
92-
"--model_path",
91+
@click.argument(
92+
"model_path",
9393
type=click.Path(dir_okay=True, file_okay=True),
9494
required=True,
95-
help="A path to an ONNX model, local directory containing ONNX model"
96-
"(including all the auxiliary files) or a SparseZoo stub",
9795
)
9896
@click.option(
9997
"-d",
@@ -178,7 +176,7 @@ def main(
178176
# join datasets to a list if multiple datasets are passed
179177
datasets = list(dataset) if not isinstance(dataset, str) else dataset
180178
# format kwargs to a dict
181-
integration_args = args_to_dict(integration_args)
179+
integration_args = parse_kwarg_tuples(integration_args)
182180

183181
_LOGGER.info(
184182
f"Creating {engine_type} pipeline to evaluate from model path: {model_path}"
@@ -203,7 +201,7 @@ def main(
203201
**integration_args,
204202
)
205203

206-
_LOGGER.info(f"Evaluation done. Results:\n{result}")
204+
_LOGGER.info(f"Evaluation done. Results:\n{result.formatted}")
207205

208206
save_path = get_save_path(
209207
save_path=save_path,

src/deepsparse/evaluation/evaluator.py

-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ def evaluate(
6565
return eval_integration(
6666
pipeline=pipeline,
6767
datasets=datasets,
68-
engine_type=engine_type,
6968
batch_size=batch_size,
7069
splits=splits,
7170
metrics=metrics,

src/deepsparse/evaluation/integrations/__init__.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
# flake8: noqa: F401
1616

1717

18-
def try_import_lm_evaluation_harness(raise_error=False):
18+
def try_import_lm_evaluation_harness(raise_error=True):
1919
try:
2020
import lm_eval
2121

@@ -24,11 +24,11 @@ def try_import_lm_evaluation_harness(raise_error=False):
2424
if raise_error:
2525
raise ImportError(
2626
"Unable to import lm_eval. "
27-
"To install run 'pip install "
28-
"git+https://github.com/EleutherAI/lm-evaluation-harness@b018a7d51'"
27+
"To install run 'pip install lm-eval==0.4.0'"
2928
)
3029
return False
3130

3231

3332
if try_import_lm_evaluation_harness(raise_error=False):
3433
from .lm_evaluation_harness import *
34+
from .perplexity import *

0 commit comments

Comments
 (0)