Skip to main content

model guide

Nano Banana Pro

gemini-3-pro-image

Professional

A professional route configured for complex instructions, image editing, and high-resolution final assets.

4K supportComplex instructionsProfessional assets
Route receipt
Model ID
gemini-3-pro-image
Configured estimate
$0.09/ call
Output sizes
1K · 2K · 4K
API family
Gemini native

Prompt presets

These controls are read directly from YingTu’s model registry.

Campaign key visual

A premium campaign key visual for a design-led audio product, precise industrial details, controlled studio reflections, cinematic depth.

Complex composition

A layered architectural scene with people, signage, landscaping, and coherent late-afternoon lighting, realistic material detail.

Final asset edit

Keep the product geometry and brand marks unchanged. Refine lighting, surface detail, and background into a polished commercial image.

Actual route configuration

Values on this page come from the same model registry used by the Image Studio.

Best for

  • Complex scenes and instructions
  • High-resolution final assets
  • Professional image editing

Review before use

  • Higher configured cost should be evaluated against the final task.
  • 4K output does not remove the need for visual review.
  • Very complex references may still need prompt iteration.
Image editing: Not listed in this route

API quickstart

The sample is generated by the same code helper used in the existing Studio.

gemini-3-pro-image
import requests
import base64

# Configuration
API_KEY = "sk-YOUR_API_KEY"  # Replace with your API Key
API_URL = "https://api2.laozhang.ai/v1beta/models/gemini-3-pro-image:generateContent"

# Request headers
headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

# Build request payload
payload = {
    "contents": [{
        "parts": [{"text": "A premium campaign key visual for a design-led audio product, precise industrial details, controlled studio reflections, cinematic depth."}]
    }],
    "generationConfig": {
        "responseModalities": ["IMAGE"],
        "imageConfig": {
            "imageSize": "2K"
        }
    }
}

# Send request
print("Generating image...")
response = requests.post(API_URL, headers=headers, json=payload, timeout=180)

if response.status_code != 200:
    print(f"Error: {response.status_code} - {response.text}")
    exit(1)

# Extract and save image
result = response.json()

image_part = None
for candidate in result.get("candidates", []):
    for part in candidate.get("content", {}).get("parts", []):
        inline_data = part.get("inlineData") or part.get("inline_data")
        if inline_data and inline_data.get("data"):
            image_part = inline_data
            break
    if image_part:
        break

if not image_part:
    print("No image data in response")
    print(result)
    exit(1)

mime_type = image_part.get("mimeType") or image_part.get("mime_type") or "image/png"
extension = "jpg" if mime_type == "image/jpeg" else "webp" if mime_type == "image/webp" else "png"
output_path = f"output.{extension}"

with open(output_path, "wb") as f:
    image_data = image_part["data"]
    f.write(base64.b64decode(image_data))

print(f"✅ Image saved: {output_path}")

Existing Studio gallery

These legacy gallery images have no model or prompt provenance. They are visual examples only, not evidence for the route on this page.

Unattributed Studio example
Unattributed Studio example
Unattributed Studio example