Gemini 3.1 Pro API: Ontwikkelaarsgids met Codevoorbeelden (2026)
Complete ontwikkelaarsgids voor de Gemini 3.1 Pro API. Behandelt model-ID's (gemini-3.1-pro-preview-customtools), prijzen, codevoorbeelden in Python en JavaScript, aangepaste tools, function calling en integratie met je app.
Samenvatting
| Gemini 3.1 Pro | |
|---|---|
| Model-ID's | gemini-3.1-pro, gemini-3.1-pro-preview-customtools |
| Contextvenster | 1M tokens |
| Inputprijs | $2/1M tokens |
| Outputprijs | $12/1M tokens |
| Belangrijkste functies | Aangepaste tools, function calling, grounding, multimodaal (tekst + beeld + audio + video) |
| API | Google AI Studio / Vertex AI |
Gemini 3.1 Pro is Google's nieuwste frontier-model, uitgebracht maart 2026. Het is de goedkoopste frontier-API per token, heeft native 1M context en introduceert aangepaste tools — een nieuwe manier om het model toegang te geven tot externe functies met gestructureerde schema's.
Model-ID's
Google biedt twee varianten van Gemini 3.1 Pro:
| Model-ID | Beschrijving | Status |
|---|---|---|
gemini-3.1-pro | Stabiele release, algemene beschikbaarheid | GA |
gemini-3.1-pro-preview-customtools | Preview met verbeterde ondersteuning voor aangepaste tools | Preview |
De customtools preview-variant heeft verbeterde betrouwbaarheid voor complexe function calling-ketens — gebruik het als je app intensief gebruik maakt van tool calling. Voor algemeen gebruik wordt het stabiele gemini-3.1-pro aanbevolen.
# Google AI Studio
model = "gemini-3.1-pro"
# Vertex AI
model = "gemini-3.1-pro@001"
Snelstart: Python
Installatie
pip install google-genai
Basis Tekstgeneratie
from google import genai
client = genai.Client(api_key="YOUR_API_KEY")
response = client.models.generate_content(
model="gemini-3.1-pro",
contents="Explain quantum computing in 3 sentences."
)
print(response.text)
Streaming
for chunk in client.models.generate_content_stream(
model="gemini-3.1-pro",
contents="Write a Python function to merge two sorted arrays."
):
print(chunk.text, end="")
Snelstart: JavaScript
Installatie
npm install @google/genai
Basis Tekstgeneratie
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });
const response = await ai.models.generateContent({
model: "gemini-3.1-pro",
contents: "Explain quantum computing in 3 sentences.",
});
console.log(response.text);
Streaming
const stream = await ai.models.generateContentStream({
model: "gemini-3.1-pro",
contents: "Write a JavaScript function to merge two sorted arrays.",
});
for await (const chunk of stream) {
process.stdout.write(chunk.text);
}
Be first to build with AI
Y Build is the AI-era operating system for startups. Join the waitlist and get early access.
Prijzen
Gemini 3.1 Pro is de goedkoopste frontier-model-API per maart 2026.
| Gemini 3.1 Pro | GPT-5.2 | Claude Sonnet 4.6 | |
|---|---|---|---|
| Input | $2/1M | $5/1M | $3/1M |
| Output | $12/1M | $15/1M | $15/1M |
| Context | 1M | 400K | 1M (beta) |
| Kosten per 100K in + 20K uit | $0,44 | $0,80 | $0,60 |
Op schaal kost Gemini 3.1 Pro ongeveer 45% minder dan GPT-5.2 en 27% minder dan Sonnet 4.6 per sessie.
Gratis Plan
Google AI Studio biedt een gratis plan:
- 60 verzoeken per minuut
- 1M tokens per minuut
- Geen creditcard vereist
Dit is het royaalste gratis API-plan onder de drie grote aanbieders.
Belangrijkste Functies
1M Token Contextvenster
Gemini 3.1 Pro ondersteunt native 1 miljoen tokens context — genoeg voor:
- ~700.000 woorden tekst
- ~30.000 regels code
- ~1 uur video
- ~11 uur audio
Anders dan concurrerende modellen die uitgebreide context als betafunctie aanbieden, is Gemini's 1M context volledig GA en wordt hetzelfde geprijsd als standaardcontext.
Aangepaste Tools (Function Calling)
Aangepaste tools laten je externe functies definiëren die Gemini kan aanroepen tijdens generatie. Het model beslist wanneer het een tool aanroept, structureert de argumenten en verwerkt het resultaat in zijn antwoord.
Dit is waarvoor de gemini-3.1-pro-preview-customtools-variant is geoptimaliseerd.
Grounding met Google Zoeken
Gemini kan zijn antwoorden baseren op realtime Google Zoekresultaten. Schakel grounding in om hallucinaties te verminderen en ervoor te zorgen dat het model actuele informatie gebruikt.
Native Multimodaal
Verwerk tekst, afbeeldingen, audio en video in een enkel verzoek. Geen aparte vision- of audiomodellen — Gemini verwerkt alle modaliteiten native.
Codevoorbeeld: Aangepaste Tools / Function Calling
Dit voorbeeld maakt een weertool die Gemini kan aanroepen om huidige weersomstandigheden op te halen.
Python
from google import genai
from google.genai import types
client = genai.Client(api_key="YOUR_API_KEY")
# Define the tool
weather_tool = types.Tool(
function_declarations=[
types.FunctionDeclaration(
name="get_weather",
description="Get the current weather for a city",
parameters=types.Schema(
type=types.Type.OBJECT,
properties={
"city": types.Schema(
type=types.Type.STRING,
description="City name, e.g. 'San Francisco'"
),
"unit": types.Schema(
type=types.Type.STRING,
enum=["celsius", "fahrenheit"],
description="Temperature unit"
),
},
required=["city"],
),
)
]
)
# Send request with tool
response = client.models.generate_content(
model="gemini-3.1-pro-preview-customtools",
contents="What's the weather like in Tokyo?",
config=types.GenerateContentConfig(
tools=[weather_tool],
),
)
# Check if the model wants to call a function
for part in response.candidates[0].content.parts:
if part.function_call:
print(f"Function: {part.function_call.name}")
print(f"Arguments: {part.function_call.args}")
# Output:
# Function: get_weather
# Arguments: {'city': 'Tokyo', 'unit': 'celsius'}
# In production, you'd call your actual weather API here,
# then send the result back to Gemini for a natural language response.
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });
const weatherTool = {
functionDeclarations: [
{
name: "get_weather",
description: "Get the current weather for a city",
parameters: {
type: "OBJECT",
properties: {
city: {
type: "STRING",
description: "City name, e.g. 'San Francisco'",
},
unit: {
type: "STRING",
enum: ["celsius", "fahrenheit"],
description: "Temperature unit",
},
},
required: ["city"],
},
},
],
};
const response = await ai.models.generateContent({
model: "gemini-3.1-pro-preview-customtools",
contents: "What's the weather like in Tokyo?",
config: {
tools: [weatherTool],
},
});
// Check for function calls in the response
for (const part of response.candidates[0].content.parts) {
if (part.functionCall) {
console.log(`Function: ${part.functionCall.name}`);
console.log(`Arguments:`, part.functionCall.args);
}
}
Codevoorbeeld: Multimodaal (Beeld + Tekst)
Python
from google import genai
from google.genai import types
import base64
client = genai.Client(api_key="YOUR_API_KEY")
# Read a local image
with open("screenshot.png", "rb") as f:
image_data = f.read()
response = client.models.generate_content(
model="gemini-3.1-pro",
contents=[
types.Content(
parts=[
types.Part(text="What's in this screenshot? Describe the UI elements."),
types.Part(
inline_data=types.Blob(
mime_type="image/png",
data=image_data,
)
),
]
)
],
)
print(response.text)
JavaScript
import { GoogleGenAI } from "@google/genai";
import fs from "fs";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });
const imageData = fs.readFileSync("screenshot.png");
const base64Image = imageData.toString("base64");
const response = await ai.models.generateContent({
model: "gemini-3.1-pro",
contents: [
{
parts: [
{ text: "What's in this screenshot? Describe the UI elements." },
{
inlineData: {
mimeType: "image/png",
data: base64Image,
},
},
],
},
],
});
console.log(response.text);
API-Vergelijking: Gemini 3.1 Pro vs GPT-5.2 vs Claude Sonnet 4.6
| Functie | Gemini 3.1 Pro | GPT-5.2 | Claude Sonnet 4.6 |
|---|---|---|---|
| Inputprijs | $2/1M | $5/1M | $3/1M |
| Outputprijs | $12/1M | $15/1M | $15/1M |
| Contextvenster | 1M (GA) | 400K | 1M (beta) |
| Function calling | Ja (aangepaste tools) | Ja | Ja (tool use) |
| Multimodaal | Tekst + beeld + audio + video | Tekst + beeld + audio | Tekst + beeld |
| Grounding | Google Zoeken | Webbrowsing | Geen native grounding |
| Streaming | Ja | Ja | Ja |
| Batch API | Ja | Ja | Ja |
| Gratis plan | 60 RPM, 1M TPM | Beperkt | Beperkt |
| SDK-talen | Python, JS, Go, Dart, Swift | Python, JS | Python, JS |
| Codering (SWE-bench) | 76,8% | 80,0% | 79,6% |
| Computergebruik | N/A | 38,2% | 72,5% |
| Wiskunde (AIME) | ~88% | 100% | ~90% |
Wanneer Elke API Kiezen
Kies Gemini 3.1 Pro wanneer:- Kosten een primaire zorg zijn (goedkoopste frontier-API)
- Je native video- of audioverwerking nodig hebt
- Je 1M context in productie nodig hebt (GA, niet beta)
- Je Google Zoeken grounding wilt
- Je op Google Cloud bouwt
- Wiskundig redeneren kritisch is
- Je in het OpenAI-ecosysteem zit
- Je gestructureerde outputs met gegarandeerde JSON-schema's nodig hebt
- Snelheid bij eenvoudige queries het belangrijkst is
- Codering en agentische taken het primaire gebruik zijn
- Je computergebruik / browserautomatisering nodig hebt
- Kantoorproductiviteitstaken (documenten, spreadsheets)
- Weerstand tegen prompt injection belangrijk is (agentbeveiliging)
Gemini 3.1 Pro Integreren met Je App
Gebruiken met Y Build
Als je een product bouwt met Y Build, kun je de Gemini API direct in je backend integreren. Y Build-projecten deployen naar Cloudflare Workers, die de Gemini API met lage latentie kunnen aanroepen.
// In a Y Build project (Cloudflare Worker)
export async function onRequest(context) {
const response = await fetch(
"https://generativelanguage.googleapis.com/v1beta/models/gemini-3.1-pro:generateContent",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"x-goog-api-key": context.env.GEMINI_API_KEY,
},
body: JSON.stringify({
contents: [{ parts: [{ text: "Your prompt here" }] }],
}),
}
);
const data = await response.json();
return new Response(JSON.stringify(data));
}
Snelheidslimieten
| Tier | Verzoeken/min | Tokens/min |
|---|---|---|
| Free | 60 | 1.000.000 |
| Pay-as-you-go | 1.000 | 4.000.000 |
| Enterprise | Op maat | Op maat |
Veelgestelde Vragen
Wat is gemini-3.1-pro-preview-customtools?
Het is een preview-variant van Gemini 3.1 Pro geoptimaliseerd voor aangepaste tools en function calling. Het heeft verbeterde betrouwbaarheid wanneer het model meerdere tool calls achter elkaar moet uitvoeren. Gebruik het als je app sterk afhankelijk is van function calling. Voor algemene tekstgeneratie gebruik het stabiele gemini-3.1-pro model-ID.
Is Gemini 3.1 Pro beter dan GPT-5.2?
Dat hangt af van de taak. Gemini 3.1 Pro is goedkoper, heeft een groter contextvenster en ondersteunt meer modaliteiten (video, audio). GPT-5.2 scoort hoger op coderingsbenchmarks en wiskundig redeneren. Voor multimodale apps met een budget wint Gemini. Voor pure redeneertaken leidt GPT-5.2.
Hoe verhoudt Gemini 3.1 Pro zich tot Claude Sonnet 4.6?
Gemini is goedkoper ($2/$12 vs $3/$15 per miljoen tokens) en heeft native video/audio-ondersteuning. Claude Sonnet 4.6 is beter in codering (79,6% vs 76,8% op SWE-bench), computergebruik (72,5% vs N/A) en kantoortaken. Kies Gemini voor multimodaal en kosten. Kies Claude voor codering en agents.
Kan ik Gemini 3.1 Pro gratis gebruiken?
Ja. Google AI Studio biedt een gratis plan met 60 verzoeken per minuut en 1 miljoen tokens per minuut. Geen creditcard vereist. Dit is voldoende voor ontwikkeling, testen en productie-apps met laag verkeer.
Wat is het verschil tussen Google AI Studio en Vertex AI?
Google AI Studio is de eenvoudigere, ontwikkelaarsgerichte API — meld je aan met een API-sleutel en begin met aanroepen. Vertex AI is het enterpriseplatform — draait op Google Cloud, biedt fine-tuning, model deployment, monitoring en SLA's. Hetzelfde model, andere wrappers. Begin met AI Studio, stap over naar Vertex AI wanneer je enterprisefuncties nodig hebt.
De Conclusie
Gemini 3.1 Pro is de beste waarde frontier-API in maart 2026. Met $2/$12 per miljoen tokens kost het ongeveer de helft van GPT-5.2 en een derde minder dan Claude Sonnet 4.6 — met native 1M context en de breedste multimodale ondersteuning.
Voor ontwikkelaars die AI-aangedreven producten bouwen, is het praktische advies: gebruik Gemini voor multimodale en kostengevoelige taken, Claude voor codering en agents, en GPT-5.2 voor wiskundig redeneren. Model routing over alle drie geeft je het beste van elk.
Een AI-aangedreven product bouwen? Y Build handelt de volledige stack af — AI-ondersteunde codering, one-click deploy naar Cloudflare, Demo Cut voor productvideo's, AI SEO en analytics. Integreer Gemini, Claude of GPT API's in je app en lanceer in uren. Start gratis.
Bronnen:
Be first to build with AI
Y Build is the AI-era operating system for startups. Join the waitlist and get early access.