Gemini Robotics ER (এমবডিড রিজনিং) মডেল হল ভিশন-ল্যাঙ্গুয়েজ মডেল (VLM) যা রোবটকে বাস্তব জগতকে বুঝতে এবং তার সাথে ইন্টার্যাক্ট করতে সাহায্য করে। এগুলি ভিজ্যুয়াল ডেটা ব্যাখ্যা করে, স্পেশিয়াল ও টেম্পোরাল রিজনিং করে, মাল্টি-স্টেপ টাস্কের পরিকল্পনা করে এবং রোবট ও টুল পরিচালনা করে।
মডেল
Gemini Robotics ER 2 মডেল হল Gemini Robotics-এর লেটেস্ট মডেল। এটি আমাদের আপডেট করা রিজনিং মডেল যা রোবটকে তার পরিবেশ সঠিকভাবে বুঝতে সাহায্য করে। এটি রোবটের এজেন্টিক অর্কেস্ট্রেশন (যেমন, VLA ব্যবহার করা), প্রগ্রেস বোঝা ও সাফল্য শনাক্তকরণ সহ রোবট ভিডিও বোঝা, ইনস্ট্রুমেন্ট রিডিং, পয়েন্ট করা ও স্পেশিয়াল রিজনিংয়ের মতো এমবডিড রিজনিংয়ের দক্ষতায় পারদর্শী।
Gemini Robotics ER 2 মডেল দুটি মডেল এন্ডপয়েন্ট নিয়ে আসে:
gemini-robotics-er-2-preview: স্ট্যান্ডার্ড ER 2 মডেল। Gemini 3.5 Flash-এর উপর ভিত্তি করে তৈরি, যাতে উন্নত স্পেশিয়াল রিজনিং, ভিডিও মোমেন্ট ফাইন্ডিং, ভিডিও প্রোগ্রেস ক্লাসিফিকেশন, মাল্টি-রোবট অর্কেস্ট্রেশন এবং মাল্টি-স্টেপ টুল ব্যবহারের সুবিধা রয়েছে।gemini-robotics-er-2-streaming-preview: Live API ব্যবহার করে রিয়েল-টাইম স্ট্রিমিংয়ের জন্য অপ্টিমাইজ করা হয়েছে। এই মডেলটি কম-লেটেন্সি রোবট এজেন্টের জন্য ব্যবহার করুন যা একটানা অডিও এবং ভিডিও ইনপুট প্রসেস করে।
Gemini Robotics ER 1.6
৩১ আগস্ট, ২০২৬ থেকে আর কাজ করবে না।
আপনি এখনও Gemini Robotics ER 1.6 ব্যবহার করলে, আপনার API কলে model="gemini-robotics-er-1.6-preview"-এর পরিবর্তে
model="gemini-robotics-er-2-preview" বা
model="gemini-robotics-er-2-streaming-preview" ব্যবহার করে Gemini Robotics ER 2-এ আপগ্রেড করুন।
Google AI Studio-তে Gemini Robotics ER 2 ব্যবহার করে দেখুন
রোবোটিক্সের ক্ষমতা
Gemini Robotics ER বিভিন্ন ধরনের এমবডিড রিজনিংয়ের ক্ষমতাকে সাপোর্ট করে। আরও জানতে একটি ক্ষমতা বেছে নিন:
| ক্ষমতা | বিবরণ | গাইড |
|---|---|---|
| স্পেশিয়াল রিজনিং | অবজেক্টের দিকে পয়েন্ট করুন, ভিডিওতে সেগুলি ট্র্যাক করুন, বাউন্ডিং বক্সের সাহায্যে শনাক্ত করুন, ট্র্যাজেক্টরি প্ল্যান করুন। | স্পেশিয়াল রিজনিং |
| এজেন্টিক ভিশন | ছবি ম্যানিপুলেশন টুলের সুবিধা নিয়ে অন্যান্য ক্ষমতা উন্নত করতে কোড এক্সিকিউশন ব্যবহার করুন। | এজেন্টিক ভিশন |
| টাস্ক অর্কেস্ট্রেশন | লং-হরাইজন টাস্ক সম্পূর্ণ করতে কাস্টম রোবট API-এর সাথে স্পেশিয়াল রিজনিং একত্রিত করুন। | টাস্ক অর্কেস্ট্রেশন |
| স্ট্রিমিং (শুধু Gemini Robotics ER 2 স্ট্রিমিং এন্ডপয়েন্ট) | কম-লেটেন্সি ফাংশন কলিং সহ রিয়েল-টাইম রোবট এজেন্টের জন্য দ্বিমুখী স্ট্রিমিং। | রোবোটিক্সের জন্য স্ট্রিমিং |
| ভিডিওর প্রোগ্রেস (শুধু Gemini Robotics ER 2) | অবিচ্ছিন্ন ভিডিও ফিড থেকে মুহূর্ত খোঁজা এবং প্রগ্রেস শ্রেণিবিভাগ। | ভিডিও বোঝা |
শুরু করার আগে
Gemini Developer API-এর মাধ্যমে Gemini Robotics ER মডেল উপলভ্য। শুরু করতে, Google AI Studio বা Google Cloud কনসোল থেকে Gemini API কী তৈরি করুন এবং আপনার এনভায়রনমেন্ট সেট-আপ করুন।
কী-এর ধরন, নিরাপত্তা এবং Python, JavaScript ও অন্যান্য ভাষায় কীভাবে আপনার কী কনফিগার করবেন সেই সম্পর্কে বিস্তারিত জানতে, Gemini API কী ব্যবহার করা দেখুন।
শুরু করা
নিম্নলিখিত উদাহরণটি একটি ছবিতে অবজেক্ট খুঁজে বের করে এবং তাদের নরমালাইজড 2D স্থানাঙ্ক এবং লেবেল রিটার্ন করে। আপনি এই আউটপুট সরাসরি রোবোটিক্স API বা VLA মডেলে পাস করতে পারেন যাতে রোবট অ্যাকশন জেনারেট করা যায়।
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": <point>,
"label": <label1>}, ...]. 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)
জাভাস্ক্রিপ্ট
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": <point>,
"label": <label1>}, ...]. 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\": <point>, "
+ "\"label\": <label1>}, ...]. 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(""));
খুলুন
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": <point>,
"label": <label1>}, ...]. 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)
}
}
বিশ্রাম
# 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\": <label1>}, ...]. The points are in [y, x] format normalized to 0-1000."
}
]
},
"generation_config": {
"thinking_config": {
"thinking_level": "high"
}
}
}'
আউটপুটটি হবে একটি JSON অ্যারে যাতে অবজেক্ট থাকবে, যার প্রতিটিতে একটি point
(স্বাভাবিক [y, x] কোঅর্ডিনেট) এবং অবজেক্ট শনাক্তকারী একটি label থাকবে।
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"}
]
এই পয়েন্টগুলি কীভাবে দেখানো যেতে পারে তার উদাহরণ নিচের ছবিতে দেওয়া হল:
এটি কীভাবে কাজ করে
Gemini Robotics ER ন্যাচারাল ল্যাঙ্গুয়েজ প্রম্পটের মাধ্যমে ছবি, ভিডিও বা অডিও ইনপুট নেয়। এটি অবজেক্ট শনাক্ত করে, দৃশ্যের প্রসঙ্গ এবং স্থানিক সম্পর্ক সম্পর্কে কারণ দেখায় এবং স্থানাঙ্ক বা বাউন্ডিং বক্সের মতো স্ট্রাকচার্ড আউটপুট প্রদান করে।
Gemini Robotics ER-ও এজেন্টিক: এটি জটিল কাজকে সাব-টাস্কে ভাগ করে এবং আপনার রোবট ফাংশন কল করে বা জেনারেট করা কোড রান করে সেগুলি এক্সিকিউট করে। যেমন, "আপেলটি বাটিতে রাখো" কমান্ডটি আপেলটি খুঁজে বের করা, সেটি ধরা এবং বাটিতে রাখার মতো একাধিক ধাপে বিভক্ত হয়ে যায়।
Gemini কীভাবে টুল কল এক্সিকিউট করে সেই সম্পর্কে বিস্তারিত জানতে ফাংশন কলিং দেখুন।
নিরাপত্তা
Gemini Robotics ER-কে নিরাপত্তার কথা মাথায় রেখে তৈরি করা হলেও, রোবটের চারপাশে নিরাপদ পরিবেশ বজায় রাখার দায়িত্ব আপনার। জেনারেটিভ AI মডেল ভুল করতে পারে এবং ফিজিক্যাল রোবট ক্ষতি করতে পারে। আরও জানতে, Gemini Robotics-এর নিরাপত্তা পৃষ্ঠা দেখুন।
পেশাদার পদ্ধতি
সহজ, স্বাভাবিক ভাষা ব্যবহার করুন। আপনি কোনও ব্যক্তিকে যেভাবে বলতেন, ঠিক সেভাবেই রোবটকে কী করতে হবে তা বলুন। কোনও শব্দ কাজ না করলে, সাধারণ সমার্থক শব্দ ব্যবহার করে দেখুন।
ভিজ্যুয়াল ইনপুট অপ্টিমাইজ করুন। ছবি পাঠানোর আগে ছোট বা অস্পষ্ট অবজেক্ট ক্রপ বা জুম করুন। আলো এবং কম রঙের কনট্রাস্ট শনাক্তকরণকে প্রভাবিত করতে পারে।
জটিল টাস্ককে ছোট ছোট ধাপে ভাগ করুন। মডেলকে ফোকাসড রাখতে এবং নির্ভুলতা উন্নত করতে প্রতিটি ধাপ আলাদা প্রম্পট হিসেবে পাঠান।
হাই-প্রিসিশন টাস্কের জন্য একাধিকবার কোয়েরি করুন এবং ফলাফলের গড় নিন। এই ঐকমত্য পদ্ধতি স্পেশিয়াল আউটপুটে পার্থক্য কমায়।
সীমাবদ্ধতা
Gemini Robotics ER-এর সাহায্যে ডেভেলপ করার সময় নিম্নলিখিত সীমাবদ্ধতাগুলি বিবেচনা করুন:
- API key সংক্রান্ত বিধিনিষেধ: Gemini API, বিধিনিষেধহীন API key থেকে আসা অনুরোধ গ্রহণ করে না এবং
403 Forbiddenসংক্রান্ত সমস্যা দেখায়। AI Studio-তে বিধিনিষেধ যোগ করে আপনার API কী সুরক্ষিত করুন। আরও জানতে বিধিনিষেধহীন API কী সুরক্ষিত করুন দেখুন। - লেটেন্সি বনাম পারফর্ম্যান্স: জটিল কোয়েরি, হাই-রেজোলিউশন ইনপুট বা হাই থিংকিং লেভেলের কারণে প্রসেসিংয়ের সময় বেড়ে যেতে পারে। থিঙ্কিং লেভেলের জন্য লেটেন্সি ও পারফর্ম্যান্সের মধ্যে ভালো ব্যালেন্সের জন্য মিডিয়াম ব্যবহার করুন।
- হ্যালুসিনেশন: সব লার্জ ল্যাঙ্গুয়েজ মডেলের মতো, Gemini Robotics ER মডেল মাঝে মাঝে "হ্যালুসিনেট" করতে পারে বা ভুল তথ্য দিতে পারে, বিশেষ করে অস্পষ্ট প্রম্পট বা আউট-অফ-ডিস্ট্রিবিউশন ইনপুটের ক্ষেত্রে।
- প্রম্পটের কোয়ালিটির উপর নির্ভরতা: আউটপুটের কোয়ালিটি ইনপুট প্রম্পটের স্পষ্টতার উপর নির্ভর করে। নির্দিষ্ট, সুগঠিত প্রম্পট ব্যবহার করুন।
- কম্পিউটেশনাল খরচ: মডেল চালানো, বিশেষ করে ভিডিও ইনপুট বা
উচ্চ
thinking_budgetসহ, কম্পিউটেশনাল রিসোর্স ব্যবহার করে এবং খরচ বহন করে। আরও জানতে Thinking পৃষ্ঠা দেখুন। - ইনপুটের ধরন: প্রতিটি মোডের সীমাবদ্ধতা সম্পর্কে বিস্তারিত জানতে নিম্নলিখিত বিষয়গুলি দেখুন।
গোপনীয়তা বিজ্ঞপ্তি
আপনি স্বীকার করছেন যে এই ডকুমেন্টে উল্লেখ করা মডেলগুলি ("Robotics Models") আপনার নির্দেশাবলী অনুযায়ী আপনার হার্ডওয়্যার অপারেট ও মুভ করার জন্য ভিডিও ও অডিও ডেটা ব্যবহার করে। তাই আপনি Robotics Models এমনভাবে অপারেট করতে পারেন যাতে শনাক্তকরণযোগ্য ব্যক্তির ডেটা, যেমন ভয়েস, ছবি ও প্রতিরূপ ডেটা ("ব্যক্তিগত ডেটা"), Robotics Models-এর মাধ্যমে সংগ্রহ করা হবে। আপনি যদি এমনভাবে রোবোটিক্স মডেল অপারেট করার সিদ্ধান্ত নেন যা ব্যক্তিগত ডেটা সংগ্রহ করে, তাহলে আপনি সম্মত হন যে আপনি কোনও শনাক্তকরণযোগ্য ব্যক্তিকে রোবোটিক্স মডেলের সাথে ইন্টার্যাক্ট করতে বা তার আশেপাশের এলাকায় উপস্থিত থাকতে দেবেন না, যতক্ষণ না পর্যন্ত এই ধরনের শনাক্তকরণযোগ্য ব্যক্তিদের পর্যাপ্তভাবে জানানো হয় এবং তারা সম্মতি দেন যে তাদের ব্যক্তিগত ডেটা Google-কে প্রদান করা এবং ব্যবহার করা হতে পারে, যেমনটি Gemini API-এর অতিরিক্ত পরিষেবার শর্তাবলীতে উল্লেখ করা হয়েছে, যা https://ai.google.dev/gemini-api/terms লিঙ্কে পাওয়া যাবে ("শর্তাবলী"), যার মধ্যে "Google কীভাবে আপনার ডেটা ব্যবহার করে" শীর্ষক বিভাগও অন্তর্ভুক্ত রয়েছে। আপনি নিশ্চিত করবেন যে এই ধরনের বিজ্ঞপ্তি শর্তাবলীতে উল্লেখ করা ব্যক্তিগত ডেটা সংগ্রহ ও ব্যবহার করার অনুমতি দেয় এবং আপনি বাণিজ্যিকভাবে যুক্তিযুক্ত প্রচেষ্টা ব্যবহার করে ব্যক্তিগত ডেটা সংগ্রহ ও বিতরণ কম করবেন। এর জন্য আপনি ফেস ব্লার করার মতো প্রযুক্তি ব্যবহার করবেন এবং যতটা সম্ভব শনাক্তকরণযোগ্য ব্যক্তি নেই এমন জায়গায় রোবোটিক্স মডেল পরিচালনা করবেন।
দাম
দাম ও উপলভ্য অঞ্চল সম্পর্কে বিস্তারিত তথ্যের জন্য, দাম পৃষ্ঠা দেখুন।
মডেল এন্ডপয়েন্ট
Gemini Robotics ER 2 প্রিভিউ
| প্রপার্টি | বিবরণ |
|---|---|
| মডেল কোড | gemini-robotics-er-2-preview |
| কাজ করে এমন ডেটার ধরন |
ইনপুট টেক্সট, ছবি, ভিডিও, অডিও আউটপুট টেক্সট |
| টোকেনের সীমা[*] |
ইনপুট টোকেনের সীমা ১৩১,০৭২ আউটপুট টোকেনের সীমা ৬৫,৫৩৬ |
| কেপেবিলিটি | কাজ করে না কাজ করে কাজ করে কাজ করে কাজ করে কাজ করে কাজ করে কাজ করে না কাজ করে না কাজ করে কাজ করে কাজ করে কাজ করে |
| ব্যবহারের বিকল্প |
কাজ করে কাজ করে না কাজ করে না |
| ভার্সন |
|
| লেটেস্ট আপডেট | জুলাই ২০২৬ |
| মডেল কার্ড | মডেল কার্ড |
Gemini Robotics ER 2 Streaming Preview
| প্রপার্টি | বিবরণ |
|---|---|
| মডেল কোড | gemini-robotics-er-2-streaming-preview |
| কাজ করে এমন ডেটার ধরন |
ইনপুট টেক্সট, ছবি, ভিডিও, অডিও আউটপুট টেক্সট |
| টোকেনের সীমা[*] |
ইনপুট টোকেনের সীমা ১৩১,০৭২ আউটপুট টোকেনের সীমা ৬৫,৫৩৬ |
| কেপেবিলিটি | কাজ করে না কাজ করে না কাজ করে না কাজ করে না কাজ করে না কাজ করে কাজ করে না কাজ করে না কাজ করে কাজ করে কাজ করে না কাজ করে কাজ করে না |
| ব্যবহারের বিকল্প |
কাজ করে না কাজ করে না কাজ করে না |
| ভার্সন |
|
| লেটেস্ট আপডেট | জুলাই ২০২৬ |
| মডেল কার্ড | মডেল কার্ড |
Gemini Robotics ER 1.6 প্রিভিউ
| প্রপার্টি | বিবরণ |
|---|---|
| মডেল কোড | gemini-robotics-er-1.6-preview |
| কাজ করে এমন ডেটার ধরন |
ইনপুট টেক্সট, ছবি, ভিডিও, অডিও আউটপুট টেক্সট |
| টোকেনের সীমা[*] |
ইনপুট টোকেনের সীমা ১৩১,০৭২ আউটপুট টোকেনের সীমা ৬৫,৫৩৬ |
| কেপেবিলিটি | কাজ করে না কাজ করে কাজ করে কাজ করে কাজ করে কাজ করে কাজ করে কাজ করে না কাজ করে না কাজ করে কাজ করে কাজ করে কাজ করে |
| ব্যবহারের বিকল্প |
কাজ করে কাজ করে না কাজ করে না |
| ভার্সন |
|
| লেটেস্ট আপডেট | ডিসেম্বর ২০২৫ |
| নলেজ কাটঅফ | জানুয়ারি ২০২৫ |
এর পরে কী করতে হবে
- স্পেশিয়াল রিজনিং — পয়েন্ট করা, ট্র্যাক করা, বাউন্ডিং বক্স, ট্র্যাজেক্টরি।
- এজেন্টসুলভ দক্ষতা — কোড এক্সিকিউশন, ইনস্ট্রুমেন্ট রিডিং, ইমেজ অ্যানোটেশন।
- টাস্ক অর্কেস্ট্রেশন — কাস্টম রোবট API সহ লং-হরাইজন টাস্ক।
- স্ট্রিমিং সহ রোবোটিক্স — রিয়েল-টাইম দ্বিমুখী স্ট্রিমিং (শুধু Gemini Robotics ER 2-এর জন্য)।
- ভিডিও বোঝা — মুহূর্ত খুঁজে পাওয়া এবং প্রোগ্রেস ক্লাসিফিকেশন (শুধু Gemini Robotics ER 2-এর জন্য)।
- Gemini Robotics-এর নিরাপত্তা — মডেল ফ্যামিলির পিছনে থাকা নিরাপত্তা সংক্রান্ত রিসার্চ।