Skip to main content

DigitalOcean logoDigitalOcean

Access 96 DigitalOcean models through Mastra's model router. Authentication is handled automatically using the DIGITALOCEAN_ACCESS_TOKEN environment variable.

Learn more in the DigitalOcean documentation.

.env
DIGITALOCEAN_ACCESS_TOKEN=your-api-token
src/mastra/agents/my-agent.ts
import { Agent } from "@mastra/core/agent";

const agent = new Agent({
id: "my-agent",
name: "My Agent",
instructions: "You are a helpful assistant",
model: "digitalocean/alibaba-qwen3-32b"
});

// 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);
}
note

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

Models
Direct link to Models

ModelContextToolsReasoningImageAudioVideoInput $/1MOutput $/1M
digitalocean/alibaba-qwen3-32b33K$0.25$0.55
digitalocean/all-mini-lm-l6-v2256$0.01
digitalocean/anthropic-claude-4.1-opus200K$15$75
digitalocean/anthropic-claude-4.5-haiku200K$1$5
digitalocean/anthropic-claude-4.5-sonnet200K$3$15
digitalocean/anthropic-claude-4.6-sonnet200K$3$15
digitalocean/anthropic-claude-5-sonnet1.0M$2$10
digitalocean/anthropic-claude-fable-51.0M$10$50
digitalocean/anthropic-claude-fable-5.11.0M$10$50
digitalocean/anthropic-claude-haiku-4.5200K$1$5
digitalocean/anthropic-claude-opus-4200K$15$75
digitalocean/anthropic-claude-opus-4.5200K$5$25
digitalocean/anthropic-claude-opus-4.6200K$5$25
digitalocean/anthropic-claude-opus-4.7200K$5$25
digitalocean/anthropic-claude-opus-4.81.0M$5$25
digitalocean/anthropic-claude-opus-51.0M$5$25
digitalocean/anthropic-claude-sonnet-41.0M$3$15
digitalocean/arcee-trinity-large-thinking128K$0.25$0.90
digitalocean/bge-m38K$0.02
digitalocean/bge-reranker-v2-m38K$0.01
digitalocean/deepseek-3.2164K$0.25$0.80
digitalocean/deepseek-4-flash1.0M$0.07$0.17
digitalocean/deepseek-r1-distill-llama-70b33K$0.99$0.99
digitalocean/deepseek-v3164K
digitalocean/deepseek-v4-flash-07311.0M$0.08$0.25
digitalocean/deepseek-v4-pro1.0M$0.87$2
digitalocean/deepseek-v4-pro-08131.0M$1$4
digitalocean/e5-large-v2512$0.02
digitalocean/fal-ai/elevenlabs/tts/multilingual-v2
digitalocean/fal-ai/fast-sdxl
digitalocean/fal-ai/flux/schnell
digitalocean/fal-ai/stable-audio-25/text-to-audio
digitalocean/gemma-4-31B-it256K$0.18$0.50
digitalocean/glm-564K$1$3
digitalocean/glm-5.1164K$1$4
digitalocean/glm-5.2262K$0.70$2
digitalocean/glm-5.31.0M$0.95$3
digitalocean/glm-5.3-flash1.0M$0.15$0.50
digitalocean/gte-large-en-v1.58K$0.09
digitalocean/kimi-k2.5262K$0.50$3
digitalocean/kimi-k2.6262K$0.95$4
digitalocean/kimi-k31.0M$3$13
digitalocean/llama-4-maverick128K$0.20$0.70
digitalocean/llama3-8b-instruct131K$0.20$0.20
digitalocean/llama3.3-70b-instruct128K$0.65$0.65
digitalocean/mimo-v2.5-pro262K$0.40$2
digitalocean/minimax-m2.566K$0.30$1
digitalocean/ministral-3-8b-instruct-2512262K
digitalocean/mistral-3-14B262K$0.20$0.20
digitalocean/mistral-7b-instruct-v0.333K
digitalocean/multi-qa-mpnet-base-dot-v1512$0.01
digitalocean/nemotron-3-nano-30b262K
digitalocean/nemotron-3-nano-omni66K$0.50$0.90
digitalocean/nemotron-3-ultra-550b131K$0.90$2
digitalocean/nemotron-nano-12b-v2-vl128K$0.20$0.60
digitalocean/nvidia-nemotron-3-super-120b1.0M$0.30$0.65
digitalocean/openai-gpt-4.11.0M$2$8
digitalocean/openai-gpt-4o128K$3$10
digitalocean/openai-gpt-4o-mini128K$0.15$0.60
digitalocean/openai-gpt-5400K$1$10
digitalocean/openai-gpt-5-mini400K$0.25$2
digitalocean/openai-gpt-5-nano400K$0.05$0.40
digitalocean/openai-gpt-5.1-codex-max400K$1$10
digitalocean/openai-gpt-5.2400K$2$14
digitalocean/openai-gpt-5.2-pro400K$21$168
digitalocean/openai-gpt-5.3-codex400K$2$14
digitalocean/openai-gpt-5.4400K$3$15
digitalocean/openai-gpt-5.4-mini400K$0.75$5
digitalocean/openai-gpt-5.4-nano400K$0.20$1
digitalocean/openai-gpt-5.4-pro1.1M$30$180
digitalocean/openai-gpt-5.51.0M$5$30
digitalocean/openai-gpt-5.6-luna1.1M$0.20$1
digitalocean/openai-gpt-5.6-sol1.1M$4$20
digitalocean/openai-gpt-5.6-terra1.1M$2$12
digitalocean/openai-gpt-6-astra1.1M$10$50
digitalocean/openai-gpt-image-1$5$40
digitalocean/openai-gpt-image-1.5$5$10
digitalocean/openai-gpt-image-2$8$30
digitalocean/openai-gpt-oss-120b128K$0.06$0.39
digitalocean/openai-gpt-oss-20b128K$0.05$0.45
digitalocean/openai-o1200K$15$60
digitalocean/openai-o3200K$2$8
digitalocean/openai-o3-mini200K$1$4
digitalocean/qwen-2.5-14b-instruct131K
digitalocean/qwen3-coder-flash262K$0.45$2
digitalocean/qwen3-embedding-0.6b8K$0.04
digitalocean/qwen3-tts-voicedesign33K
digitalocean/qwen3.5-397b-a17b131K$0.55$4
digitalocean/qwen3.8-max1.0M$2$6
digitalocean/stable-diffusion-3.5-large256$0.08
digitalocean/wan2-2-t2v-a14b100$0.60
91 available models

Model availability, capabilities, context windows, and pricing are sourced from models.dev and may change.

Advanced configuration
Direct link to Advanced configuration

Custom headers
Direct link to Custom headers

src/mastra/agents/my-agent.ts
const agent = new Agent({
id: "custom-agent",
name: "custom-agent",
model: {
url: "https://inference.do-ai.run/v1",
id: "digitalocean/alibaba-qwen3-32b",
apiKey: process.env.DIGITALOCEAN_ACCESS_TOKEN,
headers: {
"X-Custom-Header": "value"
}
}
});

Dynamic model selection
Direct link to Dynamic model selection

src/mastra/agents/my-agent.ts
const agent = new Agent({
id: "dynamic-agent",
name: "Dynamic Agent",
model: ({ requestContext }) => {
const useAdvanced = requestContext.task === "complex";
return useAdvanced
? "digitalocean/wan2-2-t2v-a14b"
: "digitalocean/alibaba-qwen3-32b";
}
});
On this page