Direct
Direct upstream connection — best when you need native behavior and the full context window.
| Input | Output | Cache read |
|---|---|---|
| 1.50/M | 9.00/M | 0.15/M |

gemini-3.5-flashGemini 3.5 Flash is Google's efficient multimodal model, delivering near-Pro-level coding and reasoning at Flash-level cost and speed. It is highly optimized for coding capabilities and parallel agent execution loops, supporting text, image, video, audio, and PDF inputs. By default, it uses medium thinking effort for faster, more cost-effective responses, and fully supports thinking levels (minimal, low, medium, high) for fine-grained cost/performance trade-offs.
The same model is available through multiple service channels — choose based on latency, reliability and cost.
Prices in $ / 1M tokensprovider field to the request body, for example "provider": { "channel": "direct" }. Valid values are direct / stable / economical; omit it to use the default channel.Direct upstream connection — best when you need native behavior and the full context window.
| Input | Output | Cache read |
|---|---|---|
| 1.50/M | 9.00/M | 0.15/M |
Gemini 3.5 Flash is an efficient multimodal model released by Google at its I/O conference in May 2026, and the first member of the Gemini 3.5 series. Its core selling point is straightforward: delivers near-Pro-level coding and reasoning capabilities at Flash-level cost and speed.
According to Google's published data, Gemini 3.5 Flash surpasses Gemini 3.1 Pro on coding and agent benchmarks, while delivering output 4 times faster and often completing tasks at less than half the cost. It is specifically optimized for coding capabilities and parallel agent execution loops, and supports text, image, video, audio, and PDF input.
SeaWhale AI offers Gemini 3.5 Flash through an OpenAI-compatible interface, with support for tool calling, streaming output, and multimodal input.
Get an API key · Model ID:
gemini-3.5-flash
Gemini 3.5 Flash is specifically optimized for coding capabilities and parallel agent execution loops. In agent architectures that need to run multiple subtasks simultaneously, its speed advantage is further amplified.
MCP Atlas 83.6% measures tool-calling reliability in scaled scenarios — correct parameter construction, appropriate call timing, and stable result handling. This is a key metric for production-grade agents.
Supports text, image, video, audio, and PDF input. CharXiv Reasoning 84.2% reflects its performance on complex visual reasoning in charts and similar content.
Uses medium thinking effort by default for faster, more cost-effective responses, while fully supporting thinking levels from minimal to maximum, allowing compute to be precisely allocated according to task difficulty.
| Scenario | Description |
|---|---|
| High-throughput coding assistant | Code completion and modification with fast response times |
| Parallel agent architectures | Execution loops running multiple subtasks simultaneously |
| Large-scale tool calling | Production-grade agents under tool protocols such as MCP |
| Chart and scientific analysis | Complex visual reasoning like CharXiv |
| Multimodal processing | Unified understanding of video, audio, and PDF |
| Cost-sensitive production deployment | Near-Pro capability at Flash pricing |
| Capability | Gemini 3.5 Flash | Gemini 3.1 Pro Preview | Gemini 3.1 Flash Lite |
|---|---|---|---|
| Model ID | gemini-3.5-flash |
gemini-3.1-pro-preview |
gemini-3.1-flash-lite-preview |
| Positioning | Efficient multimodal workhorse | Previous-gen flagship | High-capacity economy tier |
| Coding capability | Exceeds 3.1 Pro | Frontier | Basic |
| Output speed | 4× vs 3.1 Pro | Standard | Fast |
| Terminal-Bench 2.1 | 76.2% | — | — |
| Input modalities | Text, image, video, audio, PDF | Text, image | Text, image |
For specific billing, refer to the real-time pricing card at the top of the page.
1. Create a SeaWhale AI API key Generate a key in the console and top up your balance.
2. Start with the default thinking level Gemini 3.5 Flash uses medium thinking effort by default, which is a suitable starting point for most tasks. Increase it only when quality is not up to standard.
3. Call the API
curl -X POST https://api.seawhaleai.com/v1/chat/completions \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"model": "gemini-3.5-flash",
"messages": [
{"role": "user", "content": "Read the structure of this CSV, write a data cleaning script, and explain what each step does."}
],
"stream": true
}'
When was Gemini 3.5 Flash released? At the Google I/O conference in May 2026; it is the first model in the Gemini 3.5 series.
Is it really stronger than 3.1 Pro? Yes, on coding and agent benchmarks, while outputting 4× faster and often at less than half the cost. In some scenarios requiring extremely deep reasoning, the Pro tier still has advantages; it is recommended to test against your own workload.
How do key benchmarks perform? Terminal-Bench 2.1 76.2%, GDPval-AA 1656 Elo, MCP Atlas 83.6%, CharXiv Reasoning 84.2%.
What input modalities are supported? Text, image, video, audio, and PDF — among the fullest modality coverage of any model listed on this page.
How do I adjust the thinking level? Default is medium. For high-difficulty reasoning tasks you can increase it; for latency-sensitive, high-frequency tasks you can lower it to the minimum.
Is it suitable for parallel agents? Very suitable. It has been specifically optimized for parallel agent execution loops, and its speed advantage is amplified in fan-out scenarios.
gemini-3.5-flashhttps://api.seawhaleai.com/v2/"provider": { "channel": "direct" }SeaWhale AI is compatible with the OpenAI API protocol, so you can call it with the OpenAI SDK or plain HTTP requests. Streaming is enabled by default.
About the provider parameter (optional, a SeaWhale AI extension): most models are served over several channels that differ slightly in price and reliability. Add a provider field to the request body to pick one; omit it and the system selects the default channel — normal calls are unaffected.
provideris not part of the official OpenAI protocol — it is a SeaWhale AI extension that only takes effect on this platform. The OpenAI SDK allows custom fields like this to pass through; see the examples below.
| Value | Channel | Best for |
|---|---|---|
direct | Direct | The official upstream link, for native behavior and the full context window |
stable | Preferred | Balanced availability and speed — a good default for production traffic |
economical | Economy | Cost first, well suited to batch processing and price-sensitive workloads |
Available channels and their prices are listed under "Pricing" above (channels vary by model). Additional notes:
"provider": { "channel": "direct" }.extra_body; in Node.js put it directly on the request object and it passes through. In TypeScript projects, add a // @ts-expect-error line to skip the type check.curl https://api.seawhaleai.com/v2/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API_KEY>" \
-d '{
"model": "gemini-3.5-flash",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
"provider": { "channel": "direct" },
"stream": true
}'
# provider is optional — remove this line to use the default channelfrom openai import OpenAI
client = OpenAI(
base_url="https://api.seawhaleai.com/v2",
api_key="<API_KEY>",
)
stream = client.chat.completions.create(
model="gemini-3.5-flash",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"},
],
stream=True,
# Optional: pick a service channel; omit to use the default
extra_body={"provider": {"channel": "direct"}},
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)import OpenAI from 'openai'
const client = new OpenAI({
baseURL: 'https://api.seawhaleai.com/v2',
apiKey: '<API_KEY>',
})
const stream = await client.chat.completions.create({
model: 'gemini-3.5-flash',
messages: [
{ role: 'system', content: 'You are a helpful assistant.' },
{ role: 'user', content: 'Hello!' },
],
stream: true,
// Optional: pick a service channel; omit to use the default
// @ts-expect-error provider is a SeaWhale AI extension, not in the OpenAI SDK types
provider: { channel: 'direct' },
})
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? '')
}