Skip to main content
google avatar

Gemini 3.5 Flash-Lite API

google/gemini-3.5-flash-lite

The cheapest Gemini text tier — built for high-volume agentic tasks, translation and simple data processing over an OpenAI-compatible endpoint.

tool callingjson mode
$0.42 in · $3.5 out per 1M tokens

Chat with this model

Chat

Try this model — replies stream in live.
You need to be logged in to run this model and view results.
Log in

Model Pricing

Pricing

This model is billed per token, at separate rates for what you send and what it produces.

Input tokens
$0.42
per 1M tokens
Cached input tokens
$0.042
per 1M tokens
Output tokens
$3.5
per 1M tokens

Every request rounds up to the nearest $0.01.

If a run reports no token usage, it bills a flat $0.01.

Gemini 3.5 Flash-Lite API

Gemini 3.5 Flash-Lite is a text-to-text AI model by google. On ModelRunner it runs through a REST API or via MCP from any AI assistant with pay-per-use pricing.

POST https://queue.modelrunner.run/google/gemini-3.5-flash-lite

cURL

# Submit a request to the queue. Input fields go at the top level of the
# body. The optional reserved "metadata" object holds your own flat string
# tags — stored on the request, never sent to the model; filter later with
# GET https://queue.modelrunner.run/requests?metadata=<url-encoded JSON>.
curl -X POST https://queue.modelrunner.run/google/gemini-3.5-flash-lite \
  -H "Authorization: Key $MRUN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": "Extract the order details as JSON with keys order_id, customer, items (array of {name, qty, unit_price}), and total. Text: Order #A-8842 for Dana Whitfield: 3x cold brew concentrate at 12.50 each, 1x ceramic pour-over at 34.00, 2x filter pack at 6.25. Charged 105.00 to card ending 4417."
      }
    ],
    "max_tokens": 4000,
    "response_format": {
      "type": "json_object"
    },
    "metadata": {
      "project": "my-project"
    }
  }'
# → { "request_id": "...", "status_url": "...", "response_url": "..." }

# Poll status_url until "COMPLETED", then fetch the result
curl "https://queue.modelrunner.run/google/gemini-3.5-flash-lite/requests/$REQUEST_ID/status" \
  -H "Authorization: Key $MRUN_API_KEY"
curl "https://queue.modelrunner.run/google/gemini-3.5-flash-lite/requests/$REQUEST_ID" \
  -H "Authorization: Key $MRUN_API_KEY"

JavaScript

import { modelrunner } from "@modelrunner/client";

const result = await modelrunner.subscribe("google/gemini-3.5-flash-lite", {
  input: {
    "messages": [
      {
        "role": "user",
        "content": "Extract the order details as JSON with keys order_id, customer, items (array of {name, qty, unit_price}), and total. Text: Order #A-8842 for Dana Whitfield: 3x cold brew concentrate at 12.50 each, 1x ceramic pour-over at 34.00, 2x filter pack at 6.25. Charged 105.00 to card ending 4417."
      }
    ],
    "max_tokens": 4000,
    "response_format": {
      "type": "json_object"
    }
  },
});
console.log(result);

Python

import os
import requests

headers = {"Authorization": f"Key {os.environ['MRUN_API_KEY']}"}

submitted = requests.post(
    "https://queue.modelrunner.run/google/gemini-3.5-flash-lite",
    headers=headers,
    json={
      "messages": [
        {
          "role": "user",
          "content": "Extract the order details as JSON with keys order_id, customer, items (array of {name, qty, unit_price}), and total. Text: Order #A-8842 for Dana Whitfield: 3x cold brew concentrate at 12.50 each, 1x ceramic pour-over at 34.00, 2x filter pack at 6.25. Charged 105.00 to card ending 4417."
        }
      ],
      "max_tokens": 4000,
      "response_format": {
        "type": "json_object"
      }
    },
).json()

# Poll submitted["status_url"] until "COMPLETED", then:
result = requests.get(submitted["response_url"], headers=headers).json()

Input parameters

NameTypeRequiredDescription
messagesarrayyesOpenAI-style conversation history. Each item is an object with a `role` (`system`, `user`, `assistant` or `tool`) and `content`.
streambooleannoReturn the reply as a Server-Sent Events stream of deltas terminated by `data: [DONE]`. Default: false.
max_tokensintegernoUpper bound on generated tokens.
toolsarraynoOpenAI-format tool definitions the model may call.
tool_choiceno`auto`, `none`, `required`, or a specific tool.
response_formatobjectnoSet `{"type":"json_object"}` for JSON mode.
stopnoUp to 4 stop sequences.
seedintegernoBest-effort determinism hint.

Machine-readable: OpenAPI schema · llms.txt

Use Gemini 3.5 Flash-Lite from Claude & Cursor (MCP)

Point Claude Code, Claude Desktop, Cursor, or any MCP client at the ModelRunner MCP server and Gemini 3.5 Flash-Lite becomes a tool your assistant can call directly — it authorizes via OAuth (no API key in config) and runs this model with the run_model tool using the endpoint google/gemini-3.5-flash-lite.

MCP client config (Claude Desktop, Cursor)

{
  "mcpServers": {
    "modelrunner": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.modelrunner.run/mcp"]
    }
  }
}

Claude Code

claude mcp add --transport http modelrunner https://mcp.modelrunner.run/mcp

Then ask your assistant, for example: “Run google/gemini-3.5-flash-lite on ModelRunner to generate text”. MCP setup guide.

Model Details

Model Details

Gemini 3.5 Flash-Lite is the most cost-efficient model in the Gemini text family, intended for work you do a lot of rather than work that is hard: classification, translation, extraction, tagging, routing and other high-volume data processing.

Served through the **OpenAI-compatible chat completions API**:

``` POST https://queue.modelrunner.run/google/gemini-3.5-flash-lite/chat/completions ```

Point any OpenAI SDK or OpenAI-compatible tool at `base_url = https://queue.modelrunner.run/google/gemini-3.5-flash-lite` with your ModelRunner API key. Streaming, tool calling and JSON mode all work.

Pick this tier when volume matters more than depth of reasoning; step up to a Flash or thinking model when answers need multi-step reasoning.

Billing is per token from the model's own reported usage, thinking tokens included. Cached input is billed at a reduced rate.

The request body follows OpenAI's chat completions shape: a `messages` array of `system`/`user`/`assistant`/`tool` turns, an optional `max_tokens` cap, a `seed` for best-effort determinism, and up to four `stop` sequences. Pass an OpenAI-format `tools` array with `tool_choice` for function calling, and set `response_format` to `{"type": "json_object"}` when the caller needs guaranteed-valid JSON. Responses come back as a standard ChatCompletion object with `choices[]` and a `usage` block for per-request token accounting.

Pricing is $0.42 per 1M input tokens, $0.042 per 1M cached input tokens, and $3.50 per 1M output tokens — roughly a fifth the cost of Gemini 3.5 Flash, which is the point: this tier is built to sit behind pipelines that call an LLM on every row, every message, or every support ticket, where the per-call cost compounds fast. Use it for bulk classification and tagging, translation at scale, and lightweight structured extraction; move up to Flash or Flash 3.7 when a single call needs more reasoning depth than volume.