amber-large / mldr /mteb_eval.py
Katsumata420's picture
Upload 6 files
2e4bc3b verified
raw
history blame
1.28 kB
"""Evaluate AMBER models"""
import argparse
import mteb
from models import PROMPTS
def get_args() -> argparse.Namespace:
parser = argparse.ArgumentParser()
parser.add_argument("--model_type", type=str, required=True, help="Model name", choices=PROMPTS.keys())
parser.add_argument("--model_name_or_path", type=str, required=True)
parser.add_argument("--batch_size", type=int, default=32, help="Batch size")
parser.add_argument("--output_dir", type=str, required=True, help="Output directory")
parser.add_argument("--corpus_chunk_size", type=int, default=50000)
parser.add_argument("--convert_to_tensor", action="store_true")
return parser.parse_args()
def main():
args = get_args()
prompt = PROMPTS[args.model_type]
model = mteb.get_model(args.model_name_or_path, model_prompts=prompt)
tasks = [mteb.get_task("MultiLongDocRetrieval", languages=["jpn"])]
evaluation = mteb.MTEB(tasks=tasks)
encode_kwargs = {
"batch_size": args.batch_size,
"convert_to_tensor": args.convert_to_tensor,
}
evaluation.run(
model,
output_folder=args.output_dir,
encode_kwargs=encode_kwargs,
corpus_chunk_size=args.corpus_chunk_size,
)
if __name__ == "__main__":
main()