# The Gemma model family

Gemma is Google DeepMind's family of **open models**: the weights are published, so you download
them and run them on your own hardware — a laptop, a phone, or a cluster you control. Nothing is
sent to a server unless you choose to send it.

The family has two halves. A **mainline generation** — Gemma 1 through Gemma 4 — is the general
purpose model most people want. Around each generation sits a set of **variants**: the same
architecture retrained or restructured for one job, like embeddings, safety classification or
vision-language tasks. A variant always descends from a specific generation, which is what the
tree below shows.

## How the family fits together




<!-- Generated from data/models.yml -- edit that file, not this tree. -->


<div class="model-tree">
<ol class="tree-spine" style="--tree-rows: 6">


  <li class="tree-gen">
    <a class="tree-node tree-node--gen" href="../models/gemma-1/index.md">
      <span class="tree-gen-name">Gemma</span>
      <span class="tree-gen-note">The first generation of Gemma text models</span>
    </a>
    
    <ul class="tree-branch">
    
      <li><a class="tree-node" href="../models/paligemma/model-card-v1.md">
        <span class="tree-name">PaliGemma</span>
        <span class="tree-tagline">Vision-language models for captioning, VQA and detection</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/gemma-aps/index.md">
        <span class="tree-name">Gemma APS</span>
        <span class="tree-tagline">Segmenting text into individual propositions</span>
      </a></li>
    
    </ul>
    
  </li>


  <li class="tree-gen">
    <a class="tree-node tree-node--gen" href="../models/gemma-2/index.md">
      <span class="tree-gen-name">Gemma 2</span>
      <span class="tree-gen-note">Text models in 2B, 9B and 27B</span>
    </a>
    
    <ul class="tree-branch">
    
      <li><a class="tree-node" href="../models/paligemma/model-card-v2.md">
        <span class="tree-name">PaliGemma 2</span>
        <span class="tree-tagline">Vision-language models for captioning, VQA and detection</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/shieldgemma/model-card-v1.md">
        <span class="tree-name">ShieldGemma</span>
        <span class="tree-tagline">Safety classification for text and image content</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/datagemma/index.md">
        <span class="tree-name">DataGemma</span>
        <span class="tree-tagline">Grounding generation in Data Commons statistics</span>
      </a></li>
    
    </ul>
    
  </li>


  <li class="tree-gen">
    <a class="tree-node tree-node--gen" href="../models/gemma-3/index.md">
      <span class="tree-gen-name">Gemma 3</span>
      <span class="tree-gen-note">Multimodal text and image models, 270M to 27B</span>
    </a>
    
    <ul class="tree-branch">
    
      <li><a class="tree-node" href="../models/gemma-3n/model-card.md">
        <span class="tree-name">Gemma 3n</span>
        <span class="tree-tagline">On-device models for phones, laptops and tablets</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/functiongemma/model-card.md">
        <span class="tree-name">FunctionGemma</span>
        <span class="tree-tagline">Gemma 3 270M tuned for function calling</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/embeddinggemma/model-card-v1.md">
        <span class="tree-name">EmbeddingGemma</span>
        <span class="tree-tagline">308M multilingual text embeddings</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/shieldgemma/model-card-v2.md">
        <span class="tree-name">ShieldGemma 2</span>
        <span class="tree-tagline">Safety classification for text and image content</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/gemma-scope/index.md">
        <span class="tree-name">Gemma Scope</span>
        <span class="tree-tagline">Interpretability tools for inspecting model internals</span>
      </a></li>
    
    </ul>
    
  </li>


  <li class="tree-gen">
    <a class="tree-node tree-node--gen" href="../models/gemma-4/model-card.md">
      <span class="tree-gen-name">Gemma 4</span>
      <span class="tree-gen-note">Multimodal text, image and audio input across five sizes</span>
    </a>
    
    <ul class="tree-branch">
    
      <li><a class="tree-node" href="../models/diffusiongemma/model-card.md">
        <span class="tree-name">DiffusionGemma</span>
        <span class="tree-tagline">Experimental text diffusion for exceptionally fast generation</span>
      </a></li>
    
      <li><a class="tree-node" href="../models/embeddinggemma/model-card-v2.md">
        <span class="tree-name">EmbeddingGemma 2</span>
        <span class="tree-tagline">740M multimodal text, image, audio and video embeddings</span>
      </a></li>
    
    </ul>
    
  </li>

</ol>


</div>

<p class="tree-legend">
Each variant sits under the generation its own model page names as its base.

</p>

## Gemma 4

The current generation, and where to start unless you need something a variant does.

<!-- Generated from data/models.yml -- edit that file, not this table. -->

| Variant | Parameters | Input | Context | Intended Platform |
|---|---|---|---|---|
| **E2B** | 2B effective | Text, Image, Audio, Video | 128K | Mobile devices |
| **E4B** | 4B effective | Text, Image, Audio, Video | 128K | Mobile and laptops |
| **12B** | 12B | Text, Image, Audio, Video | 256K | Laptops and desktops |
| **26B A4B** | 26B (4B active) | Text, Image, Video | 256K | Desktops and servers |
| **31B** | 31B | Text, Image, Video | 256K | Servers |

!!! note "Audio and video support"
    Audio input is native to **E2B, E4B and 12B**. The **26B A4B** and **31B** models accept
    video as individual frames — that is, as images — but do not process audio.

[Run one now](../get-started/index.md) or read the [Gemma 4 model card](gemma-4/model-card.md)
for the full technical detail.

## Earlier generations

Still supported, and still the right choice when a smaller or text-only model is enough.

<!-- Generated from data/models.yml -- edit that file, not these tables. -->

### Gemma 3n

The on-device member of the Gemma 3 generation.

| Size | Input ➔ Output | Intended Platform |
|---|---|---|
| **E2B** | Text, images, audio ➔ Text | Mobile devices |
| **E4B** | Text, images, audio ➔ Text | Mobile devices and laptops |






### Gemma 3

| Size | Input ➔ Output | Intended Platform |
|---|---|---|
| **270M** | Text ➔ Text | Mobile devices and single board computers |
| **1B** | Text ➔ Text | Mobile devices and single board computers |
| **4B** | Text, images ➔ Text | Desktop computers and small servers |
| **12B** | Text, images ➔ Text | Higher-end desktop computers and servers |
| **27B** | Text, images ➔ Text | Large servers or server clusters |





### Gemma 2

| Size | Input ➔ Output | Intended Platform |
|---|---|---|
| **2B** | Text ➔ Text | Mobile devices and laptops |
| **9B** | Text ➔ Text | Higher-end desktop computers and servers |
| **27B** | Text ➔ Text | Large servers or server clusters |





### Gemma

| Size | Input ➔ Output | Intended Platform |
|---|---|---|
| **2B** | Text ➔ Text | Mobile devices and laptops |
| **7B** | Text ➔ Text | Desktop computers and small servers |





## Choosing between them

- **Just starting?** Take the current generation, instruction-tuned, at the smallest size that
  fits your hardware. It answers a wide range of prompts with no further training.
- **Need a specific job done?** Check whether a variant already does it — embeddings
  ([EmbeddingGemma](embeddinggemma/index.md)), safety labelling
  ([ShieldGemma](shieldgemma/index.md)), tool calling
  ([FunctionGemma](functiongemma/index.md)) — before fine-tuning a core model yourself.
- **On a phone or edge device?** [Gemma 3n](gemma-3n/index.md) and the Gemma 4 E2B and E4B sizes
  are built for it.

For the full dated history of every release, see [Releases](releases.md).

--8<-- "glossary.md"
