জেমিনি কোড অ্যাসিস্টের সাহায্যে বিকাশকে ত্বরান্বিত করা

১. সংক্ষিপ্ত বিবরণ

এই ল্যাবটি গুগল ক্লাউডের একটি এআই-চালিত এজেন্ট, জেমিনি কোড অ্যাসিস্ট (Gemini Code Assist) ব্যবহারের উপর আলোকপাত করে। আপনি ডেভেলপারদের সাধারণ কাজ, যেমন—বিদ্যমান কোডবেস বোঝা, ডকুমেন্টেশন ও ইউনিট টেস্ট তৈরি করা এবং একটি পাইথন ওয়েব অ্যাপ্লিকেশনের ইউআই (UI) ও ব্যাকএন্ড উভয় কম্পোনেন্ট রিফ্যাক্টরিং করার জন্য জেমিনি কোড অ্যাসিস্ট ব্যবহার করতে শিখবেন।

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

এই ল্যাবে, আপনারা নিম্নলিখিত বিষয়গুলো করতে শিখবেন:

  • ডেভেলপারদের সাধারণ কাজগুলোর জন্য কীভাবে জেমিনি কোড অ্যাসিস্ট ব্যবহার করবেন।

পূর্বশর্ত

  • এই ল্যাবটি করার জন্য ক্লাউড কনসোল এবং ক্লাউড শেল পরিবেশ সম্পর্কে পূর্বপরিচিতি আছে বলে ধরে নেওয়া হচ্ছে।

২. সেটআপ এবং প্রয়োজনীয়তা

ক্লাউড প্রজেক্ট সেটআপ

  1. Google Cloud Console- এ সাইন-ইন করুন এবং একটি নতুন প্রজেক্ট তৈরি করুন অথবা বিদ্যমান কোনো প্রজেক্ট পুনরায় ব্যবহার করুন। যদি আপনার আগে থেকে Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তবে আপনাকে অবশ্যই একটি তৈরি করতে হবে।

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • প্রজেক্টের নামটি হলো এই প্রজেক্টের অংশগ্রহণকারীদের প্রদর্শিত নাম। এটি একটি ক্যারেক্টার স্ট্রিং যা গুগল এপিআই ব্যবহার করে না। আপনি যেকোনো সময় এটি আপডেট করতে পারেন।
  • প্রজেক্ট আইডি সমস্ত গুগল ক্লাউড প্রজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (একবার সেট করার পর এটি পরিবর্তন করা যায় না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত এটি কী তা নিয়ে আপনার মাথা ঘামানোর দরকার নেই। বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রজেক্ট আইডি উল্লেখ করতে হবে (যা সাধারণত PROJECT_ID হিসাবে চিহ্নিত করা হয়)। তৈরি করা আইডিটি আপনার পছন্দ না হলে, আপনি এলোমেলোভাবে আরেকটি তৈরি করতে পারেন। বিকল্পভাবে, আপনি আপনার নিজের আইডি দিয়ে চেষ্টা করে দেখতে পারেন যে সেটি উপলব্ধ আছে কিনা। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রজেক্টের পুরো সময়কাল জুড়ে এটি অপরিবর্তিত থাকবে।
  • আপনার অবগতির জন্য জানানো যাচ্ছে যে, তৃতীয় একটি ভ্যালু রয়েছে, যা হলো প্রজেক্ট নম্বর , এবং কিছু এপিআই এটি ব্যবহার করে থাকে। ডকুমেন্টেশনে এই তিনটি ভ্যালু সম্পর্কে আরও বিস্তারিত জানুন।
  1. এরপর, ক্লাউড রিসোর্স/এপিআই ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং চালু করতে হবে। এই কোডল্যাবটি সম্পন্ন করতে খুব বেশি খরচ হবে না, এমনকি আদৌ কোনো খরচ নাও হতে পারে। এই টিউটোরিয়ালের পর বিলিং এড়াতে রিসোর্সগুলো বন্ধ করার জন্য, আপনি আপনার তৈরি করা রিসোর্সগুলো অথবা প্রজেক্টটি ডিলিট করে দিতে পারেন। নতুন গুগল ক্লাউড ব্যবহারকারীরা ৩০০ মার্কিন ডলারের ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য।

পরিবেশ সেটআপ

জেমিনি চ্যাট খুলুন।

bc3c899ac8bcf488.png

অথবা সার্চ বারে 'Ask Gemini' টাইপ করুন।

e1e9ad314691368a.png

Google Cloud API-এর জন্য Gemini সক্রিয় করুন:

636114fa6e5f0abf.png

পরবর্তী স্ক্রিনে GCA সক্রিয় করুন।

8e234b2e282c4413.png

" Start chatting "-এ ক্লিক করুন এবং এটি পরখ করে দেখার জন্য নমুনা প্রশ্নগুলোর মধ্যে একটি অনুসরণ করুন অথবা আপনার নিজের প্রশ্ন টাইপ করুন।

ed120d672468b412.png

চেষ্টা করার মতো কিছু প্রম্পট:

  • ৫টি মূল পয়েন্টে ক্লাউড রান ব্যাখ্যা করুন।
  • আপনি গুগল ক্লাউড রান-এর প্রোডাক্ট ম্যানেজার, একজন শিক্ষার্থীকে ৫টি সংক্ষিপ্ত ও গুরুত্বপূর্ণ পয়েন্টে ক্লাউড রান ব্যাখ্যা করুন।
  • আপনি গুগল ক্লাউড রান প্রোডাক্ট ম্যানেজার, একজন সার্টিফায়েড কুবারনেটিস ডেভেলপারকে ৫টি সংক্ষিপ্ত ও মূল পয়েন্টে ক্লাউড রান ব্যাখ্যা করুন।
  • আপনি গুগল ক্লাউড রান-এর প্রোডাক্ট ম্যানেজার। একজন সিনিয়র ডেভেলপারকে ৫টি সংক্ষিপ্ত ও গুরুত্বপূর্ণ পয়েন্টে ব্যাখ্যা করুন, কখন আপনি GKE-এর পরিবর্তে ক্লাউড রান ব্যবহার করবেন।

আপনার কাজ শেষ হলে জেমিনি ক্লাউড অ্যাসিস্ট চ্যাট উইন্ডোটি বন্ধ করে দিন।

আরও ভালো প্রম্পট লেখার বিষয়ে জানতে প্রম্পট গাইড দেখুন।

গুগল ক্লাউডের জন্য জেমিনি কীভাবে আপনার ডেটা ব্যবহার করে

গুগলের গোপনীয়তার প্রতিশ্রুতি

এআই/এমএল গোপনীয়তার প্রতিশ্রুতি প্রকাশকারী শিল্পখাতে গুগল অন্যতম প্রথম প্রতিষ্ঠান, যেখানে আমাদের এই বিশ্বাসটি তুলে ধরা হয়েছে যে, ক্লাউডে সংরক্ষিত গ্রাহকদের ডেটার ওপর সর্বোচ্চ স্তরের নিরাপত্তা এবং নিয়ন্ত্রণ থাকা উচিত।

আপনার জমা দেওয়া এবং প্রাপ্ত ডেটা

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

প্রম্পটের এনক্রিপশন

আপনি যখন জেমিনিতে প্রম্পট জমা দেন, তখন আপনার ডেটা জেমিনির অন্তর্নিহিত মডেলে ইনপুট হিসেবে স্থানান্তরের সময় এনক্রিপ্ট করা হয়

জেমিনি থেকে তৈরি প্রোগ্রাম ডেটা

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

গুগল আপনার অনুরোধগুলো কীভাবে পরিচালনা করে, সে সম্পর্কে আরও জানুন

৩. প্রম্পট পরীক্ষা করার বিকল্পসমূহ

আপনি যদি বিদ্যমান প্রম্পটগুলো পরিবর্তন করতে চান, তার জন্য আপনার কাছে বেশ কয়েকটি বিকল্প রয়েছে।

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

গুগল এআই স্টুডিও হলো প্রম্পট ইঞ্জিনিয়ারিং এবং জেমিনি এপিআই নিয়ে প্রোটোটাইপিং ও পরীক্ষা-নিরীক্ষার জন্য একটি ওয়েব-ভিত্তিক টুল।

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

৪. অ্যাপ্লিকেশনটি ডাউনলোড করে যাচাই করুন।

সার্চ বারের ডানদিকে থাকা আইকনটিতে ক্লিক করে ক্লাউড শেল সক্রিয় করুন।

3e0c761ca41f315e.png

অনুমতি দিতে বলা হলে, চালিয়ে যাওয়ার জন্য 'Authorize'-এ ক্লিক করুন।

6356559df3eccdda.png

টার্মিনালে, গিট রিপোজিটরিটি স্থানীয়ভাবে ক্লোন করতে নিচের কমান্ডগুলো চালান।

git clone https://github.com/gitrey/calendar-app-lab
cd calendar-app-lab

'ক্লাউড শেল এডিটর' চালু করুন।

18ca8f879206a382.png

" calendar-app-lab " ফোল্ডারটি খুলুন।

7cef847802b51038.png

ক্লাউড শেল এডিটর-এ একটি নতুন টার্মিনাল চালু করুন।

3336bea9c0e999b9.png

আপনার পরিবেশটি নিচের স্ক্রিনশটটির মতো দেখতে হওয়া উচিত।

ae9475871b7d28a6.png

জেমিনি কোড অ্যাসিস্ট চ্যাট উইন্ডোতে, এই প্রম্পটটি পাঠান:

Don't suggest any changes. Explain this codebase to me.

নমুনা আউটপুট:

9839a7ff8c04f6a7.png

৫. অ্যাপ্লিকেশনটি স্থানীয়ভাবে চালু করুন।

চ্যাট উইন্ডোতে এই প্রম্পটটি পাঠান:

How do I set up a virtual environment and run this app locally?

টার্মিনালে প্রস্তাবিত কমান্ডগুলো চালান:

2d78c7ae8e2f0e5.png

নির্ভরতাগুলি ইনস্টল করুন:

c300d4a00537fcb2.png

অ্যাপটি চালু করুন:

f98f49a19f4015ed.png

অ্যাপ্লিকেশনটির প্রিভিউ দেখতে লিঙ্কে ক্লিক করুন:

dc0a8b15a6c5386f.png

নমুনা আউটপুট:

e9f986d9088b4419.png

d2bb703195b4f99.png

৬. ডকুমেন্টেশন যোগ করা

চ্যাট উইন্ডোতে এই প্রম্পটটি পাঠান:

Add docstrings to all files

প্রস্তাবিত পরিবর্তনগুলো পর্যালোচনা করুন এবং চ্যাটে সেগুলো গ্রহণ করুন:

d66c0d004ed65f87.png

চ্যাট উইন্ডোতে এই প্রম্পটটি পাঠান:

update .gitignore and add venv/* folder

এর পরে এই নির্দেশটি আসে:

update .gitignore and add __pycache__ folder

নমুনা আউটপুট:

b06dae44f82cfa95.png

সোর্স কন্ট্রোল ভিউতে যান এবং এ পর্যন্ত আপনার করা পরিবর্তনগুলো পর্যালোচনা করুন:

2c41f8b842573384.png

৭. ইউনিট টেস্ট যোগ করা

calendar.py ফাইলটি খুলুন এবং কনটেক্সট মেনু থেকে Gemini Code Assist >> Generate Unit Tests নির্বাচন করুন।

6d21534189f9d18d.png

জেমিনি কোড অ্যাসিস্ট চ্যাট উইন্ডোতে এন্টার চাপুন। পরিবর্তনগুলো পর্যালোচনা করুন এবং সেগুলো গ্রহণ করুন।

dc0bac41d481fd34.png

পরীক্ষাগুলো কীভাবে চালাতে হয় তা জেমিনিকে জিজ্ঞাসা করুন:

How do I run the tests?

টার্মিনালে প্রস্তাবিত কমান্ডগুলো চালান এবং আউটপুট পর্যালোচনা করুন।

9ce654d02951888.png

৮. ত্রুটি পরীক্ষা করুন

calendar.py ফাইলটি খুলুন এবং চ্যাট উইন্ডোতে এই প্রম্পটটি পাঠান:

Are there any bugs in the conversion logic?

প্রস্তাবিত পরিবর্তনগুলো পর্যালোচনা করুন এবং চ্যাটে সেগুলো গ্রহণ করুন:

1ff4c84d70cd4a79.png

পরিবর্তনগুলো যাচাই করতে ইউনিট টেস্টগুলো পুনরায় চালান:

python3 test_calendar.py

যদি আপনি কোনো ত্রুটির বার্তা দেখতে পান, তাহলে আপনি ত্রুটিটি নির্বাচন করে সেটিকে জেমিনির কনটেক্সটে যোগ করতে পারেন, যা সমস্যা সমাধান ও ঠিক করতে সাহায্য করবে।

70e77fd68358a29a.png

৯. UI রিফ্যাক্টর করুন

চ্যাট উইন্ডোতে এই প্রম্পটটি পাঠান:

Refactor UI to use bootstrap library

পরিবর্তনগুলো পর্যালোচনা করুন এবং গ্রহণ করুন:

b5fd026c01c88d26.png

অ্যাপ্লিকেশনটি চালু করুন অথবা অ্যাপটি আগে থেকেই চালু থাকলে পৃষ্ঠাটি রিলোড করুন।

টার্মিনালে অ্যাপটি চালু না থাকলে সেটি চালু করুন:

python3 main.py

পৃষ্ঠাটি পুনরায় লোড করুন এবং পরিবর্তনগুলো যাচাই করুন।

b52a709e902040e3.png

54664e527bcd9227.png

এরর পেজটি যাচাই করতে একটি নেগেটিভ নম্বর পাঠানোর চেষ্টা করুন।

f426b129e8aa64b7.png

604f16773e868060.png

১০. ব্যাকএন্ড রিফ্যাক্টর করুন

চ্যাট উইন্ডোতে এই প্রম্পটটি পাঠান:

Store requests in memory and create a page to display conversion history. Add links on all pages to view the history.

চ্যাটে পরিবর্তনগুলো পর্যালোচনা করুন এবং গ্রহণ করুন:

8c1c2a1b79432490.png

টার্মিনালে এই কমান্ডটি চালিয়ে অ্যাপ্লিকেশনটি চালু করুন:

python3 main.py

হিস্ট্রি পেজটি পর্যালোচনা করার আগে অ্যাপ্লিকেশনটি অ্যাক্সেস করুন এবং একাধিক অনুরোধ জমা দিন।

ac5639d18b341b0a.png

রূপান্তর অনুরোধগুলোর ইতিহাস পর্যালোচনা করুন।

9ca680e193510640.png

১১. জেমিনি কোড অ্যাসিস্ট-এর উপসংহার

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

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

১২. অভিনন্দন!

অভিনন্দন, আপনি কোডল্যাবটি সম্পন্ন করেছেন!

আমরা যা আলোচনা করেছি:

  • ডেভেলপারদের সাধারণ কাজগুলির জন্য জেমিনি কোড অ্যাসিস্ট ব্যবহার করা

এরপর কী:

  • আরও হাতে-কলমে শেখার সেশন আসছে!

পরিষ্কার করা

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

প্রকল্পটি মুছে ফেলা হচ্ছে

বিলিং বন্ধ করার সবচেয়ে সহজ উপায় হলো টিউটোরিয়ালের জন্য তৈরি করা প্রজেক্টটি ডিলিট করে দেওয়া।

©২০২৪ গুগল এলএলসি। সর্বস্বত্ব সংরক্ষিত। গুগল এবং গুগল লোগো হলো গুগল এলএলসি-এর ট্রেডমার্ক। অন্য সকল কোম্পানি ও পণ্যের নাম তাদের সংশ্লিষ্ট কোম্পানিগুলোর ট্রেডমার্ক হতে পারে।