def model_hyperlink(link, model_name): return f'{model_name}' def extract_method_name(full_model_name): """Extract method name with size from full model name (e.g., 'ReSeek-Qwen2.5-7b-Instruct' -> 'ReSeek-7b')""" # Split by '-' and extract method name + size parts = full_model_name.split("-") method_parts = [] size_part = None for i, part in enumerate(parts): # Check if this is a base model indicator if part.lower() in ["qwen2.5", "qwen2", "qwen", "llama", "mistral", "phi"]: # Look for the size part (like "7b", "3b") after the base model name for j in range(i, len(parts)): if parts[j].lower().endswith("b") and len(parts[j]) <= 3: size_part = parts[j].lower() break break method_parts.append(part) if method_parts and size_part: method_name = "-".join(method_parts) + "-" + size_part elif method_parts: method_name = "-".join(method_parts) else: method_name = full_model_name return method_name def extract_base_model(full_model_name): """Extract base model from full model name (e.g., 'ReSeek-Qwen2.5-7b-Instruct' -> 'Qwen2.5-7b-Instruct')""" # Split by '-' and take parts from base model onwards parts = full_model_name.split("-") base_parts = [] found_base = False for part in parts: # Start collecting when we hit a base model indicator if part.lower() in ["qwen2.5", "qwen2", "qwen", "llama", "mistral", "phi"]: found_base = True if found_base: base_parts.append(part) base_model = "-".join(base_parts) if base_parts else "Unknown" return base_model def make_clickable_model(model_name): # Custom link mappings for each model (using full model name as key) custom_links = { "ReSeek-Qwen2.5-7b-Instruct": "https://huggingface.co/TencentBAC/ReSeek-qwen2.5-3b-em-grpo", "ReSeek-Qwen2.5-3b-Instruct": "https://huggingface.co/TencentBAC/ReSeek-qwen2.5-7b-em-grpo", "ZeroSearch-Qwen2.5-3b-Instruct": "https://huggingface.co/Alibaba-NLP/ZeroSearch_wiki_V2_Qwen2.5_3B_Instruct", "ZeroSearch-Qwen2.5-7b-Instruct": "https://huggingface.co/Alibaba-NLP/ZeroSearch_wiki_V2_Qwen2.5_7B_Instruct", "Search-R1-Qwen2.5-7b-Instruct": "https://huggingface.co/PeterJinGo/SearchR1-nq_hotpotqa_train-qwen2.5-7b-it-em-ppo", "Search-R1-Qwen2.5-3b-Instruct": "https://huggingface.co/PeterJinGo/SearchR1-nq_hotpotqa_train-qwen2.5-3b-em-grpo", "Search-o1-Qwen2.5-7b-Instruct": "https://github.com/RUC-NLPIR/Search-o1", "RAG-Qwen2.5-7b-Instruct": "", "R1-Qwen2.5-7b-Instruct": "", "SFT-Qwen2.5-7b-Instruct": "", "CoT-Qwen2.5-7b-Instruct": "", "Direct-Inference-Qwen2.5-7b-Instruct": "", } # Extract just the method name (without base model) method_name = extract_method_name(model_name) if model_name in custom_links: link = custom_links[model_name] return model_hyperlink(link, method_name) else: # If no custom link, just return the method name return method_name def styled_error(error): return f"
{error}
" def styled_warning(warn): return f"{warn}
" def styled_message(message): return f"{message}
" def has_no_nan_values(df, columns): return df[columns].notna().all(axis=1) def has_nan_values(df, columns): return df[columns].isna().any(axis=1)