feat: integrate Hugging Face provider into web app and engine management
This commit is contained in:
parent
54c1bf6950
commit
178d1546fe
@ -3,6 +3,7 @@ import cohere from './resources/cohere.json' with { type: 'json' }
|
|||||||
import openai from './resources/openai.json' with { type: 'json' }
|
import openai from './resources/openai.json' with { type: 'json' }
|
||||||
import openrouter from './resources/openrouter.json' with { type: 'json' }
|
import openrouter from './resources/openrouter.json' with { type: 'json' }
|
||||||
import groq from './resources/groq.json' with { type: 'json' }
|
import groq from './resources/groq.json' with { type: 'json' }
|
||||||
|
import huggingface from './resources/huggingface.json' with { type: 'json' }
|
||||||
import martian from './resources/martian.json' with { type: 'json' }
|
import martian from './resources/martian.json' with { type: 'json' }
|
||||||
import mistral from './resources/mistral.json' with { type: 'json' }
|
import mistral from './resources/mistral.json' with { type: 'json' }
|
||||||
import nvidia from './resources/nvidia.json' with { type: 'json' }
|
import nvidia from './resources/nvidia.json' with { type: 'json' }
|
||||||
@ -14,6 +15,7 @@ import cohereModels from './models/cohere.json' with { type: 'json' }
|
|||||||
import openaiModels from './models/openai.json' with { type: 'json' }
|
import openaiModels from './models/openai.json' with { type: 'json' }
|
||||||
import openrouterModels from './models/openrouter.json' with { type: 'json' }
|
import openrouterModels from './models/openrouter.json' with { type: 'json' }
|
||||||
import groqModels from './models/groq.json' with { type: 'json' }
|
import groqModels from './models/groq.json' with { type: 'json' }
|
||||||
|
import huggingfaceModels from './models/huggingface.json' with { type: 'json' }
|
||||||
import martianModels from './models/martian.json' with { type: 'json' }
|
import martianModels from './models/martian.json' with { type: 'json' }
|
||||||
import mistralModels from './models/mistral.json' with { type: 'json' }
|
import mistralModels from './models/mistral.json' with { type: 'json' }
|
||||||
import nvidiaModels from './models/nvidia.json' with { type: 'json' }
|
import nvidiaModels from './models/nvidia.json' with { type: 'json' }
|
||||||
@ -26,6 +28,7 @@ const engines = [
|
|||||||
cohere,
|
cohere,
|
||||||
openrouter,
|
openrouter,
|
||||||
groq,
|
groq,
|
||||||
|
huggingface,
|
||||||
mistral,
|
mistral,
|
||||||
martian,
|
martian,
|
||||||
nvidia,
|
nvidia,
|
||||||
@ -38,6 +41,7 @@ const models = [
|
|||||||
...cohereModels,
|
...cohereModels,
|
||||||
...openrouterModels,
|
...openrouterModels,
|
||||||
...groqModels,
|
...groqModels,
|
||||||
|
...huggingfaceModels,
|
||||||
...mistralModels,
|
...mistralModels,
|
||||||
...martianModels,
|
...martianModels,
|
||||||
...nvidiaModels,
|
...nvidiaModels,
|
||||||
|
|||||||
@ -11,6 +11,8 @@ export function getProviderLogo(provider: string) {
|
|||||||
return '/images/model-provider/llamacpp.svg'
|
return '/images/model-provider/llamacpp.svg'
|
||||||
case 'anthropic':
|
case 'anthropic':
|
||||||
return '/images/model-provider/anthropic.svg'
|
return '/images/model-provider/anthropic.svg'
|
||||||
|
case 'huggingface':
|
||||||
|
return '/images/model-provider/huggingface.svg'
|
||||||
case 'mistral':
|
case 'mistral':
|
||||||
return '/images/model-provider/mistral.svg'
|
return '/images/model-provider/mistral.svg'
|
||||||
case 'martian':
|
case 'martian':
|
||||||
@ -46,6 +48,8 @@ export const getProviderTitle = (provider: string) => {
|
|||||||
return 'OpenRouter'
|
return 'OpenRouter'
|
||||||
case 'gemini':
|
case 'gemini':
|
||||||
return 'Gemini'
|
return 'Gemini'
|
||||||
|
case 'huggingface':
|
||||||
|
return 'Hugging Face'
|
||||||
default:
|
default:
|
||||||
return provider.charAt(0).toUpperCase() + provider.slice(1)
|
return provider.charAt(0).toUpperCase() + provider.slice(1)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -281,4 +281,64 @@ export const predefinedProviders = [
|
|||||||
],
|
],
|
||||||
models: [],
|
models: [],
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
api_key: '',
|
||||||
|
base_url: 'https://router.huggingface.co/v1',
|
||||||
|
explore_models_url:
|
||||||
|
'https://huggingface.co/models?pipeline_tag=text-generation&inference_provider=all',
|
||||||
|
provider: 'huggingface',
|
||||||
|
settings: [
|
||||||
|
{
|
||||||
|
key: 'api-key',
|
||||||
|
title: 'API Key',
|
||||||
|
description:
|
||||||
|
"The Hugging Face API uses tokens for authentication. Visit your [Access Tokens](https://huggingface.co/settings/tokens) page to retrieve the token you'll use in your requests.",
|
||||||
|
controller_type: 'input',
|
||||||
|
controller_props: {
|
||||||
|
placeholder: 'Insert API Token',
|
||||||
|
value: '',
|
||||||
|
type: 'password',
|
||||||
|
input_actions: ['unobscure', 'copy'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
key: 'base-url',
|
||||||
|
title: 'Base URL',
|
||||||
|
description:
|
||||||
|
'The base endpoint to use. See the [Hugging Face Inference Providers documentation](https://huggingface.co/docs/inference-providers) for more information.',
|
||||||
|
controller_type: 'input',
|
||||||
|
controller_props: {
|
||||||
|
placeholder: 'https://router.huggingface.co/v1',
|
||||||
|
value: 'https://router.huggingface.co/v1',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
models: [
|
||||||
|
{
|
||||||
|
id: 'moonshotai/Kimi-K2-Instruct:groq',
|
||||||
|
name: 'Kimi-K2-Instruct',
|
||||||
|
version: '1.0',
|
||||||
|
description:
|
||||||
|
"Moonshot's Kimi K2 model with 131k context and tool calling support",
|
||||||
|
capabilities: ['completion', 'tools'],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'deepseek-ai/DeepSeek-R1-0528',
|
||||||
|
name: 'DeepSeek-R1-0528',
|
||||||
|
version: '1.0',
|
||||||
|
description:
|
||||||
|
"DeepSeek's reasoning model with 163k context, tool calling support, and open weights",
|
||||||
|
capabilities: ['completion', 'tools'],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'deepseek-ai/DeepSeek-V3-0324',
|
||||||
|
name: 'DeepSeek-V3-0324',
|
||||||
|
version: '1.0',
|
||||||
|
description:
|
||||||
|
'DeepSeek V3 with 16k context, tool calling support, and open weights',
|
||||||
|
capabilities: ['completion', 'tools'],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
]
|
]
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user