from enum import Enum class Navigation(Enum): TEXT_LEADERBOARD = "Text Leaderboard" MULTIMODAL_LEADERBOARD = "Multimodal Leaderboard" class TaskCategory(Enum): LAW = "Law" CODE = "Code" CONVERSATIONAL = "Conversational" TECH = "Tech" LONG_CONTEXT = "Long-context" MULTILINGUAL = "Multilingual" class ModelProvider(Enum): OPENAI = "OpenAI" MONGODB = "MongoDB" COHERE = "Cohere" OTHERS = "Others" class EvaluationMetric(Enum): NDCG_1 = "NDCG@1" NDCG_3 = "NDCG@3" NDCG_5 = "NDCG@5" NDCG_10 = "NDCG@10" NDCG_20 = "NDCG@20" NDCG_50 = "NDCG@50" NDCG_100 = "NDCG@100" RECALL_1 = "RECALL@1" RECALL_3 = "RECALL@3" RECALL_5 = "RECALL@5" RECALL_10 = "RECALL@10" RECALL_20 = "RECALL@20" RECALL_50 = "RECALL@50" RECALL_100 = "RECALL@100" PRECISION_1 = "PRECISION@1" PRECISION_3 = "PRECISION@3" PRECISION_5 = "PRECISION@5" PRECISION_10 = "PRECISION@10" PRECISION_20 = "PRECISION@20" PRECISION_50 = "PRECISION@50" PRECISION_100 = "PRECISION@100" class EmbdDtype(Enum): ALL = "all" FLOAT_32 = "float32" INT_8 = "int8" BINARY = "binary" class EmbdDim(Enum): OP1 = "<=1k" OP2 = "1k-2k" OP3 = "2k-5k" OP4 = ">=5k" class Similarity(Enum): ALL = "all" COSINE = "cosine" DOT = "dot" EUCLIDEAN = "euclidean" DISPLAY_NAME_MAP = { "document_understanding": "Document", } def get_display_name(group_name): return DISPLAY_NAME_MAP.get(group_name, group_name.capitalize()) LEADERBOARD_ICON_MAP = { "Text Leaderboard": "📚", "Multimodal Leaderboard": "🖼️", "Law": "⚖️", "Multilingual": "🌎", "German": "🇩🇪", "Code": "💻", "Tech": "🛠️", "Legal": "📜", "English": "🇬🇧", "Healthcare": "🏥", "Finance": "💰", "French": "🇫🇷", "Japanese": "🇯🇵", "Document": "📄", } DOMAIN_GROUPS = {"legal", "code", "healthcare", "finance"} LANGUAGE_GROUPS = {"english", "french", "german", "japanese"} USERNAME = "embedding-benchmark" SPACENAME = "RTEB" # https://{UserName}-{SpaceName}.hf.space/ BASE_URL = f"https://{USERNAME}-{SPACENAME}.hf.space/"