diff --git a/core/llm/llms/SaladCloud.ts b/core/llm/llms/SaladCloud.ts new file mode 100644 index 00000000000..423c7766b7b --- /dev/null +++ b/core/llm/llms/SaladCloud.ts @@ -0,0 +1,13 @@ +import { LLMOptions } from "../.."; + +import OpenAI from "./OpenAI"; + +class SaladCloud extends OpenAI { + static providerName = "saladcloud"; + static defaultOptions: Partial = { + apiBase: "https://ai.salad.cloud/v1/", + useLegacyCompletionsEndpoint: false, + }; +} + +export default SaladCloud; diff --git a/core/llm/llms/index.ts b/core/llm/llms/index.ts index 453b2d90cd8..a33deee97ed 100644 --- a/core/llm/llms/index.ts +++ b/core/llm/llms/index.ts @@ -55,6 +55,7 @@ import OVHcloud from "./OVHcloud"; import { Relace } from "./Relace"; import Replicate from "./Replicate"; import SageMaker from "./SageMaker"; +import SaladCloud from "./SaladCloud"; import SambaNova from "./SambaNova"; import Scaleway from "./Scaleway"; import SiliconFlow from "./SiliconFlow"; @@ -115,6 +116,7 @@ export const LLMClasses = [ ClawRouter, Nvidia, Vllm, + SaladCloud, SambaNova, MockLLM, TestLLM, diff --git a/docs/customize/model-providers/more/saladcloud.mdx b/docs/customize/model-providers/more/saladcloud.mdx new file mode 100644 index 00000000000..b0501a88b43 --- /dev/null +++ b/docs/customize/model-providers/more/saladcloud.mdx @@ -0,0 +1,46 @@ +--- +title: "SaladCloud" +description: "Configure SaladCloud AI Gateway with Continue" +--- + +You can get an API key from the [SaladCloud portal](https://portal.salad.com/api-key) + +## Available Models + +Available models can be found on the [SaladCloud AI Gateway docs](https://docs.salad.com/ai-gateway/explanation/overview) + +## Chat Model + + + + ```yaml title="config.yaml" + name: My Config + version: 0.0.1 + schema: v1 + + models: + - name: Qwen 3.5 35B A3B + provider: saladcloud + model: qwen3.5-35b-a3b + apiKey: + ``` + + + ```json title="config.json" + { + "models": [ + { + "title": "Qwen 3.5 35B A3B", + "provider": "saladcloud", + "model": "qwen3.5-35b-a3b", + "apiKey": "" + } + ] + } + ``` + + + +## Embeddings Model + +SaladCloud AI Gateway currently focuses on chat/completion models. diff --git a/gui/src/pages/AddNewModel/configs/models.ts b/gui/src/pages/AddNewModel/configs/models.ts index 2482b1af241..43f18f377d7 100644 --- a/gui/src/pages/AddNewModel/configs/models.ts +++ b/gui/src/pages/AddNewModel/configs/models.ts @@ -3310,6 +3310,50 @@ export const models: { [key: string]: ModelPackage } = { isOpenSource: false, }, + // SaladCloud models + saladQwen35_35bA3B: { + title: "Qwen 3.5 35B A3B", + description: + "Qwen 3.5 35B A3B is a fast mixture-of-experts model with 35B total parameters and 3B active, offering strong performance at low cost via SaladCloud AI Gateway.", + refUrl: "https://docs.salad.com/ai-gateway/explanation/overview", + params: { + title: "Qwen 3.5 35B A3B", + model: "qwen3.5-35b-a3b", + contextLength: 131_072, + }, + icon: "qwen.png", + providerOptions: ["saladcloud"], + isOpenSource: true, + }, + saladQwen35_27b: { + title: "Qwen 3.5 27B", + description: + "Qwen 3.5 27B is a capable instruction-tuned model available via SaladCloud AI Gateway with 128K context window.", + refUrl: "https://docs.salad.com/ai-gateway/explanation/overview", + params: { + title: "Qwen 3.5 27B", + model: "qwen3.5-27b", + contextLength: 131_072, + }, + icon: "qwen.png", + providerOptions: ["saladcloud"], + isOpenSource: true, + }, + saladQwen35_9b: { + title: "Qwen 3.5 9B", + description: + "Qwen 3.5 9B is a lightweight and efficient instruction-tuned model available via SaladCloud AI Gateway.", + refUrl: "https://docs.salad.com/ai-gateway/explanation/overview", + params: { + title: "Qwen 3.5 9B", + model: "qwen3.5-9b", + contextLength: 131_072, + }, + icon: "qwen.png", + providerOptions: ["saladcloud"], + isOpenSource: true, + }, + // Xiaomi Mimo models mimoV2Flash: { title: "mimo-v2-flash", diff --git a/gui/src/pages/AddNewModel/configs/providers.ts b/gui/src/pages/AddNewModel/configs/providers.ts index 8e2826e4fdd..4d5b9b5a693 100644 --- a/gui/src/pages/AddNewModel/configs/providers.ts +++ b/gui/src/pages/AddNewModel/configs/providers.ts @@ -996,6 +996,33 @@ To get started, [register](https://dataplatform.cloud.ibm.com/registration/stepo models.MetaLlama3, ], }, + saladcloud: { + title: "SaladCloud", + provider: "saladcloud", + refPage: "saladcloud", + description: "Use SaladCloud AI Gateway to access open-source models", + longDescription: `SaladCloud AI Gateway provides OpenAI-compatible access to open-source models at flat-rate pricing. To get started:\n1. Sign up at [salad.com](https://salad.com)\n2. Obtain an API key from the [SaladCloud portal](https://portal.salad.com)\n3. Paste below\n4. Select a model preset`, + tags: [ModelProviderTags.RequiresApiKey, ModelProviderTags.OpenSource], + params: { + apiKey: "", + }, + collectInputFor: [ + { + inputType: "text", + key: "apiKey", + label: "API Key", + placeholder: "Enter your SaladCloud API key", + required: true, + }, + ...completionParamsInputsConfigs, + ], + packages: [ + models.saladQwen35_35bA3B, + models.saladQwen35_27b, + models.saladQwen35_9b, + ], + apiKeyUrl: "https://portal.salad.com/api-key", + }, sambanova: { title: "SambaNova", provider: "sambanova",