Skip to main content

Scaleway logoScaleway

Access 13 Scaleway models through Mastra's model router. Authentication is handled automatically using the SCALEWAY_API_KEY environment variable.

Learn more in the Scaleway documentation.

SCALEWAY_API_KEY=your-api-key
import { Agent } from "@mastra/core";

const agent = new Agent({
name: "my-agent",
instructions: "You are a helpful assistant",
model: "scaleway/bge-multilingual-gemma2"
});

// Generate a response
const response = await agent.generate("Hello!");

// Stream a response
const stream = await agent.stream("Tell me a story");
for await (const chunk of stream) {
console.log(chunk);
}
info

Mastra uses the OpenAI-compatible /chat/completions endpoint. Some provider-specific features may not be available. Check the Scaleway documentation for details.

Models

ModelImageAudioVideoToolsStreamingContext Window
scaleway/bge-multilingual-gemma28,191
scaleway/deepseek-r1-distill-llama-70b32,000
scaleway/gemma-3-27b-it40,000
scaleway/gpt-oss-120b128,000
scaleway/llama-3.1-8b-instruct128,000
scaleway/llama-3.3-70b-instruct100,000
scaleway/mistral-nemo-instruct-2407128,000
scaleway/mistral-small-3.2-24b-instruct-2506128,000
scaleway/pixtral-12b-2409128,000
scaleway/qwen3-235b-a22b-instruct-2507260,000
scaleway/qwen3-coder-30b-a3b-instruct128,000
scaleway/voxtral-small-24b-250732,000
scaleway/whisper-large-v3N/A

Advanced Configuration

Custom Headers

const agent = new Agent({
name: "custom-agent",
model: {
url: "https://api.scaleway.ai/v1",
id: "scaleway/bge-multilingual-gemma2",
apiKey: process.env.SCALEWAY_API_KEY,
headers: {
"X-Custom-Header": "value"
}
}
});

Dynamic Model Selection

const agent = new Agent({
name: "dynamic-agent",
model: ({ runtimeContext }) => {
const useAdvanced = runtimeContext.task === "complex";
return useAdvanced
? "scaleway/whisper-large-v3"
: "scaleway/bge-multilingual-gemma2";
}
});

On this page