| import argparse |
| import logging |
| import os |
|
|
| from mteb import MTEB |
| from sentence_transformers import SentenceTransformer |
| logging.basicConfig(level=logging.INFO) |
|
|
| logger = logging.getLogger("main") |
|
|
| CLASSIFICATION_LIST = ["TNews", "IFlyTek", "MultilingualSentiment", "JDReview", "OnlineShopping", "Waimai"] |
| STS_LIST = ["ATEC", "BQ", "LCQMC", "PAWSX", "STSB", "AFQMC", "QBQTC"] |
| PAIRCLASSIFICATION_LIST = ["Ocnli", "Cmnli"] |
| RERANKING_LIST = ["T2Reranking", "MmarcoReranking", "CMedQAv1", "CMedQAv2"] |
| CLUSTERING_LIST = ["CLSClusteringS2S", "CLSClusteringP2P", "ThuNewsClusteringS2S", "ThuNewsClusteringP2P"] |
| TASK_LIST = [CLASSIFICATION_LIST, STS_LIST, PAIRCLASSIFICATION_LIST, RERANKING_LIST, CLUSTERING_LIST] |
| names = ['Classification', 'STS', 'Pairclassification', 'Reranking', 'Clustering'] |
|
|
| model = SentenceTransformer('piccolo-base-zh') |
| for name, task_list in zip(names, TASK_LIST): |
| for task in task_list: |
| logger.info(f"Running task: {task}") |
| evaluation = MTEB(tasks=[task]) |
| evaluation.run(model, output_folder=f"results/{name}") |
|
|