ডেভেলপারদের জন্য জেমিনি

১. ভূমিকা 👋

35807388b800fbe0.png

এই কোডল্যাবে, একজন ডেভেলপার হিসেবে জেমিনি ইকোসিস্টেম সম্পর্কে আপনার যা কিছু জানা প্রয়োজন, তার সবকিছুই আপনি শিখবেন। আরও নির্দিষ্টভাবে বললে, আপনি বিভিন্ন জেমিনি মডেল, জেমিনি দ্বারা চালিত বিভিন্ন টুল এবং জেমিনির সাথে ইন্টিগ্রেট করার জন্য গুগল জেন এআই এসডিকে (Google Gen AI SDK) সম্পর্কে জানতে পারবেন। এছাড়াও আপনি জেমিনির বিভিন্ন ফিচার, যেমন এর লং কনটেক্সট, থিঙ্কিং মোড, স্পেশিয়াল আন্ডারস্ট্যান্ডিং, লাইভ এপিআই, নেটিভ ইমেজ ও অডিও আউটপুট এবং আরও অনেক কিছু সম্পর্কে জানবেন।

এই কোডল্যাবটি শেষে, জেমিনি ইকোসিস্টেম সম্পর্কে আপনার একটি সুস্পষ্ট ধারণা তৈরি হবে!

💡আপনি যা শিখবেন

  • বিভিন্ন জেমিনি মডেল।
  • জেমিনি মডেল দ্বারা চালিত টুল।
  • Google Gen AI SDK ব্যবহার করে কীভাবে Gemini-এর সাথে ইন্টিগ্রেট করবেন।
  • মিথুন রাশির দীর্ঘ প্রেক্ষাপট।
  • মিথুন রাশির চিন্তাশীল অবস্থা।
  • বিভিন্ন অন্তর্নির্মিত সরঞ্জাম যেমন গুগল সার্চ, গুগল ম্যাপস।
  • ইন্টারঅ্যাকশনস এপিআই ব্যবহার করে রিসার্চ এজেন্টদের সাথে কীভাবে যোগাযোগ করবেন।
  • ছবি এবং টেক্সট-টু-স্পিচ তৈরি।
  • মিথুন রাশির স্থানিক উপলব্ধি।
  • রিয়েল-টাইম ভয়েস এবং ভিডিও ইন্টারঅ্যাকশনের জন্য লাইভ এপিআই।

⚠️ আপনার যা যা লাগবে

  • গুগল এআই স্টুডিও স্যাম্পলগুলোর জন্য একটি এপিআই কী।
  • একটি গুগল ক্লাউড প্রজেক্ট, যেখানে ভার্টেক্স এআই স্যাম্পলগুলোর জন্য বিলিং চালু করা হয়েছে।
  • আপনার স্থানীয় ডেভেলপমেন্ট এনভায়রনমেন্ট অথবা গুগল ক্লাউডের ক্লাউড শেল এডিটর।

২. মিথুন পরিবার 🫂

জেমিনি হলো গুগলের একটি এআই মডেল যা যেকোনো ধারণাকে বাস্তবে রূপ দেয়। এটি মাল্টিমোডাল আন্ডারস্ট্যান্ডিং, এজেন্টিক এবং ভাইব কোডিং-এর জন্য একটি চমৎকার মডেল — যার সবকিছুই অত্যাধুনিক যুক্তির ভিত্তির ওপর নির্মিত। জেমিনি মডেল সম্পর্কে একটি সংক্ষিপ্ত ধারণা পেতে আপনি এই ভিডিওটি দেখতে পারেন:

জেমিনি শুধু একটি মডেল নয়। এটি গুগলের বিভিন্ন পণ্যে ব্যবহৃত একটি ছাতা ব্র্যান্ডও।

যেগুলো জেমিনি মডেল ব্যবহার করে। গ্রাহক-কেন্দ্রিক জেমিনি অ্যাপ এবং নোটবুকএলএম থেকে শুরু করে ডেভেলপার-কেন্দ্রিক এআই স্টুডিও এবং গুগল ক্লাউডের এন্টারপ্রাইজ-কেন্দ্রিক ভার্টেক্স এআই পর্যন্ত জেমিনি পণ্যের একটি বিস্তৃত পরিসর রয়েছে। এছাড়াও জেমিনি সিএলআই এবং জেমিনি দ্বারা চালিত গুগল অ্যান্টিগ্র্যাভিটির মতো ডেভেলপার টুলও রয়েছে।

3ceb2752ccfbc149.jpeg

৩. জেমিনি পাওয়ার্ড টুলস 🧰

চলুন জেমিনি দ্বারা চালিত টুলগুলো সংক্ষেপে দেখে নেওয়া যাক।

জেমিনি অ্যাপ 💬

জেমিনি অ্যাপ ( gemini.google.com ) একটি চ্যাট-ভিত্তিক কনজিউমার অ্যাপ্লিকেশন। জেমিনির সাথে যোগাযোগের এটিই সবচেয়ে সহজ উপায়। এতে গভীর গবেষণা, ছবি, ভিডিও, সঙ্গীত তৈরি এবং আরও অনেক কিছুর জন্য টুলস রয়েছে। এছাড়াও এতে সর্বশেষ জেমিনি মডেলের বিভিন্ন সংস্করণ (ফাস্ট, থিঙ্কিং, প্রো) রয়েছে। জেমিনি অ্যাপ দৈনন্দিন ব্যবহারের জন্য একদম উপযুক্ত।

d3800f85bafe9a4a.png

নোটবুকএলএম 📓

নোটবুকএলএম ( notebookLM.google.com ) একটি এআই-চালিত গবেষণা সহযোগী। পিডিএফ, ওয়েবসাইট, ইউটিউব ভিডিও, অডিও ফাইল, গুগল ডক্স, গুগল স্লাইডস এবং আরও অনেক কিছু আপলোড করুন, এবং নোটবুকএলএম সেগুলোর সারসংক্ষেপ করবে ও বিভিন্ন বিষয়ের মধ্যে আকর্ষণীয় সংযোগ স্থাপন করবে, যা জেমিনির মাল্টিমোডাল আন্ডারস্ট্যান্ডিং ক্ষমতার সর্বশেষ সংস্করণ দ্বারা চালিত। এটি আপনার আপলোড করা উৎসগুলো থেকে আকর্ষণীয় ও চিত্তাকর্ষক অডিও ওভারভিউ, ভিডিও ওভারভিউ, ইনফোগ্রাফিক এবং আরও অনেক কিছু তৈরি করে।

4c3274795844251.png

গুগল এআই স্টুডিও 🎨

গুগল এআই স্টুডিও ( ai.dev ) হলো জেমিনি দিয়ে কাজ শুরু করার সবচেয়ে দ্রুততম উপায়। গুগল এআই স্টুডিও-এর প্লেগ্রাউন্ড প্যানেল আপনাকে টেক্সট, ইমেজ, ভিডিও তৈরি করার জন্য বিভিন্ন মডেল নিয়ে পরীক্ষা-নিরীক্ষা করার সুযোগ দেয় এবং জেমিনি লাইভ এপিআই (Gemini Live API) ব্যবহার করে রিয়েল-টাইম ভয়েস ও ভিডিও পরীক্ষা করারও সুযোগ দেয়। গুগল এআই স্টুডিও-এর বিল্ড প্যানেল আপনাকে ওয়েব অ্যাপ্লিকেশন ভাইব-কোড করতে, সেগুলোকে গুগল ক্লাউডের ক্লাউড রান-এ ডেপ্লয় করতে এবং গিটহাবে কোড পুশ করতে সাহায্য করে।

48fadc9d3d5f9500.png

ভার্টেক্স এআই স্টুডিও ☁️

ভার্টেক্স এআই হলো গুগল ক্লাউডে জেনারেটিভ এআই তৈরি ও ব্যবহারের জন্য একটি সম্পূর্ণভাবে পরিচালিত, সমন্বিত এআই ডেভেলপমেন্ট প্ল্যাটফর্ম। ভার্টেক্স এআই স্টুডিও ( console.cloud.google.com/vertex-ai/studio ) আপনাকে এন্টারপ্রাইজ-রেডি জেনারেটিভ এআই অ্যাপ্লিকেশন পরীক্ষা, পরিমার্জন এবং স্থাপন করতে সাহায্য করে।

15b55a2b635d63e1.png

মিথুন রাশি সিএলআই ⚙️

জেমিনি সিএলআই ( geminicli.com ) একটি ওপেন-সোর্স এআই এজেন্ট যা জেমিনির ক্ষমতা সরাসরি আপনার টার্মিনালে নিয়ে আসে। এটি ডেভেলপার, ইঞ্জিনিয়ার, এসআরই এবং অন্যান্যদের জন্য একটি টার্মিনাল-কেন্দ্রিক, সম্প্রসারণযোগ্য এবং শক্তিশালী টুল হিসেবে ডিজাইন করা হয়েছে। জেমিনি সিএলআই আপনার লোকাল এনভায়রনমেন্টের সাথে ইন্টিগ্রেট করে। এটি আপনার প্রোজেক্টের কনটেক্সট বজায় রেখেই ফাইল পড়তে ও সম্পাদনা করতে, শেল কমান্ড চালাতে এবং ওয়েব সার্চ করতে পারে।

b2a7f0bf377ac7b0.png

গুগল অ্যান্টিগ্র্যাভিটি 🚀

গুগল অ্যান্টিগ্র্যাভিটি ( antigravity.google ) হলো একটি এজেন্টিক ডেভেলপমেন্ট প্ল্যাটফর্ম, যা আইডিই-কে এজেন্ট-ফার্স্ট যুগে রূপান্তরিত করছে। অ্যান্টিগ্র্যাভিটি ডেভেলপারদেরকে একটি উচ্চতর, টাস্ক-ভিত্তিক স্তরে কাজ করতে সক্ষম করে, যেখানে তারা বিভিন্ন ওয়ার্কস্পেস জুড়ে এজেন্টদের পরিচালনা করতে পারেন এবং একই সাথে এর মূলে একটি পরিচিত এআই আইডিই অভিজ্ঞতা বজায় রাখেন।

অ্যান্টিগ্র্যাভিটি এজেন্টদের তাদের নিজস্ব পৃষ্ঠে নিয়ে আসে এবং এডিটর, টার্মিনাল ও ব্রাউজার জুড়ে স্বয়ংক্রিয়ভাবে কাজ করার জন্য প্রয়োজনীয় সরঞ্জাম সরবরাহ করে, যা টাস্ক এবং আর্টিফ্যাক্টের মাধ্যমে যাচাইকরণ ও উচ্চ-স্তরের যোগাযোগের উপর জোর দেয়। এই সক্ষমতা এজেন্টদের আরও জটিল, এন্ড-টু-এন্ড সফটওয়্যার টাস্ক পরিকল্পনা ও সম্পাদন করতে সাহায্য করে, যা ফিচার তৈরি, UI পুনরাবৃত্তি, বাগ সংশোধন থেকে শুরু করে গবেষণা এবং রিপোর্ট তৈরি পর্যন্ত ডেভেলপমেন্টের সমস্ত দিককে উন্নত করে।

ee964351b100df93.png

এই টুলগুলো নির্দ্বিধায় ডাউনলোড করে ব্যবহার করে দেখতে পারেন। কখন কোন টুল ব্যবহার করবেন, সে বিষয়ে এখানে কিছু সাধারণ নির্দেশনা দেওয়া হলো:

  • আপনি যদি সবে শুরু করে থাকেন, তাহলে সম্ভবত প্রশ্ন জিজ্ঞাসা করতে বা কিছু সাধারণ কোড তৈরি করতে জেমিনি অ্যাপ ব্যবহার করবেন।
  • আপনি যদি কোনো ওয়েব অ্যাপ্লিকেশন ভাইব-কোডিং করেন, তাহলে সম্ভবত গুগল এআই স্টুডিও-ই হবে আপনার পছন্দের টুল।
  • আপনি যদি আপনার স্থানীয় ডেভেলপমেন্ট এনভায়রনমেন্টের প্রেক্ষাপটে একটি জটিল অ্যাপ্লিকেশন তৈরি করতে চান, তাহলে আপনি Gemini CLI বা Google Antigravity বেছে নেবেন।
  • আপনি যদি গুগল ক্লাউড স্থাপন করতে চান বা ইতিমধ্যেই ব্যবহার করছেন এবং এন্টারপ্রাইজ-স্তরের সহায়তা ও বৈশিষ্ট্য চান, তাহলে ভার্টেক্স এআই এবং এর স্টুডিও আপনার জন্য সেরা পছন্দ হবে।

অবশ্যই, আপনি এই টুলগুলো মিলিয়ে ব্যবহার করতে পারেন। যেমন, গিটহাবে পুশ করার জন্য এআই স্টুডিওতে ভাইব কোডিং দিয়ে শুরু করে, এরপর কোডিং চালিয়ে যেতে এবং গুগল ক্লাউডে ডেপ্লয় করতে অ্যান্টিগ্র্যাভিটি ব্যবহার করতে পারেন।

৪. মিথুন রাশির মডেল 🧠

প্রতি কয়েক মাস অন্তর নতুন সংস্করণ আসার ফলে জেমিনি মডেলগুলো ক্রমাগত উন্নত হচ্ছে। আজ (ফেব্রুয়ারি ২০২৬) অনুযায়ী, গুগল ক্লাউডে ভার্টেক্স এআই-তে এই মডেলগুলোই প্রধান আকর্ষণ হিসেবে রয়েছে:

d2e4a116eaccf2fc.png

এছাড়াও আরও অনেক সাধারণভাবে উপলব্ধ জেমিনি মডেল , প্রিভিউ জেমিনি মডেল , ওপেন জেমা মডেল , এমবেডিং মডেল , ইমেজজেন মডেল , ভিও মডেল এবং আরও অনেক কিছু রয়েছে।

বিভিন্ন ব্যবহারের জন্য Vertex AI-তে উপলব্ধ প্রধান মডেলগুলো সম্পর্কে জানতে Google Models-এর ডকুমেন্টেশন পৃষ্ঠাটি দেখুন।

৫. গুগল জেন এআই এসডিকে 📦

আপনার অ্যাপ্লিকেশনের সাথে জেমিনি সংহত করতে, আপনি গুগল জেন এআই এসডিকে ব্যবহার করতে পারেন।

যেমনটি আমরা আগে আলোচনা করেছি, আপনি Google AI Studio বা Vertex AI Studio-এর মাধ্যমে Gemini মডেলগুলো অ্যাক্সেস করতে পারেন। Google Gen AI SDK, Google AI API এবং Google Cloud API উভয়ের মাধ্যমেই Gemini মডেলগুলোর জন্য একটি সমন্বিত ইন্টারফেস প্রদান করে। কিছু ব্যতিক্রম ছাড়া, একটি প্ল্যাটফর্মে চালিত কোড উভয় প্ল্যাটফর্মেই চলবে।

485e9a003d26f8d.png

গুগল জেন এআই এসডিকে বর্তমানে পাইথন , গো , নোড , জাভা এবং সি# সমর্থন করে।

উদাহরণস্বরূপ, পাইথনে গুগল এআই-তে জেমিনির সাথে আপনি এইভাবে কথা বলবেন:

client = genai.Client(
  api_key=your-gemini-api-key)

response = client.models.generate_content(
  model="gemini-3-flash-preview",
  contents="Why is the sky blue?")

Vertex AI-তে Gemini-র বিরুদ্ধে একই কাজ করতে, আপনাকে শুধু ক্লায়েন্ট ইনিশিয়ালাইজেশন পরিবর্তন করতে হবে এবং বাকিটা একই:

client = genai.Client(
  vertexai=True,
  project=your-google-cloud-project,
  location="us-central1")

response = client.models.generate_content(
  model="gemini-3-flash-preview",
  contents="Why is the sky blue?")

এই স্যাম্পলগুলো নিজে চালানোর জন্য, আপনি github.com/meteatamel/genai-samples/tree/main/vertexai/gemini2/hello-world -এ main.py চালাতে পারেন।

৬. ইন্টারঅ্যাকশন এপিআই 🔄

ইন্টারঅ্যাকশনস এপিআই (বিটা) হলো জেমিনি মডেল এবং এজেন্টদের সাথে যোগাযোগের জন্য একটি নতুন সমন্বিত ইন্টারফেস। generateContent এপিআই-এর একটি উন্নত বিকল্প হিসেবে, এটি স্টেট ম্যানেজমেন্ট, টুল অর্কেস্ট্রেশন এবং দীর্ঘমেয়াদী কাজগুলোকে সহজ করে তোলে।

নতুন এপিআই-এর সাথে প্রাথমিক মিথস্ক্রিয়া করার পদ্ধতিটি হলো:

interaction =  client.interactions.create(
    model="gemini-3-flash-preview",
    input="Tell me a short joke."
)
print(interaction.outputs[-1].text)

পূর্ববর্তী ইন্টারঅ্যাকশন থেকে ইন্টারঅ্যাকশন আইডি পাস করে আপনি একটি স্টেটফুল কথোপকথন করতে পারেন:

interaction1 = client.interactions.create(
    model="gemini-3-flash-preview",
    input="Hi, my name is Phil."
)
print(f"Model: {interaction1.outputs[-1].text}")

interaction2 = client.interactions.create(
    model="gemini-3-flash-preview",
    input="What is my name?",
    previous_interaction_id=interaction1.id
)
print(f"Model: {interaction2.outputs[-1].text}")

ইন্টারঅ্যাকশনস এপিআই (Interactions API) এজেন্ট তৈরি এবং তাদের সাথে যোগাযোগের জন্য ডিজাইন করা হয়েছে এবং এতে ফাংশন কলিং, বিল্ট-ইন টুলস, স্ট্রাকচার্ড আউটপুট এবং মডেল কনটেক্সট প্রোটোকল (MCP)-এর সাপোর্ট রয়েছে। ডিপ রিসার্চ এজেন্টের (Deep Research Agent) সাথে এটি কীভাবে ব্যবহার করা যায় তা দেখতে, নিচের এজেন্টস 🤖 (Agents 🤖) ধাপটি দেখুন।

এই স্যাম্পলগুলো নিজে চালানোর জন্য, আপনি github.com/meteatamel/genai-samples/blob/main/vertexai/interactions-api -এ থাকা main.py চালাতে পারেন।

৭. দীর্ঘ প্রসঙ্গ উইন্ডো 🪟

অনেক জেমিনি মডেলে ১০ লক্ষ বা তার বেশি টোকেনের বড় কনটেক্সট উইন্ডো থাকে। ঐতিহাসিকভাবে, বড় ল্যাঙ্গুয়েজ মডেলগুলো (এলএলএম) একবারে মডেলে পাঠানো যেত এমন টেক্সট (বা টোকেন)-এর পরিমাণ দ্বারা উল্লেখযোগ্যভাবে সীমাবদ্ধ ছিল। জেমিনির দীর্ঘ কনটেক্সট উইন্ডো অনেক নতুন ব্যবহারের ক্ষেত্র এবং ডেভেলপারদের জন্য নতুন কর্মপন্থা উন্মোচন করে।

3fb7123fc45e7cdf.png

দীর্ঘ কনটেক্সট উইন্ডোটি বাস্তবে দেখতে, আপনি Vertex AI Studio Prompt Gallery- তে গিয়ে Extract Video Chapters প্রম্পটটি বেছে নিতে পারেন। এই প্রম্পটটি ভিডিওর বিষয়বস্তুকে বিভিন্ন অধ্যায়ে ভাগ করে এবং প্রতিটি অধ্যায়ের একটি সারাংশ প্রদান করে।

সরবরাহকৃত ভিডিওটি দিয়ে এটি চালালে, আপনি নিচের মতো একটি আউটপুট পাবেন:

[
  {
    "timecode": "00:00",
    "chapterSummary": "The video opens with scenic views of Rio de Janeiro, introducing the \"Marvelous City\" and its famous beaches like Ipanema and Copacabana, before pivoting to the existence of the favelas."
  },
  {
    "timecode": "00:20",
    "chapterSummary": "The narrator describes the favelas, home to one in five Rio residents, highlighting that while often associated with crime and poverty, this is only a small part of their story."
  },
  {
    "timecode": "00:36",
    "chapterSummary": "Google introduces its project to map the favelas, emphasizing that providing addresses to these uncharted areas is a crucial step in giving residents an identity."
  },
  {
    "timecode": "00:43",
    "chapterSummary": "The video concludes by focusing on the people of the favelas, inviting viewers to go beyond the map and explore their world through a 360-degree experience."
  }
]

এটি শুধুমাত্র মিথুন রাশির দীর্ঘ প্রেক্ষাপট পরিসরের কারণেই সম্ভব!

৮. চিন্তার ধরণ 🧠

জেমিনি মডেলগুলো একটি অভ্যন্তরীণ চিন্তন প্রক্রিয়া ব্যবহার করে যা জটিল কাজগুলোর ক্ষেত্রে তাদের যুক্তিবোধকে উল্লেখযোগ্যভাবে উন্নত করে। চিন্তার স্তর (জেমিনি ৩) এবং বাজেট (জেমিনি ২.৫) তাদের চিন্তার আচরণকে নিয়ন্ত্রণ করে। মডেলটির প্রাথমিক চিন্তাগুলো দেখার জন্য আপনি include_thoughts ফ্ল্যাগটিও সক্রিয় করতে পারেন।

থিংকিং মোডটি বাস্তবে দেখতে, চলুন Google AI Studio ( ai.dev ) খুলে একটি নতুন চ্যাট শুরু করি। ডানদিকের প্যানেলে, আপনি থিংকিং লেভেল সেট করতে পারেন:

382b0c617ab5940e.png

আপনি যদি উপরের ডানদিকে থাকা Get code বোতামে ক্লিক করেন, তাহলে আপনি কোডের মাধ্যমে চিন্তার স্তর কীভাবে নির্ধারণ করতে পারেন, তাও দেখতে পাবেন, যা অনেকটা এইরকম:

response = client.models.generate_content(
    model="gemini-3-pro-preview",
    contents="How does AI work?",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(
          thinking_level="low",
          include_thoughts=True
        )
    ),
)

মডেলটির আচরণ দেখার জন্য বিভিন্ন নির্দেশ ও চিন্তার স্তর নিয়ে পরীক্ষা করুন।

৯. সরঞ্জাম 🧰

জেমিনিতে গুগল সার্চ, গুগল ম্যাপস, কোড এক্সিকিউশন, কম্পিউটার ব্যবহার, ফাইল সার্চ এবং আরও অনেক বিল্ট-ইন টুল রয়েছে। এছাড়াও আপনি ফাংশন কলিং ব্যবহার করে আপনার নিজস্ব টুল তৈরি করতে পারেন। চলুন সংক্ষেপে দেখে নেওয়া যাক এগুলো কীভাবে ব্যবহার করতে হয়।

গুগল অনুসন্ধান 🔎

আরও নির্ভুল, হালনাগাদ এবং প্রাসঙ্গিক উত্তরের জন্য আপনি গুগল সার্চের ফলাফলের ওপর ভিত্তি করে মডেল উত্তর তৈরি করতে পারেন।

Vertex AI Studio ( console.cloud.google.com/vertex-ai/studio ) অথবা Google AI Studio ( ai.dev )-তে, আপনি একটি নতুন চ্যাট শুরু করতে পারেন এবং নিশ্চিত করতে পারেন যে Google Search grounding বন্ধ আছে:

fb694a21e7eb7d5a.png

তারপর, আপনি আপনার এলাকার আজকের আবহাওয়া সম্পর্কে প্রশ্ন করতে পারেন। উদাহরণস্বরূপ:

How's the weather in London today?

আপনি সাধারণত আগের কোনো দিনের প্রতিক্রিয়া পান, কারণ মডেলটির কাছে সর্বশেষ তথ্য থাকে না। উদাহরণস্বরূপ:

In London today (Friday, May 24, 2025), the weather is a bit of a mixed bag, typical for late May.

এখন, গুগল সার্চ গ্রাউন্ডিং চালু করুন এবং একই প্রশ্নটি জিজ্ঞাসা করুন। আপনি গ্রাউন্ডিং উৎসগুলোর লিঙ্কসহ হালনাগাদ আবহাওয়ার তথ্য পাবেন:

In London today (Wednesday, February 11, 2026), the weather is cool and mostly cloudy with a chance of light rain.

এভাবেই আপনি আপনার কোডে গুগল সার্চের ভিত্তি স্থাপন করতে পারেন। এছাড়াও, একটি ভিত্তি নমুনা পেতে আপনি ভার্টেক্স এআই স্টুডিও-এর কোড বাটনে ক্লিক করতে পারেন:

google_search_tool = Tool(google_search=GoogleSearch())
response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents="How's the weather like today in London?",
    config=GenerateContentConfig(tools=[google_search_tool])
)

গুগল ম্যাপস 🗺️

আপনি গুগল ম্যাপসের সাহায্যেও মডেলের প্রতিক্রিয়াগুলোকে যাচাই করতে পারেন, যার কাছে ২৫ কোটিরও বেশি স্থানের তথ্য রয়েছে।

এটি বাস্তবে দেখতে, আপনি Vertex AI studio-এর মডেল সেটিংসের গ্রাউন্ডিং সেকশনের অধীনে Google Search-এর পরিবর্তে Google Maps বেছে নিতে পারেন এবং এমন একটি প্রশ্ন করতে পারেন যার জন্য ম্যাপের ডেটা প্রয়োজন, উদাহরণস্বরূপ:

Can you show me some Greek restaurants and their map coordinates near me?

এর কোডটি দেখতে অনেকটা এইরকম:

google_maps_tool = Tool(google_maps=GoogleMaps())
response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents="What are the best restaurants near here?",
    config=GenerateContentConfig(tools=[google_maps_tool]),
       # Optional: Provide location context (this is in Los Angeles)
        tool_config=ToolConfig(
          retrieval_config=types.RetrievalConfig(
            lat_lng=types.LatLng(
                latitude=34.050481, longitude=-118.248526))),
)

কোড এক্সিকিউশন 🧑‍💻

জেমিনি সমর্থিত লাইব্রেরির (যেমন পান্ডাস, নাম্পাই, পাইপিডিএফ২ ইত্যাদি) একটি তালিকা ব্যবহার করে পাইথন কোড তৈরি ও রান করতে পারে। এটি এমন সব অ্যাপ্লিকেশনের জন্য উপযোগী, যেগুলো কোড-ভিত্তিক যুক্তির ওপর নির্ভরশীল (যেমন সমীকরণ সমাধান)।

এটি পরখ করে দেখতে, Google AI Studio-তে যান, একটি নতুন চ্যাট শুরু করুন এবং নিশ্চিত করুন যে Code execution টগলটি চালু আছে। তারপর, এমন একটি প্রশ্ন করুন যেখানে কোড এক্সিকিউশন টুলটি কাজে লাগতে পারে। উদাহরণস্বরূপ:

What is the sum of the first 50 prime numbers? 

জেমিনির কিছু পাইথন কোড তৈরি করে তা রান করা উচিত। সবশেষে, সঠিক উত্তরটি হলো ৫১১৭।

আপনি কোড থেকে নিম্নলিখিতভাবে কোড এক্সিকিউশন টুলটি চালাতে পারেন:

code_execution_tool = Tool(code_execution=ToolCodeExecution())
response = client.models.generate_content(
  model="gemini-3-flash-preview",
  contents="What is the sum of the first 50 prime numbers?",
  config=GenerateContentConfig(
    tools=[code_execution_tool],
    temperature=0))

কম্পিউটার ব্যবহার 🖥️

জেমিনি কম্পিউটার ইউজ মডেল (প্রিভিউ) আপনাকে কাজগুলো স্বয়ংক্রিয় করার জন্য ব্রাউজার কন্ট্রোল এজেন্ট তৈরি করতে সক্ষম করে। এটি এই চক্রে কাজ করে:

de6edbd0163e6ee3.png

এটি বাস্তবে দেখতে, আপনি github.com/google-gemini/computer-use-preview-main.py চালাতে পারেন। পাইথন ভার্চুয়াল এনভ তৈরি করতে এবং ডিপেন্ডেন্সিগুলো ইনস্টল করতে রিপোজিটরিতে দেওয়া নির্দেশাবলী অনুসরণ করুন।

উদাহরণস্বরূপ, আপনি গুগল এআই স্টুডিও থেকে আপনার এপিআই কী (API key) পেতে পারেন এবং জেমিনিকে আপনার জন্য ফ্লাইট খুঁজতে বলতে পারেন:

export GEMINI_API_KEY=your-api-key

python main.py --query "Find me top 5 fights sorted by price with the following constraints:

Flight site to use: www.google.com/travel/flights
From: London
To: Larnaca
One-way or roundtrip: One way
Date to leave: Sometime next week
Date to return: N/A
Travel preferences:
-Direct flights
-No flights before 10am
-Carry-on luggage"

আপনি দেখবেন জেমিনি একটি ইনকগনিটো ব্রাউজার খুলে আপনার জন্য ফ্লাইট খোঁজা শুরু করবে!

ফাইল অনুসন্ধান 📁

ফাইল সার্চ টুল অনায়াসে রিট্রিভাল অগমেন্টেড জেনারেশন (RAG) করতে সক্ষম করে। শুধু আপনার ফাইলগুলো আপলোড করুন এবং এটি আপনার জন্য চাংকিং, এমবেডিং ও রিট্রিভিং-এর মতো RAG-এর সমস্ত খুঁটিনাটি কাজ করে দেবে।

এটি বাস্তবে দেখতে, আপনি github.com/meteatamel/genai-beyond-basics/blob/main/samples/grounding/file-search-tool -এ থাকা main.py রান করতে পারেন।

গুগল এআই স্টুডিও থেকে আপনার এপিআই কী সংগ্রহ করুন এবং একটি ফাইল সার্চ স্টোর তৈরি করুন:

export GEMINI_API_KEY=your-gemini-api-key

python main.py create_store my-file-search-store

স্টোরে একটি পিডিএফ আপলোড করুন:

python main.py upload_to_store fileSearchStores/myfilesearchstore-5a9x71ifjge9 cymbal-starlight-2024.pdf

স্টোর সম্পর্কিত পিডিএফটি সম্পর্কে একটি প্রশ্ন করুন:

python main.py generate_content "What's the cargo capacity of Cymbal Starlight?" fileSearchStores/myfilesearchstore-5a9x71ifjge9

পিডিএফ-এর ভিত্তিতে আপনার একটি উত্তর পাওয়া উচিত:

Generating content with file search store: fileSearchStores/myfilesearchstore-5a9x71ifjge9
Response: The Cymbal Starlight 2024 has a cargo capacity of 13.5 cubic feet, which is located in the trunk of the vehicle. It is important to distribute the weight evenly and not overload the trunk, as this could impact the vehicle's handling and stability. The vehicle can also accommodate up to two suitcases in the trunk, and it is recommended to use soft-sided luggage to maximize space and cargo straps to secure it while driving.
Grounding sources:  cymbal-starlight-2024.pdf

ফাংশন কলিং 📲

যদি বিল্ট-ইন টুলগুলো যথেষ্ট না হয়, তবে আপনি জেমিনিতে আপনার নিজস্ব টুল (ফাংশন) সংজ্ঞায়িত করতে পারেন। এর জন্য আপনাকে কেবল একটি পাইথন ফাংশন টুল হিসেবে জমা দিতে হবে (ফাংশনটির বিস্তারিত ওপেনএপিআই স্পেসিফিকেশন জমা দেওয়ার পরিবর্তে)। এটি মডেল এবং এসডিকে দ্বারা স্বয়ংক্রিয়ভাবে একটি টুল হিসেবে ব্যবহৃত হয়।

উদাহরণস্বরূপ, কোনো একটি স্থানের অক্ষাংশ ও দ্রাঘিমাংশ ফেরত দেওয়ার জন্য আপনার একটি ফাংশন থাকতে পারে:

def location_to_lat_long(location: str):
    """Given a location, returns the latitude and longitude

    Args:
        location: The location for which to get the weather.

    Returns:
        The latitude and longitude information in JSON.
    """
    logger.info(f"Calling location_to_lat_long({location})")
    url = f"https://geocoding-api.open-meteo.com/v1/search?name={location}&count=1"
    return api_request(url)

অক্ষাংশ এবং দ্রাঘিমাংশ থেকে আবহাওয়ার তথ্য ফেরত দেওয়ার জন্য আপনি একটি ফাংশনও তৈরি করতে পারেন:

def lat_long_to_weather(latitude: str, longitude: str):
    """Given a latitude and longitude, returns the weather information

    Args:
        latitude: The latitude of a location
        longitude: The longitude of a location

    Returns:
        The weather information for the location in JSON.
    """
    logger.info(f"Calling lat_long_to_weather({latitude}, {longitude})")
    url = (f"https://api.open-meteo.com/v1/forecast?latitude={latitude}&longitude={longitude}&current=temperature_2m,"
           f"relative_humidity_2m,surface_pressure,wind_speed_10m,wind_direction_10m&forecast_days=1")
    return api_request(url)

এখন, আপনি ওই দুটি ফাংশনকে টুল হিসেবে জেমিনিতে পাস করতে পারেন এবং কোনো একটি স্থানের আবহাওয়ার তথ্য সংগ্রহ করতে এটিকে ব্যবহার করতে দিতে পারেন:

def generate_content_with_function_calls():
    client = genai.Client(
        vertexai=True,
        project=PROJECT_ID,
        location=LOCATION)

    response = client.models.generate_content(
        model=MODEL_ID,
        contents=PROMPT,
        config=GenerateContentConfig(
            system_instruction=[
                "You are a helpful weather assistant.",
                "Your mission is to provide weather information for different cities."
                "Make sure your responses are in plain text format (no markdown) and include all the cities asked.",
            ],
            tools=[location_to_lat_long, lat_long_to_weather],
            temperature=0),
    )

    print(response.text)
    #print(response.automatic_function_calling_history)

এটি বাস্তবে দেখতে, আপনি github.com/meteatamel/genai-beyond-basics/blob/main/samples/function-calling/weather -এ থাকা main_genaisdk.py রান করতে পারেন।

১০. এজেন্ট 🤖

জেমিনির ইন্টারঅ্যাকশনস এপিআই এজেন্ট তৈরি এবং তাদের সাথে মিথস্ক্রিয়া করার জন্য ডিজাইন করা হয়েছে। আপনি জেমিনি ডিপ রিসার্চ এজেন্টের মতো বিশেষায়িত এজেন্ট ব্যবহার করতে পারেন। জেমিনি ডিপ রিসার্চ এজেন্ট স্বয়ংক্রিয়ভাবে বহু-ধাপের গবেষণামূলক কাজ পরিকল্পনা, সম্পাদন এবং সংশ্লেষণ করে। এটি ওয়েব সার্চ এবং আপনার নিজস্ব ডেটা ব্যবহার করে জটিল তথ্য পরিমণ্ডলে বিচরণ করে বিস্তারিত ও তথ্যসূত্রসহ প্রতিবেদন তৈরি করে।

ইন্টারেকশন এপিআই-এর সাথে ডিপ রিসার্চ এজেন্ট যেভাবে ব্যবহার করবেন তা নিচে দেওয়া হলো:

interaction = client.interactions.create(
    input="Research the history of the Google TPUs.",
    agent="deep-research-pro-preview-12-2025",
    background=True
)

while True:
    if interaction.status == "completed":
        print("\nFinal Report:\n",
interaction.outputs[-1].text)
        break

এই স্যাম্পলটি নিজে চালানোর জন্য, আপনি github.com/meteatamel/genai-samples/blob/main/vertexai/interactions-api -এ থাকা main.py চালাতে পারেন।

export GOOGLE_API_KEY=your-api-key
python main.py agent

কিছুদিন পর গবেষণাটি আপনার দেখা উচিত:

User: Research the history of the Google TPUs with a focus on 2025 and 2026

Status: in_progress
Status: in_progress
Status: in_progress
...
Model Final Report:
 # Architectural Convergence and Commercial Expansion: The History of Google TPUs (2015–2026)

## Key Findings
*   **Strategic Pivot (2025):** Google transitioned the Tensor Processing Unit (TPU) from a primarily internal differentiator to a commercial merchant-silicon competitor, epitomized by the massive "Ironwood" (TPU v7) deployment and external sales strategy.
*   **Technological Leap:** The introduction of TPU v7 "Ironwood" in 2025 marked a paradigm shift, utilizing 3nm process technology to deliver 42.5 exaFLOPS per pod, directly challenging NVIDIA's Blackwell architecture in the high-performance computing (HPC) sector.
...

১১. ছবি তৈরি 📷

ন্যানো ব্যানানা 🍌 হলো জেমিনির নিজস্ব ছবি তৈরির ক্ষমতার নাম। জেমিনি টেক্সট, ছবি বা উভয়ের সংমিশ্রণ ব্যবহার করে কথোপকথনের ভঙ্গিতে ছবি তৈরি ও প্রসেস করতে পারে। এর ফলে আপনি সম্পূর্ণ নিয়ন্ত্রণে থেকে ভিজ্যুয়াল তৈরি, সম্পাদনা এবং তাতে বারবার পরিবর্তন আনতে পারেন।

ন্যানো ব্যানানা বলতে জেমিনি এপিআই-তে উপলব্ধ দুটি স্বতন্ত্র মডেলকে বোঝায়:

  • ন্যানো ব্যানানা : জেমিনি ২.৫ ফ্ল্যাশ ইমেজ মডেল ( gemini-2.5-flash-image )। এই মডেলটি গতি এবং দক্ষতার জন্য ডিজাইন করা হয়েছে এবং এটি উচ্চ-পরিমাণ ও স্বল্প-বিলম্বের কাজগুলোর জন্য অপ্টিমাইজ করা হয়েছে।
  • ন্যানো ব্যানানা প্রো : জেমিনি ৩ প্রো ইমেজ প্রিভিউ মডেল ( gemini-3-pro-image-preview )। এই মডেলটি পেশাদার অ্যাসেট তৈরির জন্য ডিজাইন করা হয়েছে, যা জটিল নির্দেশাবলী অনুসরণ করতে এবং উচ্চ-মানের টেক্সট রেন্ডার করতে উন্নত রিজনিং ব্যবহার করে।

এখানে একটি কোডের অংশ দেওয়া হল, যেখানে আপনি একটি বিদ্যমান ছবি দিয়ে ন্যানো ব্যানানাকে ছবিটি সম্পাদনা করতে বলতে পারেন:

from google import genai
from google.genai import types
from PIL import Image

client = genai.Client()

prompt = (
    "Create a picture of my cat eating a nano-banana in a "
    "fancy restaurant under the Gemini constellation",
)

image = Image.open("/path/to/cat_image.png")

response = client.models.generate_content(
    model="gemini-2.5-flash-image",
    contents=[prompt, image],
)

for part in response.parts:
    if part.text is not None:
        print(part.text)
    elif part.inline_data is not None:
        image = part.as_image()
        image.save("generated_image.png")

ন্যানো ব্যানানা জেমিনি অ্যাপ, এআই স্টুডিও, বা ভার্টেক্স এআই স্টুডিও-তে পাওয়া যায়। এটি ব্যবহার করে দেখার সবচেয়ে সহজ উপায় হলো জেমিনি অ্যাপ। জেমিনি অ্যাপে ( gemini.google.com ), Tools অধীনে 🍌 Create images নির্বাচন করুন। তারপর, একটি ছবি আপলোড করুন এবং মজার কিছু চেষ্টা করুন। উদাহরণস্বরূপ, আপনি বলতে পারেন:

Can you transform this picture of mine to a nice beach on a tropical island?

41a830bea8cf3c9f.png2fc9ac5b7008aafb.png

১২. টেক্সট-টু-স্পিচ প্রজন্ম 🎶

জেমিনি তার টেক্সট-টু-স্পিচ (টিটিএস) তৈরির ক্ষমতা ব্যবহার করে টেক্সট ইনপুটকে একক বক্তা বা একাধিক বক্তার অডিওতে রূপান্তর করতে পারে। টিটিএস তৈরি নিয়ন্ত্রণযোগ্য, যার অর্থ হলো আপনি স্বাভাবিক ভাষা ব্যবহার করে কথোপকথনের কাঠামো তৈরি করতে এবং অডিওর ধরন, উচ্চারণ, গতি ও সুর নিয়ন্ত্রণ করতে পারেন।

দুটি মডেল টিটিএস সমর্থন করে:

টিটিএস (TTS) সক্ষমতাটি লাইভ এপিআই (Live API)-এর মাধ্যমে প্রদত্ত স্পিচ জেনারেশন থেকে ভিন্ন, যা ইন্টারেক্টিভ, কাঠামোবিহীন অডিও এবং মাল্টিমোডাল ইনপুট ও আউটপুটের জন্য ডিজাইন করা হয়েছে। যেখানে লাইভ এপিআই গতিশীল কথোপকথনের প্রেক্ষাপটে বিশেষভাবে পারদর্শী, সেখানে জেমিনি এপিআই (Gemini API)-এর মাধ্যমে টিটিএস এমন সব পরিস্থিতির জন্য বিশেষভাবে তৈরি করা হয়েছে যেখানে স্টাইল ও সাউন্ডের উপর সূক্ষ্ম নিয়ন্ত্রণের সাথে হুবহু টেক্সট আবৃত্তির প্রয়োজন হয়, যেমন পডকাস্ট বা অডিওবুক তৈরি।

একক-স্পিকার টিটিএস-এর জন্য কোডের একটি অংশ নিচে দেওয়া হলো:

from google import genai
from google.genai import types
import wave

# Set up the wave file to save the output:
def wave_file(filename, pcm, channels=1, rate=24000, sample_width=2):
   with wave.open(filename, "wb") as wf:
      wf.setnchannels(channels)
      wf.setsampwidth(sample_width)
      wf.setframerate(rate)
      wf.writeframes(pcm)

client = genai.Client()

response = client.models.generate_content(
   model="gemini-2.5-flash-preview-tts",
   contents="Say cheerfully: Have a wonderful day!",
   config=types.GenerateContentConfig(
      response_modalities=["AUDIO"],
      speech_config=types.SpeechConfig(
         voice_config=types.VoiceConfig(
            prebuilt_voice_config=types.PrebuiltVoiceConfig(
               voice_name='Kore',
            )
         )
      ),
   )
)

data = response.candidates[0].content.parts[0].inline_data.data

file_name='out.wav'
wave_file(file_name, data) # Saves the file to current directory

আপনি টেক্সট-টু-স্পিচ জেনারেশন (TTS) ডকুমেন্টেশনে আরও নমুনা দেখতে পারেন।

আপনি গুগল এআই স্টুডিও প্লেগ্রাউন্ডেও স্পিচ তৈরি করার চেষ্টা করতে পারেন। generate-speech অ্যাপে বিভিন্ন প্রম্পট নিয়ে পরীক্ষা করুন:

6eb20d8a20e571fb.png

১৩. স্থানিক উপলব্ধি 🌐

জেমিনির উন্নত বস্তু শনাক্তকরণ এবং স্থানিক বোধগম্যতা রয়েছে।

এটি বোঝার সবচেয়ে সহজ উপায় হলো এটিকে বাস্তবে কাজ করতে দেখা। AI Studio-তে থাকা Spatial Understanding Starter App- টিতে যান। কয়েকটি ছবি বেছে নিন এবং Gemini ব্যবহার করে ছবিটির মধ্যে কিছু বস্তু শনাক্ত করার চেষ্টা করুন।

উদাহরণস্বরূপ, আপনি বিভিন্ন ছবিতে 'ছায়া' বা 'ফল' শনাক্ত করতে পারেন:

6a521c961664339.png2260ab81a8c9a5e8.png

বিভিন্ন ছবি নিয়ে পরীক্ষা করে দেখুন, জেমিনি কতটা ভালোভাবে বিভিন্ন বস্তু শনাক্ত ও চিহ্নিত করতে পারে।

১৪. লাইভ এপিআই 🎤

লাইভ এপিআই জেমিনির সাথে স্বল্প-বিলম্বের, রিয়েল-টাইম ভয়েস এবং ভিডিও ইন্টারঅ্যাকশন সক্ষম করে। এটি অডিও, ভিডিও বা টেক্সটের অবিচ্ছিন্ন প্রবাহকে প্রক্রিয়াজাত করে তাৎক্ষণিক, মানুষের মতো কথ্য প্রতিক্রিয়া প্রদান করে, যা আপনার ব্যবহারকারীদের জন্য একটি স্বাভাবিক কথোপকথনের অভিজ্ঞতা তৈরি করে।

9ada309ba0cd0888.png

Google AI Studio অথবা Vertex AI Studio-তে Live API ব্যবহার করে দেখুন। উভয় অ্যাপেই আপনি আপনার ভয়েস, ভিডিও এবং স্ক্রিন শেয়ার করে Gemini-র সাথে সরাসরি কথোপকথন করতে পারবেন।

8b4901d2aecc5b62.png

আপনার ভিডিও বা স্ক্রিন শেয়ার করা শুরু করুন এবং ভয়েসের মাধ্যমে মিথুন রাশিকে সাধারণ প্রশ্ন জিজ্ঞাসা করুন। উদাহরণস্বরূপ:

Can you describe what you see on the screen?

মিথুন রাশির কাছ থেকে উত্তরগুলো কতটা স্বাভাবিক শোনাবে তা দেখে আপনি অবাক হয়ে যাবেন।

১৫. উপসংহার

এই কোডল্যাবে, আমরা জেমিনি ইকোসিস্টেম নিয়ে আলোচনা করেছি; জেমিনি ফ্যামিলির প্রোডাক্টগুলো দিয়ে শুরু করে, ইউনিফাইড গুগল জেন এআই এসডিকে (Google Gen AI SDK) ব্যবহার করে কীভাবে মডেলগুলোকে আমাদের অ্যাপ্লিকেশনে ইন্টিগ্রেট করতে হয়, তা শিখেছি। আমরা জেমিনির অত্যাধুনিক ফিচারগুলো, যেমন—লং কনটেক্সট উইন্ডো, থিঙ্কিং মোড, বিল্ট-ইন গ্রাউন্ডিং টুলস, লাইভ এপিআই এবং স্পেশিয়াল আন্ডারস্ট্যান্ডিং—খুঁজে দেখেছি। আমরা আপনাকে রেফারেন্স ডক্সগুলো আরও গভীরভাবে পড়ার এবং জেমিনির সম্পূর্ণ সম্ভাবনা নিয়ে পরীক্ষা-নিরীক্ষা চালিয়ে যাওয়ার জন্য উৎসাহিত করছি।

তথ্যসূত্র