Gemini Robotics ER

Modelet e Gemini Robotics ER (arsyetimi i mishëruar) janë modele të gjuhës vizuale (VLM) që i lejojnë robotët të perceptojnë dhe të ndërveprojnë me botën fizike. Ato interpretojnë të dhënat vizuale, kryejnë arsyetime hapësinore dhe kohore, planifikojnë detyra me shumë hapa dhe organizojnë robotët dhe veglat.

Modelet

Modeli Gemini Robotics ER 2 është modeli më i fundit në Gemini Robotics. Ky është modeli ynë i përditësuar i arsyetimit që i mundëson robotëve të kuptojnë me saktësi mjediset e tyre. Ai është i specializuar në aftësitë e arsyetimit të mishëruar, si p.sh. orkestrimi i agjentëve të robotëve (p.sh. duke përdorur VLAs), kuptimi i videove të robotëve, duke përfshirë kuptimin e progresit dhe zbulimin e suksesit, leximin e instrumenteve, tregimin me gisht dhe arsyetimin hapësinor.

Modeli Gemini Robotics ER 2 prezanton dy pika përfundimtare të modelit:

  • gemini-robotics-er-2-preview: Modeli standard ER 2. Bazohet në Gemini 3.5 Flash me arsyetim të përmirësuar hapësinor, gjetje të momenteve të videos, klasifikim të progresit të videos, organizim të shumë robotëve dhe përdorim të veglave me shumë hapa.
  • gemini-robotics-er-2-streaming-preview: Optimized për transmetim në kohë reale duke përdorur Live API. Përdor këtë model për agjentët robotë me vonesë të ulët që përpunojnë audio dhe video të vazhdueshme hyrëse.

Gemini Robotics ER 1.6 është zhvlerësuar më 31 gusht 2026. Nëse po përdor ende Gemini Robotics ER 1.6, përmirësoje në Gemini Robotics ER 2 duke zëvendësuar model="gemini-robotics-er-1.6-preview" me model="gemini-robotics-er-2-preview" ose model="gemini-robotics-er-2-streaming-preview" në thirrjet e tua të API-së.

Provo Gemini Robotics ER 2 në Google AI Studio

Aftësitë e robotikës

Gemini Robotics ER mbështet një sërë aftësish të arsyetimit të mishëruar. Zgjidh një aftësi për të mësuar më shumë:

Aftësia Përshkrimi Udhëzuesi
Arsyetimi hapësinor Të drejtosh te objektet, t'i gjurmosh ato në video, t'i zbulosh me kutitë e kufijve, të planifikosh trajektoret. Arsyetimi hapësinor
Vizioni agjentik Përdor ekzekutimin e kodit për të përmirësuar aftësitë e tjera duke shfrytëzuar veglat e manipulimit të imazheve. Vizioni agjentik
Orkestrimi i detyrave Kombino arsyetimin hapësinor me API-të e personalizuara të robotëve për të përfunduar detyra me horizont të gjatë. Orkestrimi i detyrave
Transmetimi (vetëm pika përfundimtare e transmetimit të Gemini Robotics ER 2) Transmetim dydrejtimësh për agjentë robotë në kohë reale me thirrje funksioni me vonesë të ulët. Transmetim për robotikën
Progresi i videos (vetëm Gemini Robotics ER 2) Gjetja e momenteve dhe klasifikimi i progresit nga furnizimet e vazhdueshme të videove. Kuptimi i videos

Para se të fillosh

Modelet Gemini Robotics ER ofrohen nëpërmjet Gemini Developer API. Për të filluar, krijo një çelës të Gemini API nga Google AI Studio ose konsola e Google Cloud dhe konfiguro mjedisin tënd.

Për detaje për llojet e çelësave, sigurinë dhe se si të konfigurosh çelësin tënd në Python, JavaScript dhe gjuhë të tjera, shiko Përdorimi i çelësave të Gemini API.

Fillimi

Shembulli i mëposhtëm gjen objektet në një imazh dhe kthen koordinatat dhe etiketat e tyre të normalizuara 2D. Mund ta kalosh këtë dalje drejtpërdrejt te një API i robotikës ose një model i VLA-së për të gjeneruar veprimet e robotit.

Python

from google import genai

PROMPT = """
          Point to no more than 10 items in the image. The label returned
          should be an identifying name for the object detected.
          The answer should follow the json format: [{"point": ,
          "label": }, ...]. The points are in [y, x] format
          normalized to 0-1000.
        """
client = genai.Client()

uploaded_file = client.files.upload(file="my-image.png")

image_response = client.interactions.create(
    model="gemini-robotics-er-2-preview",
    input=[
        {
            "type": "image",
            "uri": uploaded_file.uri,
            "mime_type": uploaded_file.mime_type
        },
        {"type": "text", "text": PROMPT}
    ],
    generation_config={"thinking_level": "high"},
)

print(image_response.output_text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const PROMPT = `
  Point to no more than 10 items in the image. The label returned
  should be an identifying name for the object detected.
  The answer should follow the json format: [{"point": ,
  "label": }, ...]. The points are in [y, x] format
  normalized to 0-1000.
`;
const client = new GoogleGenAI();

const uploadedFile = await client.files.upload({ file: "my-image.png" });

const imageResponse = await client.interactions.create({
  model: "gemini-robotics-er-2-preview",
  input: [
    {
      type: "image",
      uri: uploadedFile.uri,
      mime_type: uploadedFile.mimeType,
    },
    { type: "text", text: PROMPT },
  ],
  generation_config: { thinking_level: "high" },
});

console.log(imageResponse.output_text);

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.Content;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.GenerationConfig;
import com.google.genai.gaos.models.interactions.ImageContent;
import com.google.genai.gaos.models.interactions.ImageContentMimeType;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.TextContent;
import com.google.genai.gaos.models.interactions.ThinkingLevel;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import com.google.genai.types.File;
import com.google.genai.types.UploadFileConfig;
import java.util.List;

Client client = new Client();

String prompt =
    "Point to no more than 10 items in the image. The label returned "
        + "should be an identifying name for the object detected. "
        + "The answer should follow the json format: [{\"point\": , "
        + "\"label\": }, ...]. The points are in [y, x] format "
        + "normalized to 0-1000.";

File uploadedFile =
    client.files.upload(
        new java.io.File("my-image.png"),
        UploadFileConfig.builder().mimeType("image/png").build());

Content imageContent =
    ImageContent.builder()
        .uri(uploadedFile.uri().orElse(""))
        .mimeType(ImageContentMimeType.of(uploadedFile.mimeType().orElse("image/png")))
        .build();
Content textContent = TextContent.builder().text(prompt).build();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("gemini-robotics-er-2-preview"))
        .input(InteractionsInput.ofContent(List.of(imageContent, textContent)))
        .generationConfig(
            GenerationConfig.builder().thinkingLevel(ThinkingLevel.HIGH).build())
        .build();

Interaction imageResponse =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println(imageResponse.outputText().orElse(""));

Go

package main

import (
    "context"
    "fmt"
    "log"

    "google.golang.org/genai"
    "google.golang.org/genai/interactions/models/interactions"
    "google.golang.org/genai/interactions/models/operations"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }

    prompt := `Point to no more than 10 items in the image. The label returned
should be an identifying name for the object detected.
The answer should follow the json format: [{"point": ,
"label": }, ...]. The points are in [y, x] format
normalized to 0-1000.`

    uploadedFile, err := client.Files.UploadFromPath(ctx, "my-image.png", &genai.UploadFileConfig{
        MIMEType: "image/png",
    })
    if err != nil {
        log.Fatal(err)
    }

    res, err := client.Interactions.Create(ctx, operations.CreateInteractionRequest{
        Body: operations.NewCreateInteractionRequestBody(interactions.CreateModelInteraction{
            Model: interactions.Model("gemini-robotics-er-2-preview"),
            Input: interactions.NewInteractionsInput([]interactions.Content{
                interactions.NewContent(interactions.ImageContent{
                    URI:      genai.Ptr(uploadedFile.URI),
                    MimeType: genai.Ptr(interactions.ImageMimeTypeImagePng),
                }),
                interactions.NewContent(interactions.TextContent{
                    Text: prompt,
                }),
            }),
            GenerationConfig: &interactions.GenerationConfig{
                ThinkingLevel: interactions.ThinkingLevelHigh.ToPointer(),
            },
        }),
    })
    if err != nil {
        log.Fatal(err)
    }
    if res.Interaction.OutputText != nil {
        fmt.Println(*res.Interaction.OutputText)
    }
}

QETËSI

# First, ensure you have the image file locally.
# Encode the image to base64
IMAGE_BASE64=$(base64 -w 0 my-image.png)

curl -X POST \
  "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-robotics-er-2-preview",
    "input": {
      "parts": [
        {
          "inlineData": {
            "mimeType": "image/png",
            "data": "'"${IMAGE_BASE64}"'"
          }
        },
        {
          "text": "Point to no more than 10 items in the image. The label returned should be an identifying name for the object detected. The answer should follow the json format: [{\"point\": [y, x], \"label\": }, ...]. The points are in [y, x] format normalized to 0-1000."
        }
      ]
    },
    "generation_config": {
      "thinking_config": {
        "thinking_level": "high"
      }
    }
  }'

Dalja do të jetë një grup JSON që përmban objekte, secili me point (koordinata të normalizuara [y, x]) dhe një label që identifikon objektin.

JSON

[
  {"point": [376, 508], "label": "small banana"},
  {"point": [287, 609], "label": "larger banana"},
  {"point": [223, 303], "label": "pink starfruit"},
  {"point": [435, 172], "label": "paper bag"},
  {"point": [270, 786], "label": "green plastic bowl"},
  {"point": [488, 775], "label": "metal measuring cup"},
  {"point": [673, 580], "label": "dark blue bowl"},
  {"point": [471, 353], "label": "light blue bowl"},
  {"point": [492, 497], "label": "bread"},
  {"point": [525, 429], "label": "lime"}
]

Imazhi i mëposhtëm është një shembull se si mund të shfaqen këto pika:

Një shembull që shfaq pikat e objekteve në një imazh

Si funksionon

Gemini Robotics ER merr hyrje me imazhe, video ose audio me kërkesa në gjuhë natyrale. Ai identifikon objektet, arsyeton për kontekstin e skenës dhe marrëdhëniet hapësinore dhe kthen dalje të strukturuar si koordinata ose kuti kufizuese.

Gemini Robotics ER është gjithashtu agjent: ai i ndan detyrat komplekse në nëndetyra dhe i ekzekuton ato duke thirrur funksionet e robotit ose duke ekzekutuar kodin e gjeneruar. Për shembull, "vendos mollën në tas" bëhet një sekuencë hapash për lokalizimin, kapjen dhe vendosjen.

Shiko Function calling për detaje se si Gemini ekzekuton thirrjet e veglave.

Siguria

Ndërkohë që Gemini Robotics ER është krijuar me sigurinë në mendje, është përgjegjësia jote që të ruash një mjedis të sigurt rreth robotit. Modelet e IA-së gjeneruese mund të bëjnë gabime dhe robotët fizikë mund të shkaktojnë dëme. Për të mësuar më shumë, vizito faqen e sigurisë të Gemini Robotics.

Praktikat më të mira

  1. Përdor gjuhë të thjeshtë dhe natyrale. Përshkruaj se çfarë dëshiron që të bëjë roboti ashtu siç do t'i thuash një personi. Nëse një term nuk funksionon, provo një sinonim të zakonshëm.

  2. Optimizo hyrjen vizuale. Prit ose zmadho objektet e vogla ose të paqarta para se të dërgosh imazhin. Ndriçimi dhe kontrasti i ulët i ngjyrave mund të ndikojnë te zbulimi.

  3. Ndaji detyrat komplekse në hapa. Dërgo çdo hap si një kërkesë të veçantë për ta mbajtur modelin të fokusuar dhe për të përmirësuar saktësinë.

  4. Kërko disa herë dhe mesatarizo rezultatet për detyra me saktësi të lartë. Kjo qasje konsensuale zvogëlon variancën në daljet hapësinore.

Kufizimet

Ki parasysh kufizimet e mëposhtme kur zhvillon me Gemini Robotics ER:

  • Kufizimet e çelësit të API-së: Gemini API nuk pranon kërkesa nga çelësat e pakufizuar të API-së dhe kthen një gabim 403 Forbidden. Siguro çelësin e API-së duke shtuar kufizime në AI Studio. Shiko Çelësat e sigurt të API-së pa kufizime për detaje.
  • Vonesa kundrejt performancës: Kërkesat komplekse, hyrjet me rezolucion të lartë ose nivelet e larta të të menduarit mund të çojnë në kohë më të gjata përpunimi. Për nivelin e të menduarit, përdor mesataren për një balancë të mirë mes vonesës dhe performancës.
  • Halucinacionet: Si të gjitha modelet e mëdha gjuhësore, modelet e Gemini Robotics ER mund të "halucinojnë" ndonjëherë ose të japin informacione të pasakta, sidomos për kërkesa të paqarta ose hyrje jashtë shpërndarjes.
  • Varësia nga cilësia e kërkesës: Cilësia e rezultatit varet nga qartësia e kërkesës hyrëse. Përdor kërkesa specifike dhe të mirëstrukturuara.
  • Kostoja kompjuterike: Ekzekutimi i modelit, sidomos me hyrjet e videove ose me thinking_budget të lartë, harxhon burimet kompjuterike dhe sjell kosto. Shiko faqen Mendimi për më shumë detaje.
  • Llojet e hyrjeve: Shiko temat e mëposhtme për detaje mbi kufizimet për çdo modalitet.

Njoftimi i privatësisë

Ti pranon që modelet e referuara në këtë dokument ("Modelet e robotikës") shfrytëzojnë të dhënat e videos dhe audios për të funksionuar dhe për të lëvizur harduerin tënd në përputhje me udhëzimet e tua. Prandaj, mund t'i përdorësh "Modelet e robotikës" në mënyrë të tillë që të dhënat nga persona të identifikueshëm, si p.sh. të dhënat e zërit, imazheve dhe ngjashmërive ("Të dhënat personale"), të mblidhen nga "Modelet e robotikës". Nëse zgjedh që t'i operosh modelet e robotikës në një mënyrë që mbledh të dhëna personale, ti pranon që nuk do të lejosh asnjë person të identifikueshëm që të ndërveprojë me modelet e robotikës ose të jetë i pranishëm në zonën përreth tyre, përveçse nëse dhe derisa personat e tillë të identifikueshëm të jenë njoftuar në mënyrë të mjaftueshme dhe të kenë dhënë pëlqimin për faktin që të dhënat e tyre personale mund t'i jepen dhe të përdoren nga Google siç përcaktohet në "Kushtet shtesë të shërbimit" të Gemini API që gjenden në https://ai.google.dev/gemini-api/terms ("Kushtet"), duke përfshirë në përputhje me seksionin e titulluar "Si i përdor Google të dhënat e tua". Ti do të sigurosh që një njoftim i tillë lejon mbledhjen dhe përdorimin e të dhënave personale siç përcaktohet në "Kushtet" dhe do të përdorësh përpjekje të arsyeshme tregtare për të minimizuar mbledhjen dhe shpërndarjen e të dhënave personale duke përdorur teknika të tilla si turbullimi i fytyrës dhe funksionimi i modeleve robotike në zona që nuk përmbajnë persona të identifikueshëm në masën e zbatueshme.

Çmimet

Për informacione të detajuara për çmimet dhe rajonet e disponueshme, referoju faqes së çmimeve.

Pikat përfundimtare të modelit

Gemini Robotics ER 2 Preview

Prona Përshkrimi
Kodi i modelit gemini-robotics-er-2-preview
Llojet e të dhënave të mbështetura për

Hyrjet

Tekst, imazhe, video, audio

Rezultati

Teksti

Kufijtë e kodeve qasëse[*]

Kufiri i tokenëve të hyrjes

131 072

Kufiri i tokenëve të rezultatit

65 536

Aftësitë

Gjenerimi i audios

Nuk mbështetet

Ruajtja në memorien specifike

Mbështetur

Ekzekutimi i kodit

Mbështetur

Përdorimi i kompjuterit

Mbështetur

Kërkimi i skedarëve

Mbështetur

Thirrja e funksionit

Mbështetur

Argumentimi me Google Maps

Mbështetur

Gjenerimi i imazheve

Nuk mbështetet

API-ja e transmetimit të drejtpërdrejtë

Nuk mbështetet

Bazat e "Kërko"

Mbështetur

Rezultatet e strukturuara

Mbështetur

Po mendohem

Mbështetur

Konteksti i URL-së

Mbështetur

Opsionet e konsumit

API-ja e grupeve

Mbështetur

Deduksioni Flex

Nuk mbështetet

Përfundimi i përparësisë

Nuk mbështetet

Versionet
Lexo modelet e versioneve për më shumë detaje.
  • Pamja paraprake: gemini-robotics-er-2-preview
Përditësimi i fundit Korrik 2026
Kartë modeli Kartë modeli

Gemini Robotics ER 2 Streaming Preview

Prona Përshkrimi
Kodi i modelit gemini-robotics-er-2-streaming-preview
Llojet e të dhënave të mbështetura për

Hyrjet

Tekst, imazhe, video, audio

Rezultati

Teksti

Kufijtë e kodeve qasëse[*]

Kufiri i tokenëve të hyrjes

131 072

Kufiri i tokenëve të rezultatit

65 536

Aftësitë

Gjenerimi i audios

Nuk mbështetet

Ruajtja në memorien specifike

Nuk mbështetet

Ekzekutimi i kodit

Nuk mbështetet

Përdorimi i kompjuterit

Nuk mbështetet

Kërkimi i skedarëve

Nuk mbështetet

Thirrja e funksionit

Mbështetur

Argumentimi me Google Maps

Nuk mbështetet

Gjenerimi i imazheve

Nuk mbështetet

API-ja e transmetimit të drejtpërdrejtë

Mbështetur

Bazat e "Kërko"

Mbështetur

Rezultatet e strukturuara

Nuk mbështetet

Po mendohem

Mbështetur

Konteksti i URL-së

Nuk mbështetet

Opsionet e konsumit

API-ja e grupeve

Nuk mbështetet

Deduksioni Flex

Nuk mbështetet

Përfundimi i përparësisë

Nuk mbështetet

Versionet
Lexo modelet e versioneve për më shumë detaje.
  • Pamja paraprake: gemini-robotics-er-2-streaming-preview
Përditësimi i fundit Korrik 2026
Kartë modeli Kartë modeli

Gemini Robotics ER 1.6 Preview

Prona Përshkrimi
Kodi i modelit gemini-robotics-er-1.6-preview
Llojet e të dhënave të mbështetura për

Hyrjet

Tekst, imazhe, video, audio

Rezultati

Teksti

Kufijtë e kodeve qasëse[*]

Kufiri i tokenëve të hyrjes

131 072

Kufiri i tokenëve të rezultatit

65 536

Aftësitë

Gjenerimi i audios

Nuk mbështetet

Ruajtja në memorien specifike

Mbështetur

Ekzekutimi i kodit

Mbështetur

Përdorimi i kompjuterit

Mbështetur

Kërkimi i skedarëve

Mbështetur

Thirrja e funksionit

Mbështetur

Argumentimi me Google Maps

Mbështetur

Gjenerimi i imazheve

Nuk mbështetet

API-ja e transmetimit të drejtpërdrejtë

Nuk mbështetet

Bazat e "Kërko"

Mbështetur

Rezultatet e strukturuara

Mbështetur

Po mendohem

Mbështetur

Konteksti i URL-së

Mbështetur

Opsionet e konsumit

API-ja e grupeve

Mbështetur

Deduksioni Flex

Nuk mbështetet

Përfundimi i përparësisë

Nuk mbështetet

Versionet
Lexo modelet e versioneve për më shumë detaje.
  • Pamja paraprake: gemini-robotics-er-1.6-preview
Përditësimi i fundit Dhjetor 2025
Kufiri kohor i shkëputjes së njohurive Janar 2025

Çfarë ka më pas