reneeice's picture
Upload validator_data_gen/model_map.py with huggingface_hub
09572bd verified
Raw History Blame Contribute Delete
1.43 kB
import random
def build_provider_index(providers: list) -> dict:
return {p.name: p for p in providers}
def build_model_index(providers: list) -> dict:
"""Build {slot: [(provider_name, actual_model_id), ...]} from providers."""
index = {}
for p in providers:
for slot, model in p.get_model_list():
index.setdefault(slot, []).append((p.name, model))
return index
def get_shuffled_combos(index: dict, slot: str) -> list:
"""Get shuffled (provider_name, actual_model_id) list for a slot."""
candidates = list(index.get(slot, []))
random.shuffle(candidates)
return candidates
def build_providers(keys: dict):
from .providers import GroqProvider, G4FProvider, NvidiaNimProvider, LLM7Provider, GeminiProvider, SambanovaProvider, DeepSeekProvider
ps = []
if keys.get('groq'):
ps.append(GroqProvider(keys['groq']))
if keys.get('groq2'):
ps.append(GroqProvider(keys['groq2'], name='groq2'))
ps.append(G4FProvider())
if keys.get('gemini'):
ps.append(GeminiProvider(keys['gemini']))
if keys.get('nvidia_nim'):
ps.append(NvidiaNimProvider(keys['nvidia_nim']))
if keys.get('llm7'):
ps.append(LLM7Provider(keys['llm7']))
if keys.get('sambanova'):
ps.append(SambanovaProvider(keys['sambanova']))
if keys.get('deepseek'):
ps.append(DeepSeekProvider(keys['deepseek']))
return ps