File size: 640 Bytes
743dad3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
export const getProviders = async (model: string) => {
  // Handle Google Gemini / Gemma / LearnLM models locally
  const lower = model.toLowerCase();
  if (
    lower.startsWith("gemini-") ||
    lower.startsWith("gemma-") ||
    lower.startsWith("learnlm-")
  ) {
    return ["google"];
  }

  try {
    const response = await fetch(`https://router.huggingface.co/v1/models/${model}`);
    if (!response.ok) throw new Error("HF router lookup failed");
    const { data } = await response.json();
    return data.providers.map((provider: any) => provider.provider);
  } catch {
    // Fallback: no providers available
    return [];
  }
}