diff --git a/public/image/model_cerebras.svg b/public/image/model_cerebras.svg
new file mode 100644
index 00000000..c8bab7b7
--- /dev/null
+++ b/public/image/model_cerebras.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/atoms/interfaceState.ts b/src/atoms/interfaceState.ts
index cb7afb51..6e2b2c96 100644
--- a/src/atoms/interfaceState.ts
+++ b/src/atoms/interfaceState.ts
@@ -21,7 +21,8 @@ export const PROVIDERS: ModelProvider[] = [
"grok",
"nvdia",
"perplexity",
- "oap"
+ "oap",
+ "cerebras",
] as const
export const PROVIDER_LABELS: Record = {
@@ -40,6 +41,7 @@ export const PROVIDER_LABELS: Record = {
perplexity: "Perplexity",
oap: "OAP",
azure_openai: "Azure OpenAI",
+ cerebras: "Cerebras",
default: "Default",
}
@@ -59,6 +61,7 @@ export const PROVIDER_ICONS: Record = {
perplexity: `${imgPrefix}model_perplexity.svg`,
oap: `${imgPrefix}logo_oap.png`,
azure_openai: `${imgPrefix}model_azure.svg`,
+ cerebras: `${imgPrefix}model_cerebras.svg`,
default: "",
}
@@ -437,6 +440,7 @@ export const defaultInterface: Record = {
grok: openaiCompatibleTemplate("https://api.x.ai/v1"),
nvdia: openaiCompatibleTemplate("https://integrate.api.nvidia.com/v1"),
perplexity: openaiCompatibleTemplate("https://api.perplexity.ai"),
+ cerebras: openaiCompatibleTemplate("https://api.cerebras.ai/v1"),
}
export const isProviderIconNoFilter = (model: ModelProvider, userTheme: string, systemTheme: string) => {
@@ -453,4 +457,4 @@ export const isProviderIconNoFilter = (model: ModelProvider, userTheme: string,
default:
return model.startsWith("google") && isLightMode
}
-}
\ No newline at end of file
+}
diff --git a/src/helper/model.ts b/src/helper/model.ts
index cb6e5259..cc3085c5 100644
--- a/src/helper/model.ts
+++ b/src/helper/model.ts
@@ -161,6 +161,8 @@ export function matchOpenaiCompatible(baseURL: string): ModelProvider {
return "nvdia"
case defaultInterface.perplexity["baseURL"].default:
return "perplexity"
+ case defaultInterface.cerebras["baseURL"].default:
+ return "cerebras"
default:
return "openai_compatible"
}
@@ -284,6 +286,7 @@ export function intoModelConfig(group: LLMGroup, model: BaseModel): ModelConfig
"grok",
"nvdia",
"perplexity",
+ "cerebras",
].includes(group.modelProvider) ? "openai" : group.modelProvider
if (apiKey) {
@@ -460,4 +463,4 @@ export function fieldsToLLMGroup(provider: ModelProvider, obj: Record