nv-bschifferer's picture
init 3b model
50c36f4
# --------------------------------------------------------
# Copyright (c) 2025 NVIDIA
# Licensed under customized NSCLv1 [see LICENSE.md for details]
# --------------------------------------------------------
import mteb
import argparse
def get_args():
parser = argparse.ArgumentParser()
parser.add_argument(
'--model_name_or_path',
type=str,
help='Path to model checkpoint if HF',
default=''
)
parser.add_argument(
'--task',
type=str,
help='Task to evaluate, if None then whole VisualDocumentRetrieval',
default=None,
)
args, extra_args = parser.parse_known_args()
def convert_value(value):
if value.replace('.', '', 1).isdigit(): # Check if it's a number (int or float)
return int(value) if '.' not in value else float(value)
return value # Keep as string if not numeric
# Convert extra_args list to dictionary with proper type conversion
extra_args_dict = {extra_args[i].lstrip('-'): convert_value(extra_args[i + 1])
for i in range(0, len(extra_args), 2)}
return args, extra_args_dict
if __name__ == "__main__":
args, add_args = get_args()
model_meta = mteb.get_model_meta(args.model_name_or_path)
model = model_meta.load_model()
model.mteb_model_meta = model_meta
if args.task is not None:
tasks = [mteb.get_task(args.task)]
else:
tasks = mteb.get_benchmark("VisualDocumentRetrieval")
evaluation = mteb.MTEB(tasks=tasks)
results = evaluation.run(model, corpus_chunk_size=250)