Skip to content

Commit

Permalink
Add Scaleway in Continue GUI
Browse files Browse the repository at this point in the history
  • Loading branch information
tgenaitay committed Dec 11, 2024
1 parent d7ef0a3 commit ffa382d
Show file tree
Hide file tree
Showing 9 changed files with 56 additions and 3 deletions.
4 changes: 3 additions & 1 deletion core/config/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -605,7 +605,8 @@ declare global {
| "sambanova"
| "nvidia"
| "nebius"
| "siliconflow";
| "siliconflow"
| "scaleway";
export type ModelName =
| "AUTODETECT"
Expand Down Expand Up @@ -663,6 +664,7 @@ declare global {
| "gemma2-2b-it"
| "gemma2-9b-it"
| "olmo-7b"
| "qwen25-coder-32b"
// Anthropic
| "claude-3-5-sonnet-latest"
| "claude-3-5-sonnet-20240620"
Expand Down
2 changes: 2 additions & 0 deletions core/control-plane/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ const modelDescriptionSchema = z.object({
"azure",
"nebius",
"siliconflow",
"scaleway",
]),
model: z.string(),
apiKey: z.string().optional(),
Expand Down Expand Up @@ -86,6 +87,7 @@ const embeddingsProviderSchema = z.object({
"gemini",
"nebius",
"siliconflow",
"scaleway",
]),
apiBase: z.string().optional(),
apiKey: z.string().optional(),
Expand Down
2 changes: 2 additions & 0 deletions core/indexing/allEmbeddingsProviders.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import Nvidia from "../llm/llms/Nvidia.js";
import Ollama from "../llm/llms/Ollama.js";
import OpenAI from "../llm/llms/OpenAI.js";
import SageMaker from "../llm/llms/SageMaker.js";
import Scaleway from "../llm/llms/Scaleway.js";
import SiliconFlow from "../llm/llms/SiliconFlow.js";
import ContinueProxy from "../llm/llms/stubs/ContinueProxy.js";
import TransformersJsEmbeddingsProvider from "../llm/llms/TransformersJsEmbeddingsProvider.js";
Expand Down Expand Up @@ -46,4 +47,5 @@ export const allEmbeddingsProviders: Record<
watsonx: WatsonX,
lmstudio: LMStudio,
siliconflow: SiliconFlow,
scaleway: Scaleway,
};
1 change: 1 addition & 0 deletions core/llm/autodetect.ts
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ const PARALLEL_PROVIDERS: string[] = [
"nebius",
"vertexai",
"function-network",
"scaleway",
];

function llmCanGenerateInParallel(provider: string, model: string): boolean {
Expand Down
1 change: 1 addition & 0 deletions core/llm/llms/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ const LLMs = [
VertexAI,
xAI,
SiliconFlow,
Scaleway,
];

export async function llmFromDescription(
Expand Down
Binary file added gui/public/logos/scaleway.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 16 additions & 2 deletions gui/src/pages/AddNewModel/configs/models.ts
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ export const models: { [key: string]: ModelPackage } = {
"sambanova",
"cerebras",
"nebius",
"scaleway"
],
isOpenSource: true,
},
Expand Down Expand Up @@ -379,7 +380,7 @@ export const models: { [key: string]: ModelPackage } = {
contextLength: 8192,
},
icon: "meta.png",
providerOptions: ["groq"],
providerOptions: ["groq", "scaleway"],
isOpenSource: false,
},
llama3170bChat: {
Expand All @@ -392,7 +393,7 @@ export const models: { [key: string]: ModelPackage } = {
contextLength: 8192,
},
icon: "meta.png",
providerOptions: ["groq"],
providerOptions: ["groq", "scaleway"],
isOpenSource: false,
},
llama31405bChat: {
Expand Down Expand Up @@ -1107,6 +1108,19 @@ export const models: { [key: string]: ModelPackage } = {
providerOptions: ["nebius"],
isOpenSource: true,
},
Qwen25Coder32b: {
title: "Qwen 2.5 Coder 32b",
description:
"Qwen 2.5 is an auto-regressive language model that uses an optimized transformer architecture.",
params: {
title: "Qwen 2.5 Coder 32b",
model: "qwen2.5-coder-32b",
contextLength: 128_000,
},
icon: "qwen.png",
providerOptions: ["scaleway"],
isOpenSource: true,
},
grokBeta: {
title: "Grok Beta",
description: "Generative artificial intelligence chatbot developed by xAI.",
Expand Down
29 changes: 29 additions & 0 deletions gui/src/pages/AddNewModel/configs/providers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,35 @@ export const providers: Partial<Record<string, ProviderInfo>> = {
packages: [models.llama31Chat, models.deepseek],
apiKeyUrl: "https://function.network/join-waitlist",
},
scaleway: {
title: "Scaleway",
provider: "scaleway",
refPage: "scaleway",
description: "Use the Scaleway Generative APIs to instantly access leading open models",
longDescription: `Hosted in European data centers, ideal for developers requiring low latency, full data privacy, and compliance with EU AI Act. You can generate your API key in [Scaleway's console](https://console.scaleway.com/generative-api/models). Get started:\n1. Create an API key [here](https://console.scaleway.com/iam/api-keys/)\n2. Paste below\n3. Select a model preset`,
params: {
apiKey: "",
},
collectInputFor: [
{
inputType: "text",
key: "apiKey",
label: "API key",
placeholder: "Enter your Scaleway API key",
required: true,
},
...completionParamsInputsConfigs,
],
icon: "scaleway.png",
tags: [ModelProviderTags.RequiresApiKey, ModelProviderTags.OpenSource],
packages: [
models.llama318bChat,
models.llama3170bChat,
models.mistralNemo,
models.Qwen25Coder32b,
],
apiKeyUrl: "https://console.scaleway.com/iam/api-keys",
},
azure: {
title: "Azure OpenAI",
provider: "azure",
Expand Down
2 changes: 2 additions & 0 deletions packages/config-types/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ export const modelDescriptionSchema = z.object({
"azure",
"continue-proxy",
"nebius",
"scaleway"
]),
model: z.string(),
apiKey: z.string().optional(),
Expand Down Expand Up @@ -109,6 +110,7 @@ export const embeddingsProviderSchema = z.object({
"gemini",
"continue-proxy",
"nebius",
"scaleway",
]),
apiBase: z.string().optional(),
apiKey: z.string().optional(),
Expand Down

0 comments on commit ffa382d

Please sign in to comment.