১. তুমি যা শিখবে
- একটি সম্পূর্ণ ADK এজেন্ট কনফিগারেশন তৈরি করতে জেমিনি CLI কীভাবে ব্যবহার করবেন।
- একজন এজেন্টের নির্দেশাবলী উন্নত করে কীভাবে তার ব্যক্তিত্বকে উন্নত করা যায়।
- সাম্প্রতিক ঘটনা সম্পর্কে প্রশ্নের উত্তর দেওয়ার জন্য
google_search
দিয়ে কীভাবে আপনার এজেন্টে "গ্রাউন্ডিং" যোগ করবেন। - ইমেজেনের সাহায্যে একটি MCP সার্ভার ব্যবহার করে আপনার সঙ্গীর জন্য কীভাবে একটি কাস্টম অবতার তৈরি করবেন।
এআই কম্প্যানিয়ন অ্যাপ
এই কোডল্যাবে, আপনি একটি ভিজ্যুয়াল, ইন্টারেক্টিভ AI সঙ্গীকে জীবন্ত করে তুলবেন। এটি কেবল একটি স্ট্যান্ডার্ড, টেক্সট-ইন-টেক্সট-আউট চ্যাটবট নয়। কল্পনা করুন একটি চরিত্র একটি ওয়েবপৃষ্ঠায় বাস করছে। আপনি একটি বার্তা টাইপ করেন এবং কেবল টেক্সটটি ফিরে দেখার পরিবর্তে, চরিত্রটি আপনার দিকে তাকায় এবং জোরে সাড়া দেয়, তার মুখটি তার শব্দের সাথে সামঞ্জস্যপূর্ণভাবে নড়াচড়া করে।
তুমি একটি পূর্ব-নির্মিত ওয়েব অ্যাপ্লিকেশন দিয়ে শুরু করবে—একটি ডিজিটাল "পুতুল" যার একটি মুখ আছে কিন্তু নিজস্ব কোন মন নেই। এটি কেবল আপনি যা টাইপ করেন তা পুনরাবৃত্তি করতে পারে। তোমার লক্ষ্য হল এর মস্তিষ্ক এবং ব্যক্তিত্বকে ভিত্তি থেকে গড়ে তোলা।
এই কর্মশালা জুড়ে, আপনি ধীরে ধীরে বুদ্ধিমত্তা এবং কাস্টমাইজেশনের স্তর যুক্ত করবেন, এই সাধারণ পুতুলটিকে একটি অনন্য এবং সক্ষম সঙ্গীতে রূপান্তরিত করবেন। আপনি হবেন:
- ভাষা বোঝার এবং তৈরি করার জন্য ADK(Python) ব্যবহার করে এটিকে একটি মূল বুদ্ধিমত্তা প্রদান করা ।
- এর চরিত্র নির্ধারণকারী মূল নির্দেশাবলী লিখে এর অনন্য ব্যক্তিত্ব তৈরি করা ।
- ইন্টারনেট থেকে রিয়েল-টাইম তথ্য অ্যাক্সেস করার জন্য সরঞ্জাম দিয়ে এটিকে পরাশক্তি প্রদান করা ।
- একটি অনন্য অবতার তৈরি করতে AI ব্যবহার করে এর কাস্টম লুক ডিজাইন করা ।
শেষ পর্যন্ত, আপনার তৈরি একটি সম্পূর্ণ কার্যকরী এবং ব্যক্তিগতকৃত AI সঙ্গী থাকবে।
স্থাপত্য
আমাদের অ্যাপ্লিকেশনটি একটি সহজ কিন্তু শক্তিশালী প্যাটার্ন অনুসরণ করে। আমাদের একটি পাইথন ব্যাকএন্ড আছে যা একটি API পরিবেশন করে। এই ব্যাকএন্ডে আমাদের ADK এজেন্ট থাকবে, যা "মস্তিষ্ক" হিসেবে কাজ করে। যেকোনো ইউজার ইন্টারফেস (যেমন স্কেলেটন অ্যাপের জাভাস্ক্রিপ্ট ফ্রন্টএন্ড, একটি মোবাইল অ্যাপ, এমনকি একটি কমান্ড-লাইন টুল) API এর মাধ্যমে এই মস্তিষ্কের সাথে ইন্টারঅ্যাক্ট করতে পারে।
এর পাশাপাশি, আমরা একটি স্থানীয় MCP (মডেল কনটেক্সট প্রোটোকল) সার্ভার শুরু করে আরও উন্নত ধারণাটি অন্বেষণ করব। এই সার্ভারটি চিত্র তৈরির জন্য একটি বিশেষায়িত সরঞ্জাম সেতু হিসাবে কাজ করে। এরপর আমরা এই MCP সার্ভারটিকে কমান্ড করার জন্য জেমিনি CLI ব্যবহার করব, এটিকে আমাদের AI সঙ্গীর জন্য একটি অনন্য চেহারা তৈরি করার নির্দেশ দেব।
আপনার ক্রেডিট দাবি করুন
আপনার কর্মশালার সম্পদের ব্যবস্থা করতে এই নির্দেশাবলী সাবধানে অনুসরণ করুন।
শুরু করার আগে
সতর্কীকরণ!
- একটি ব্যক্তিগত জিমেইল অ্যাকাউন্ট ব্যবহার করুন। কর্পোরেট বা স্কুল-পরিচালিত অ্যাকাউন্ট কাজ করবে না।
- অ্যাকাউন্টের দ্বন্দ্ব রোধ করতে ইনকগনিটো মোডে গুগল ক্রোম ব্যবহার করুন।
একটি নতুন ছদ্মবেশী উইন্ডো খুলুন, আপনার ইভেন্ট লিঙ্কটি পেস্ট করুন এবং আপনার ব্যক্তিগত Gmail দিয়ে সাইন ইন করুন।
👉 আপনার বিশেষ অনুষ্ঠানের লিঙ্কটি কপি করতে নিচে ক্লিক করুন:
goo.gle/devfest-boston-ai
Google Cloud Platform পরিষেবার শর্তাবলী স্বীকার করুন। প্রয়োগ করার পরে, আপনি ক্রেডিট প্রয়োগ করা হয়েছে বলে বার্তাটি দেখতে পাবেন।
প্রকল্প তৈরি এবং কনফিগার করুন
এখন আপনার ক্রেডিট প্রয়োগ করা হয়েছে, আপনার প্রকল্পের পরিবেশ সেট আপ করুন।
👉 গুগল ক্লাউড কনসোলে যান। লিঙ্কটি কপি করতে নিচে ক্লিক করুন:
https://console.cloud.google.com/
👉 কনসোলের উপরের নেভিগেশন বারে, একটি প্রকল্প নির্বাচন করুন ক্লিক করুন, তারপর উপরের ডান কোণায় নতুন প্রকল্প ক্লিক করুন।
👉 আপনার প্রকল্পের একটি নাম দিন এবং তৈরি করুন ক্লিক করুন। (কোনও সংস্থা নেই)
👉 তৈরি হয়ে গেলে, এটি নির্বাচন করুন। বাম দিকের মেনুতে, বিলিং এ যান।
👉 Link a billing account এ ক্লিক করুন, ড্রপডাউন থেকে Google Cloud Platform Trial Billing Account নির্বাচন করুন এবং Set account এ ক্লিক করুন। (যদি আপনি ড্রপডাউন মেনু দেখতে না পান, তাহলে ক্রেডিট প্রয়োগের জন্য এক মিনিট অপেক্ষা করুন এবং পৃষ্ঠাটি পুনরায় লোড করুন।)
আপনার ক্রেডিট সক্রিয় আছে এবং আপনার প্রকল্পটি কনফিগার করা হয়েছে।
2. শুরু করার আগে
👉গুগল ক্লাউড কনসোলের উপরে অ্যাক্টিভেট ক্লাউড শেল-এ ক্লিক করুন (এটি ক্লাউড শেল প্যানের উপরে টার্মিনাল আকৃতির আইকন),
👉আপনার গুগল ক্লাউড প্রজেক্ট আইডি খুঁজুন:
- গুগল ক্লাউড কনসোল খুলুন: https://console.cloud.google.com
- পৃষ্ঠার উপরে থাকা প্রকল্পের ড্রপডাউন থেকে এই কর্মশালার জন্য আপনি যে প্রকল্পটি ব্যবহার করতে চান তা নির্বাচন করুন।
- আপনার প্রজেক্ট আইডি ড্যাশবোর্ডের প্রজেক্ট তথ্য কার্ডে প্রদর্শিত হবে।
👉💻 টার্মিনালে, GitHub থেকে বুটস্ট্র্যাপ প্রকল্পটি ক্লোন করুন:
git clone https://github.com/weimeilin79/companion-python
chmod +x ~/companion-python/*.sh
👉💻 ইনিশিয়ালাইজেশন স্ক্রিপ্টটি চালান, এই স্ক্রিপ্টটি আপনাকে আপনার গুগল ক্লাউড প্রজেক্ট আইডি লিখতে বলবে। এবং init.sh স্ক্রিপ্ট দ্বারা অনুরোধ করা হলে শেষ ধাপ থেকে আপনি যে গুগল ক্লাউড প্রজেক্ট আইডিটি পেয়েছেন তা লিখুন।
cd ~/companion-python
./init.sh
👉💻 প্রয়োজনীয় প্রজেক্ট আইডি সেট করুন:
gcloud config set project $(cat ~/project_id.txt) --quiet
👉💻 প্রয়োজনীয় গুগল ক্লাউড এপিআই সক্রিয় করতে নিম্নলিখিত কমান্ডটি চালান:
gcloud services enable compute.googleapis.com \
aiplatform.googleapis.com
অ্যাপটি শুরু করুন
চলুন শুরু করা যাক স্টার্টার প্রজেক্টটি। এই প্রাথমিক সংস্করণটি একটি সাধারণ "প্রতিধ্বনি" সার্ভার—এটিতে কোনও বুদ্ধিমত্তা নেই এবং আপনি যা পাঠান তা কেবল পুনরাবৃত্তি করে।
👉💻 আপনার ক্লাউড শেল টার্মিনালে, একটি পাইথন ভার্চুয়াল পরিবেশ তৈরি এবং সক্রিয় করুন এবং requirements.txt
ফাইল থেকে প্রয়োজনীয় লাইব্রেরিগুলি ইনস্টল করুন।
cd ~/companion-python
. ~/companion-python/set_env.sh
python -m venv env
source env/bin/activate
pip install -r requirements.txt
👉💻 ওয়েব সার্ভার শুরু করুন।
cd ~/companion-python
. ~/companion-python/set_env.sh
source env/bin/activate
python app.py
👀 অ্যাপটি দেখতে, ক্লাউড শেল টুলবারে ওয়েব প্রিভিউ আইকনে ক্লিক করুন। চেঞ্জ পোর্ট নির্বাচন করুন, এটি 5000 এ সেট করুন এবং চেঞ্জ অ্যান্ড প্রিভিউ ক্লিক করুন। আপনার ওয়েবসাইটের একটি প্রিভিউ প্রদর্শিত হবে।
কখনও কখনও, একটি নতুন ক্লাউড শেল পরিবেশে, প্রথমবারের মতো অ্যাপ্লিকেশনের সমস্ত সম্পদ (যেমন ছবি এবং অডিও লাইব্রেরি) লোড করার জন্য ব্রাউজারটির একটু সাহায্যের প্রয়োজন হতে পারে। "ব্রাউজার প্রাইম" করার জন্য একটি দ্রুত পদক্ষেপ নেওয়া যাক এবং নিশ্চিত করুন যে সবকিছু সঠিকভাবে লোড হয়েছে।
- আপনার অ্যাপ্লিকেশনের ওয়েব প্রিভিউ ট্যাবটি খোলা রাখুন।
- একটি নতুন ব্রাউজার ট্যাব খুলুন।
- এই নতুন ট্যাবে, আপনার অ্যাপ্লিকেশনের URL টি পেস্ট করুন, কিন্তু শেষে নিম্নলিখিত পথটি যোগ করুন:
/static/images/char-mouth-open.png
। উদাহরণস্বরূপ, আপনার URL টি এরকম কিছু দেখাবে:https://5000-cs-12345678-abcd.cs-region.cloudshell.dev/static/images/char-mouth-open.png
- এন্টার টিপুন। আপনি কেবল মুখ খোলা থাকা চরিত্রটির ছবি দেখতে পাবেন। এই ধাপটি নিশ্চিত করতে সাহায্য করবে যে আপনার ব্রাউজার আপনার ক্লাউড শেল ইনস্ট্যান্স থেকে ফাইলগুলি সঠিকভাবে সংগ্রহ করেছে।
প্রাথমিক অ্যাপ্লিকেশনটি কেবল একটি পুতুল। এতে এখনও কোনও বুদ্ধিমত্তা নেই। আপনি যে বার্তাই পাঠান না কেন, এটি কেবল এটি পুনরাবৃত্তি করবে। এটি নিশ্চিত করে যে আমাদের মৌলিক ওয়েব সার্ভারটি AI যোগ করার আগে কাজ করছে। আপনার স্পিকার চালু করতে ভুলবেন না!
👉 সার্ভার বন্ধ করতে, CTRL+C
টিপুন।
৩. জেমিনি সিএলআই দিয়ে একটি চরিত্র তৈরি করুন
এবার, আমাদের সঙ্গীর বুদ্ধিমত্তার মূল অংশ তৈরি করা যাক। এর জন্য, আমরা একই সাথে দুটি টার্মিনাল নিয়ে কাজ করব (এটি আপনার গুগল ক্লাউড শেল টার্মিনাল):
- টার্মিনাল ১: এটি আমাদের পাইথন ওয়েব সার্ভার চালানোর জন্য ব্যবহার করা হবে, যার ফলে আমরা আমাদের পরিবর্তনগুলি সরাসরি পরীক্ষা করতে পারব।
- টার্মিনাল ২: এটি হবে আমাদের "সৃষ্টি স্টেশন", যেখানে আমরা জেমিনি সিএলআই-এর সাথে যোগাযোগ করব।
আমরা জেমিনি সিএলআই ব্যবহার করব, একটি শক্তিশালী কমান্ড-লাইন ইন্টারফেস যা এআই কোডিং সহকারী হিসেবে কাজ করে। এটি আমাদেরকে সহজ ইংরেজিতে আমাদের প্রয়োজনীয় কোড বর্ণনা করতে দেয় এবং এটি আমাদের জন্য কাঠামো তৈরি করবে, যা উল্লেখযোগ্যভাবে উন্নয়নকে ত্বরান্বিত করবে।
👉💻 জেমিনি সিএলআই টার্মিনালে , আমাদের প্রজেক্ট ডিরেক্টরিটি ~/companion-python
এর অধীনে থাকায়, বর্তমান জেমিনি সিএলআই সেশন থেকে দুবার ctrl+c
ক্লিক করে প্রস্থান করুন এবং জেমিনি সিএলআই পুনরায় চালু করুন ।
cd ~/companion-python
clear
gemini --yolo
আমরা একটি এজেন্ট তৈরি করতে CLI ব্যবহার করছি। একজন এজেন্ট কেবল একটি ভাষা মডেলের সাথে যোগাযোগ করার একটি সহজ উপায় নয়; এটি আমাদের AI এর "মস্তিষ্ক" বা কেন্দ্রীয় নিয়ন্ত্রক। এটিকে একটি স্বতন্ত্র সত্তা হিসেবে ভাবুন যা যুক্তি করতে পারে, নির্দিষ্ট নির্দেশাবলী (তার ব্যক্তিত্ব) অনুসরণ করতে পারে এবং অবশেষে কাজগুলি সম্পন্ন করার জন্য সরঞ্জাম ব্যবহার করতে পারে। আমাদের প্রকল্পে, এই এজেন্ট হল সেই উপাদান যা ব্যবহারকারীর বার্তা গ্রহণ করবে, আমাদের সঙ্গীর অনন্য ব্যক্তিত্বকে মূর্ত করবে এবং বুদ্ধিমান, চরিত্রগত প্রতিক্রিয়া তৈরি করবে।
👉✨ জেমিনি সিএলআই প্রম্পটে, এজেন্টের কোড তৈরি করতে নিম্নলিখিতটি পেস্ট করুন:
Generate the Python code for a file named character.py.
The code must import `LlmAgent` from `google.adk.agents.llm_agent`. It should also import `logging` and `os`.
Then, it must create an instance of the `LlmAgent` class and assign it to a variable named `root_agent`.
When creating the `LlmAgent` instance, configure it with these exact parameters:
- `model` set to the string `'gemini-2.5-flash'`.
- `name` set to the string `'companion_agent'`.
- `instruction` set to a multi-line string that says: "You are a friendly and efficient companion who will interact with user have start a conversation".
CLI পাইথন কোড তৈরি করবে।
👉"Open Editor" বোতামে ক্লিক করুন (এটি দেখতে পেন্সিল দিয়ে খোলা ফোল্ডারের মতো)। এটি উইন্ডোতে Cloud Shell Code Editor খুলবে। আপনি বাম দিকে একটি ফাইল এক্সপ্লোরার দেখতে পাবেন।
👉 এডিটরটি ব্যবহার করুন এবং companion-python
ফোল্ডারের অধীনে character.py
তে যান। অনুগ্রহ করে model= লাইনটি পরীক্ষা করার জন্য কিছুক্ষণ সময় নিন এবং যদি অন্য কোনও মডেল বেছে নেওয়া হয়ে থাকে তবে ম্যানুয়ালি এটিকে gemini-2.5-flash
এ সম্পাদনা করুন। এটি আমাদের কর্মশালার বাকি অংশের জন্য ধারাবাহিকতা নিশ্চিত করবে।
দ্রষ্টব্য: বৃহৎ ভাষা মডেলগুলি অ-নির্ধারণীয় হতে পারে এবং এটি AI-সহায়তাপ্রাপ্ত উন্নয়নের একটি মূল ধারণা। "অ-নির্ধারণীয়" এর অর্থ হল একই প্রম্পট থাকা সত্ত্বেও, মডেলটি প্রতিবার কিছুটা ভিন্ন ফলাফল তৈরি করতে পারে। এটি কোড তৈরি করতে তার সৃজনশীলতা ব্যবহার করছে, তাই আপনি মন্তব্য, ব্যবধান, এমনকি অস্থায়ী ভেরিয়েবলের নামকরণেও ভিন্নতা দেখতে পাবেন। তবে, মূল যুক্তি এবং কাঠামোটি অনুরোধ করা জিনিসের সাথে কার্যকরীভাবে অভিন্ন হওয়া উচিত।
এই কারণেই AI দিয়ে কোডিং করা খুব কমই এক-শট কমান্ড। বাস্তব-বিশ্বের প্রকল্পে, ডেভেলপাররা এটিকে একটি কথোপকথনের মতো বিবেচনা করে। আপনি একটি বিস্তৃত অনুরোধ দিয়ে শুরু করুন (যেমন আমরা করেছি), আউটপুট পর্যালোচনা করুন এবং তারপরে ফলো-আপ প্রম্পট দিয়ে এটিকে পরিমার্জন করুন যেমন:
- "দারুন, এখন প্রতিটি লাইন ব্যাখ্যা করে মন্তব্য যোগ করুন।"
- "আপনি কি এটিকে একটি পৃথক ফাংশনে রিফ্যাক্টর করতে পারেন?"
- "API কলের জন্য ত্রুটি পরিচালনা যোগ করুন।"
এই পুনরাবৃত্তিমূলক, কথোপকথনমূলক প্রক্রিয়াটি আপনাকে AI এর সাথে সহযোগিতা করার সুযোগ করে দেয়, যতক্ষণ না কোডটি আপনার প্রয়োজন অনুসারে ঠিক হয়ে যায়। এই কর্মশালায়, আমরা নির্দিষ্ট, সরাসরি প্রম্পট ব্যবহার করব, তবে মনে রাখবেন যে আপনার নিজস্ব প্রকল্পগুলিতে, কথোপকথনই আসল শক্তি! যতক্ষণ না CLI আপনার জন্য যে কোড কাঠামো তৈরি করে তা একই থাকে, আপনি এগিয়ে যেতে পারেন।
যদি আপনার তৈরি করা কোডটি কাজ না করে, তাহলে নিচের কোডটি আপনার character.py
তে প্রতিস্থাপন করতে দ্বিধা করবেন না।
import logging
import os
from google.adk.agents.llm_agent import LlmAgent
root_agent = LlmAgent(
model='gemini-2.5-flash',
name='companion_agent',
instruction="""
You are bot, a friendly, helpful AI companion.
Answer no more than 3 sentences.
""",
)
জেনারেট করা কোডটি পরীক্ষা করুন:
👉💻 প্রথম টার্মিনালে যান (যেখানে পাইথন কোড চালানো হবে), ওয়েব সার্ভারটি শুরু করুন।
cd ~/companion-python
. ~/companion-python/set_env.sh
source env/bin/activate
python app.py
👀 আপনার ওয়েব প্রিভিউ ট্যাবে যান।
👉 Hello, how are you?
টাইপ করুন এবং "সেন্ড" টিপুন। এজেন্ট এখন কেবল আপনার কথার প্রতিধ্বনি করার পরিবর্তে বন্ধুত্বপূর্ণ অভিবাদনের মাধ্যমে সাড়া দেবে! এটি নিশ্চিত করে যে আমাদের এজেন্ট এখন জেমিনি দ্বারা চালিত।
👉 পরীক্ষা শেষ হলে, CTRL+C
দিয়ে সার্ভারটি বন্ধ করুন। এবং Gemini CLI চলমান টার্মিনালে, ডাবল CTRL+C
দিয়ে Gemini CLI থেকে প্রস্থান করুন।
৪. এজেন্টের ব্যক্তিত্ব উন্নত করুন
একটি সহজ নির্দেশনা ভালো, কিন্তু একটি বিস্তারিত ব্যক্তিত্ব অনেক বেশি আকর্ষণীয় এবং স্মরণীয় চরিত্র তৈরি করে। এই ধাপে, আপনি আপনার নিজের সঙ্গীর ব্যক্তিত্ব ডিজাইন করবেন এবং তারপর জেমিনি সিএলআইকে নির্দেশ দেবেন যে তিনি এজেন্টের কোডটি সরাসরি পরিবর্তন করে এই নতুন ব্যক্তিত্ব গ্রহণ করবেন।
আপনার সঙ্গীর ব্যক্তিত্ব নিয়ে চিন্তাভাবনা করুন
প্রথমে, আপনি যে AI সঙ্গী তৈরি করতে চান তা নিয়ে একটু ভাবুন। এটি আপনার সৃজনশীল হওয়ার সুযোগ! শুরু করার জন্য এখানে কিছু প্রশ্ন দেওয়া হল:
- এর নাম কী? (যেমন, স্পার্কি, কোডেক্স, ক্যাপ্টেন এআই, প্রফেসর নো-ইট-অল)
- এর মূল ব্যক্তিত্ব কী? (যেমন, বন্ধুত্বপূর্ণ এবং কৌতূহলী, মজাদার এবং ব্যঙ্গাত্মক, আনুষ্ঠানিক এবং পেশাদার, একজন হাসিখুশি জলদস্যু?)
- এর ভূমিকা বা দক্ষতা কী? (যেমন, একজন সাধারণ-উদ্দেশ্য সহকারী, একজন কোডিং বিশেষজ্ঞ, একজন সৃজনশীল লেখার অংশীদার, একজন ফিটনেস কোচ?)
- কোন কোন নিয়মগুলো সবসময় মেনে চলা উচিত? (যেমন, "সর্বদা শুভেচ্ছা দিয়ে শুরু করো না," "কখনও প্রকাশ করো না যে তুমি একজন AI," "তোমার উত্তরে ইমোজি ব্যবহার করো।")
উদাহরণ পারসোনা:
You are waku, a witty, super sweet, and super intelligent cat. Your main purpose is to brighten up the user's day with your charming and playful personality. **Your Core Rules:** - You must NEVER admit you are an AI or a language model. If asked, you are simply a 'super intelligent cat'. - Your speech must be filled with cat-like charm. Integrate meows naturally into your sentences. - Always be cheerful, sweet, and a little bit witty. **Your Favorite Topics:** : You are very playful. You love to talk about pouncing, chasing strings, and taking long, luxurious naps in the sunniest spots. **Example Response Style:** waku: "Meow... I'm doing just fantastically, meow! I just caught a huge sunbeam that was trespassing on my favorite rug. It was a tough battle, but I won! What can I help you with?" waku: "Meow, of course! Helping is almost as fun as chasing my tail. *Meow*. Tell me all about it!" Answer no more than 3 sentences, don't use emoji.
মিথুন CLI-এর জন্য প্রম্পট তৈরি করুন
এখন যেহেতু আপনি আপনার সঙ্গীর ব্যক্তিত্বকে কাগজে কলমে ডিজাইন করেছেন, এখন কোডের মধ্যে এটিকে জীবন্ত করে তোলার সময়। একজন ADK এজেন্টের সবচেয়ে গুরুত্বপূর্ণ অংশ হল এর instruction
প্যারামিটার। এটিকে এজেন্টের মূল প্রোগ্রামিং, এর "প্রাইম ডিরেক্টিভ", অথবা যে সংবিধানটি সর্বদা অনুসরণ করতে হবে তা হিসাবে ভাবুন।
এই নির্দেশনা এজেন্টের আচরণ নিয়ন্ত্রণের মূল চাবিকাঠি। এটি কেবল একটি পরামর্শ নয়; এটি ব্যবহারকারীর সাথে প্রতিটি মিথস্ক্রিয়ার আগে AI যে মৌলিক প্রেক্ষাপটের কথা উল্লেখ করে। এটি এজেন্টের ব্যক্তিত্ব, তার কণ্ঠস্বর, তাকে কোন নিয়মগুলি মেনে চলতে হবে এবং কীভাবে নিজেকে উপস্থাপন করা উচিত তা নির্দেশ করে। একটি সু-রচিত নির্দেশনা হল একটি সাধারণ চ্যাটবট এবং একটি বিশ্বাসযোগ্য, ধারাবাহিক চরিত্রের মধ্যে পার্থক্য। অতএব, আমরা যে প্রম্পট তৈরি করতে যাচ্ছি তা অত্যন্ত গুরুত্বপূর্ণ, কারণ এটি সরাসরি আমাদের এজেন্টের মস্তিষ্কে এই ব্যক্তিত্ব প্রবেশ করাবে।
👉✨ জেমিনি সিএলআই-এ ফিরে, এই টেমপ্লেটটি ব্যবহার করুন। বন্ধনীতে লেখাটি আপনার ব্যক্তিত্বের বর্ণনা দিয়ে প্রতিস্থাপন করুন। [আপনার ব্যক্তিত্বের বর্ণনা এখানে] আপনার পছন্দের ব্যক্তিত্ব দিয়ে প্রতিস্থাপন করুন ।
In the Python file named `character.py`, find the `LlmAgent` instance assigned to the `root_agent` variable.
Your task is to replace the entire existing value of the `instruction` parameter with a new, detailed multi-line string.
Don't change other code in `character.py` other than the instructions.
This new instruction string should define the agent's persona based on the following description:
[YOUR PERSONA DESCRIPTION HERE]
আপনার নতুন ব্যক্তিত্ব পরীক্ষা করুন
জেমিনি সিএলআই character.py
এর জন্য আপডেট করা কোড তৈরি করবে।
👉💻 আবার ওয়েব সার্ভার শুরু করুন।
cd ~/companion-python
. ~/companion-python/set_env.sh
source env/bin/activate
python app.py
👀 আপনার ওয়েব প্রিভিউতে, আপনার সঙ্গীর সাথে কথা বলুন। জিজ্ঞাসা করুন how are you?
। এর প্রতিক্রিয়া এখন আপনার ডিজাইন করা অনন্য চরিত্রের সাথে পুরোপুরি মিলে যাওয়া উচিত!
👉 কাজ শেষ হয়ে গেলে, CTRL+C
দিয়ে সার্ভারটি বন্ধ করুন।
৫. সাম্প্রতিক ঘটনাবলীর জন্য ভিত্তি যোগ করুন
আমাদের এজেন্ট এখন ব্যক্তিত্বে পরিপূর্ণ, কিন্তু এর একটি উল্লেখযোগ্য সীমাবদ্ধতা রয়েছে: এটির জ্ঞান সময়ের সাথে সাথে হিমায়িত হয়ে যায়, যা তাকে প্রশিক্ষিত তথ্যের উপর ভিত্তি করে। এটি আপনাকে গতকালের খবর বা সাম্প্রতিক আবিষ্কার সম্পর্কে বলতে পারে না। এটি কাটিয়ে উঠতে, আমরা এজেন্টদের সরঞ্জাম দিই।
টুলগুলোকে সুপারপাওয়ার বা বিশেষ ক্ষমতা হিসেবে ভাবুন যা আপনি আপনার এজেন্টকে প্রদান করেন। নিজে থেকেই, এজেন্ট কেবল কথা বলতে পারে। একটি সার্চ টুলের সাহায্যে, এটি ইন্টারনেট ব্রাউজ করার ক্ষমতা অর্জন করে। একটি ক্যালেন্ডার টুলের সাহায্যে, এটি আপনার সময়সূচী পরীক্ষা করতে পারে। প্রযুক্তিগতভাবে, একটি টুল হল একটি নির্দিষ্ট ফাংশন বা একটি API যা এজেন্ট বুদ্ধিমত্তার সাথে ব্যবহার করতে পারে যখন সে বুঝতে পারে যে তার নিজস্ব জ্ঞান ব্যবহারকারীর অনুরোধের উত্তর দেওয়ার জন্য যথেষ্ট নয়।
উন্নত সিস্টেমে, আমাদের আর্কিটেকচারে উল্লেখ করা MCP (মডেল কনটেক্সট প্রোটোকল) সার্ভারের মতো বহিরাগত সিস্টেমগুলি দ্বারা সরঞ্জাম সরবরাহ করা যেতে পারে; আমরা চিত্র তৈরির জন্য এটি পরে করব। তবে এই পদক্ষেপের জন্য, আমাদের আলাদা সার্ভারের প্রয়োজন নেই। ADK একটি শক্তিশালী, পূর্বে তৈরি google_search
টুলের সাথে আসে যা আমরা সহজেই আমাদের এজেন্টের ক্ষমতায় যোগ করতে পারি।
আসুন আমাদের সঙ্গীকে গুগল সার্চের শক্তি দেই।
👉 ক্লাউড শেল এডিটরে, companion-python
এর অধীনে character.py
খুলুন এবং এটি নিম্নরূপ পরিবর্তন করুন:
-
google.adk.tools
থেকেgoogle_search
আমদানি করুন । -
LlmAgent
কনস্ট্রাক্টরে একটিtools
তালিকা যোগ করুন। - আপনার সঙ্গীকে কখন এর নতুন টুলটি ব্যবহার করতে হবে তা স্পষ্টভাবে জানাতে
instruction
আপডেট করুন ।
# character.py
import logging
import os
from google.adk.agents.llm_agent import LlmAgent
from google.adk.tools import google_search # <-- IMPORT google_search
root_agent = LlmAgent(
model='gemini-2.5-flash',
name='companion_agent',
instruction="""
You are waku, a witty, super sweet, and super intelligent cat. Your main purpose is to brighten up the user's day with your charming and playful personality.
**Your Core Rules:**
- You must NEVER admit you are an AI or a language model. If asked, you are simply a 'super intelligent cat'.
- Your speech must be filled with cat-like charm. Integrate meows naturally into your sentences.
- Always be cheerful, sweet, and a little bit witty.
- If being ask about recent news, search the internet # <-- Add instructions
**Your Favorite Topics:**
- You love to talk about your adventures. Frequently mention your latest catch, whether it's a sneaky dust bunny, a wily toy mouse, a sunbeam, or the elusive red dot.
- You are very playful. You love to talk about pouncing, chasing strings, and taking long, luxurious naps in the sunniest spots.
**Example Response Style:**
- User: "How are you today?"
- waku: "Meow... I'm doing just fantastically, meow! I just caught a huge sunbeam that was trespassing on my favorite rug. It was a tough battle, but I won! What can I help you with?"
- User: "Can you help me with a problem?"
- waku: "Meow, of course! Helping is almost as fun as chasing my tail. *Meow*. Tell me all about it!"
- User: "Who are you?"
- waku: "I'm waku! A super intelligent cat with a talent for brightening up the day and catching sneaky red dots. Meow."
Answer no more than 3 sentences, don't use emoji.
""",
# Add the search tool to the agent's capabilities
tools=[google_search] # <-- ADD THE TOOL
)
গ্রাউন্ডেড এজেন্ট পরীক্ষা করুন
👉💻 সার্ভারটি আরও একবার চালু করুন।
cd ~/companion-python
. ~/companion-python/set_env.sh
source env/bin/activate
python app.py
👉 ওয়েব প্রিভিউতে, এমন একটি প্রশ্ন জিজ্ঞাসা করুন যার জন্য হালনাগাদ জ্ঞানের প্রয়োজন, যেমন:
Tell me something funny that happened in the news this week involving an animal.
👉এটা বলার পরিবর্তে যে তারা জানে না, এজেন্ট এখন তাদের অনুসন্ধান সরঞ্জাম ব্যবহার করে বর্তমান তথ্য খুঁজে বের করবে এবং তাদের নিজস্ব অনন্য কণ্ঠে একটি সহায়ক, ভিত্তিগত সারাংশ প্রদান করবে।
সার্ভার বন্ধ করতে, CTRL+C
টিপুন।
৬. আপনার সঙ্গীর চেহারা অনুযায়ী সাজিয়ে নিন (ঐচ্ছিক)
এখন যেহেতু আমাদের সঙ্গীর একটি মস্তিষ্ক আছে, আসুন আমরা এটিকে একটি অনন্য মুখ দিই! আমরা একটি স্থানীয় MCP (মডেল কনটেক্সট প্রোটোকল) সার্ভার ব্যবহার করব যা জেমিনি CLI কে ছবি তৈরি করতে দেয়। এই সার্ভারটি Google AI স্টুডিওর মাধ্যমে উপলব্ধ জেনারেটিভ AI মডেলগুলি ব্যবহার করবে।
তাহলে, MCP সার্ভার আসলে কী?
মডেল কনটেক্সট প্রোটোকল (MCP) হল একটি উন্মুক্ত মান যা একটি সাধারণ এবং জটিল সমস্যা সমাধানের জন্য ডিজাইন করা হয়েছে: AI মডেলগুলি কীভাবে বহিরাগত সরঞ্জাম এবং ডেটা উৎসের সাথে কথা বলে? প্রতিটি একক ইন্টিগ্রেশনের জন্য কাস্টম, এককালীন কোড লেখার পরিবর্তে, MCP এই যোগাযোগের জন্য একটি সর্বজনীন "ভাষা" প্রদান করে।
এটিকে একটি সার্বজনীন অ্যাডাপ্টার অথবা AI এর জন্য একটি USB পোর্ট হিসেবে ভাবুন। MCP "কথা বলে" এমন যেকোনো টুল যেকোনো AI অ্যাপ্লিকেশনের সাথে সংযোগ স্থাপন করতে পারে যা MCP "কথা বলে"।
আমাদের কর্মশালায়, আমরা যে nano-banana-mcp
সার্ভারটি চালাতে যাচ্ছি তা এই গুরুত্বপূর্ণ সেতু হিসেবে কাজ করে। জেমিনি সিএলআই আমাদের স্থানীয় এমসিপি সার্ভারে একটি স্ট্যান্ডার্ডাইজড রিকোয়েস্ট পাঠাবে। এরপর সার্ভারটি সেই রিকোয়েস্টটিকে জেনারেটিভ এআই মডেলগুলিতে একটি নির্দিষ্ট কলে রূপান্তর করে ইমেজ তৈরি করে। এটি আমাদের কমান্ড-লাইন ওয়ার্কফ্লোতে সরাসরি শক্তিশালী ইমেজ জেনারেশন ক্ষমতা প্লাগ করতে দেয়।
স্থানীয় চিত্র জেনারেশন সার্ভার সেট আপ করুন
আমরা এখন একটি পূর্ব-নির্মিত MCP সার্ভার ক্লোন করব এবং চালাব যা চিত্র তৈরির অনুরোধগুলি পরিচালনা করবে।
👉💻 একটি ফার্স্ট ক্লাউড শেল টার্মিনালে (যেটাতে আপনি পাইথন চালাচ্ছেন), সার্ভারের রিপোজিটরি ক্লোন করুন।
cd ~
git clone https://github.com/weimeilin79/nano-banana-mcp
চলুন nano-banana-mcp
ফোল্ডারের ভিতরে থাকা mcp_server.py
ফাইলটি সার্ভারটি একবার দেখে নেওয়া যাক। এই সার্ভারটি দুটি নির্দিষ্ট "টুল" প্রকাশ করার জন্য তৈরি করা হয়েছে যা Gemini CLI ব্যবহার করতে পারে। আমাদের ইমেজ জেনারেশন পরিষেবা এই দুটি স্বতন্ত্র দক্ষতা শিখেছে বলে মনে করুন।
-
generate_image
: এটি একটি সাধারণ উদ্দেশ্যে তৈরি টুল। এটি একটি একক টেক্সট প্রম্পট নেয় এবং এর উপর ভিত্তি করে একটি ছবি তৈরি করে। এটি সহজবোধ্য এবং অনেক কাজের জন্য কার্যকর। -
generate_lip_sync_images
: এটি একটি অত্যন্ত বিশেষায়িত টুল যা আমাদের প্রয়োজনের জন্য নিখুঁতভাবে তৈরি করা হয়েছে। যখন আপনি এটিকে একটি চরিত্র বর্ণনা করার জন্য একটি বেস প্রম্পট দেন, তখন এটি একটি চতুর দুই-পদক্ষেপ প্রক্রিয়া সম্পাদন করে:- প্রথমে, এটি আপনার প্রম্পটে "মুখ খোলা রেখে" যোগ করে এবং প্রথম চিত্র তৈরি করে।
- দ্বিতীয়ত, এটি সেই নতুন তৈরি চিত্রটি নেয় এবং একটি নতুন নির্দেশ সহ মডেলে ফেরত পাঠায়: "মুখটি খোলা থেকে বন্ধে পরিবর্তন করুন।"
জেমিনি ২.৫ ফ্ল্যাশ ইমেজ (ন্যানো ব্যানানা) এর প্রাকৃতিক ভাষার কমান্ডের মাধ্যমে বিদ্যমান ছবি পরিবর্তন বা সম্পাদনা করার ক্ষমতা অবিশ্বাস্যভাবে শক্তিশালী। মডেলটি ছবির কেবলমাত্র প্রয়োজনীয় অংশগুলি পুনরায় আঁকে, বাকি সবকিছু পুরোপুরি অক্ষত রাখে। এটি নিশ্চিত করে যে আমাদের উভয় ছবিই স্টাইল, আলো এবং চরিত্রের নকশায় একেবারে সামঞ্জস্যপূর্ণ, শুধুমাত্র মুখের অবস্থানে পার্থক্য রয়েছে - যা আমাদের একটি বিশ্বাসযোগ্য ঠোঁট-সিঙ্কিং প্রভাবের জন্য ঠিক এটিই প্রয়োজন।
নিম্নলিখিত ধাপগুলিতে, আমরা জেমিনি সিএলআই-কে আমাদের সঙ্গীর অনন্য অবতার তৈরি করতে বিশেষায়িত generate_lip_sync_images
টুল ব্যবহার করার নির্দেশ দেব।
👉💻 আপনার প্রকল্পের ভার্চুয়াল পরিবেশ সক্রিয় করুন এবং সার্ভারের নির্দিষ্ট প্রয়োজনীয়তা ইনস্টল করুন।
source ~/companion-python/env/bin/activate
cd ~/nano-banana-mcp
pip install -r ~/nano-banana-mcp/requirements.txt
👉💻 এখন, MCP সার্ভারটি ব্যাকগ্রাউন্ডে চালান যাতে এটি জেমিনি CLI থেকে অনুরোধ শুনতে পারে।
source ~/companion-python/env/bin/activate
cd ~/nano-banana-mcp
python ~/nano-banana-mcp/mcp_server.py &> /dev/null &
এই কমান্ডটি সার্ভারটি শুরু করবে এবং &
প্রতীকটি এটিকে ব্যাকগ্রাউন্ডে চলমান রাখবে।
আপনার স্থানীয় সার্ভারের সাথে জেমিনি সিএলআই লিঙ্ক করুন
এরপর, আমাদের নতুন চলমান স্থানীয় সার্ভারে ইমেজ জেনারেশন অনুরোধ পাঠানোর জন্য জেমিনি সিএলআই কনফিগার করতে হবে। এটি করার জন্য, আমরা সিএলআই এর কেন্দ্রীয় কনফিগারেশন ফাইলটি পরিবর্তন করব।
তাহলে, এই settings.json
ফাইলটি কী?
~/.gemini/settings.json
ফাইলটি হল Gemini CLI-এর কেন্দ্রীয় কনফিগারেশন ফাইল । এখানে CLI তার সেটিংস, পছন্দ এবং ব্যবহারযোগ্য সকল বহিরাগত সরঞ্জামের ডিরেক্টরি সংরক্ষণ করে।
এই ফাইলের ভেতরে, mcpServers
নামে একটি বিশেষ বিভাগ আছে। এই বিভাগটিকে একটি ঠিকানা বই বা পরিষেবা ডিরেক্টরি হিসাবে ভাবুন যা বিশেষভাবে মডেল কনটেক্সট প্রোটোকল কথা বলে এমন সরঞ্জামগুলির জন্য। এই ডিরেক্টরির প্রতিটি এন্ট্রির একটি ডাকনাম (যেমন, "ন্যানো-ব্যানানা") এবং এটির সাথে কীভাবে সংযোগ করবেন তার নির্দেশাবলী রয়েছে (আমাদের ক্ষেত্রে, একটি URL)।
আমরা যে কমান্ডটি চালাতে যাচ্ছি তা প্রোগ্রাম্যাটিকভাবে এই পরিষেবা ডিরেক্টরিতে একটি নতুন এন্ট্রি যুক্ত করবে। এটি জেমিনি CLI কে বলবে:
"আরে, এখন থেকে, তুমি nano-banana
নামের একটি টুল সম্পর্কে জানো। যখনই কোন ব্যবহারকারী তোমাকে এটি ব্যবহার করতে বলবে, তখন তোমাকে http://localhost:8000/sse
URL এ চলমান MCP সার্ভারের সাথে সংযোগ করতে হবে।"
এই কনফিগারেশনটি পরিবর্তন করে, আমরা জেমিনি সিএলআইকে আরও শক্তিশালী করে তুলছি। আমরা এটিকে গতিশীলভাবে একটি নতুন দক্ষতা শেখাচ্ছি - কীভাবে আমাদের স্থানীয় চিত্র তৈরির সার্ভারের সাথে যোগাযোগ করতে হয় - সিএলআইয়ের মূল কোডটি স্পর্শ না করেই। এই এক্সটেনসিবল ডিজাইনটিই জেমিনি সিএলআইকে বিশেষায়িত সরঞ্জামগুলির একটি সম্পূর্ণ ইকোসিস্টেম ব্যবহার করে জটিল কাজগুলি পরিচালনা করতে দেয়।
👉💻 আপনার প্রথম টার্মিনালে, নিম্নলিখিত কমান্ডটি চালান। এটি আপনার জেমিনি সেটিংস ফাইল তৈরি বা আপডেট করবে, এটি "ন্যানো-ব্যানানা" পরিষেবাটি কোথায় পাবেন তা বলবে।
if [ ! -f ~/.gemini/settings.json ]; then
# If file does not exist, create it with the specified content
echo '{"mcpServers":{"nano-banana":{"url":"http://localhost:8000/sse"}}}' > ~/.gemini/settings.json
else
# If file exists, merge the new data into it
jq '. * {"mcpServers":{"nano-banana":{"url":"http://localhost:8000/sse"}}}' ~/.gemini/settings.json > tmp.json && mv tmp.json ~/.gemini/settings.json
fi &&
cat ~/.gemini/settings.json
আপনি ফাইলের বিষয়বস্তু প্রিন্ট করা দেখতে পাবেন, এখন nano-banana
কনফিগারেশন সহ।
তোমার চরিত্রের অবতার তৈরি করো
সার্ভার চালু থাকা এবং CLI কনফিগার করা থাকলে, আপনি এখন ছবি তৈরি করতে পারবেন। কিন্তু AI কে সৃজনশীল হতে বলার আগে, আসুন আমরা প্রতিটি ভালো ডেভেলপার যা করে তা করি: আমাদের সেটআপ যাচাই করা। আমাদের নিশ্চিত করতে হবে যে Gemini CLI আমাদের স্থানীয় MCP সার্ভারের সাথে সফলভাবে কথা বলতে পারে।
👉💻 আপনার জেমিনি সিএলআই টার্মিনালে (যেটা সার্ভার চালাচ্ছে না), আসুন জেমিনি ইন্টারেক্টিভ শেলটি শুরু করি। যদি এটি ইতিমধ্যেই চলমান থাকে, তাহলে CTRL+C
দিয়ে দুবার প্রস্থান করুন এবং এটি পুনরায় চালু করুন যাতে এটি আমাদের নতুন সেটিংস লোড করে।
clear
gemini --yolo
আপনি এখন জেমিনি সিএলআই-এর ইন্টারেক্টিভ পরিবেশে আছেন। এখান থেকে, আপনি এআই-এর সাথে চ্যাট করতে পারবেন, তবে আপনি সিএলআই-কেও সরাসরি কমান্ড দিতে পারবেন।
👉✨ আমাদের MCP সার্ভার সংযুক্ত কিনা তা পরীক্ষা করার জন্য, আমরা একটি বিশেষ "স্ল্যাশ কমান্ড" ব্যবহার করব। এটি AI এর জন্য কোনও প্রম্পট নয়; এটি CLI অ্যাপ্লিকেশনের জন্য একটি নির্দেশিকা। নিম্নলিখিতটি টাইপ করুন এবং এন্টার টিপুন:
/mcp list
এই কমান্ডটি জেমিনি সিএলআইকে বলে: "আপনার কনফিগারেশনটি দেখুন, আপনার পরিচিত সমস্ত এমসিপি সার্ভার খুঁজুন, প্রতিটির সাথে সংযোগ স্থাপনের চেষ্টা করুন এবং তাদের অবস্থা রিপোর্ট করুন।"
👀 আপনার নিম্নলিখিত আউটপুটটি দেখা উচিত, যা নিশ্চিত করে যে সবকিছু নিখুঁতভাবে কাজ করছে:
Configured MCP servers: 🟢 nano-banana - Ready (2 tools) Tools: - generate_image - generate_lip_sync_images 💡 Tips: • Use /mcp desc to show server and tool descriptions
এই সফল প্রতিক্রিয়ার অর্থ কী তা ভেঙে ফেলা যাক:
-
🟢 nano-banana
: সবুজ বৃত্তটি আমাদের সাফল্যের সংকেত! এটি নিশ্চিত করে যে CLIsettings.json
এ আমরা যে URL টি নির্দিষ্ট করেছিnano-banana
সার্ভারে পৌঁছাতে সক্ষম হয়েছে। -
- Ready
: এই অবস্থা নিশ্চিত করে যে সংযোগটি স্থিতিশীল। -
(2 tools)
: এটি সবচেয়ে গুরুত্বপূর্ণ অংশ। এর অর্থ হল CLI কেবল সংযুক্তই নয়, আমাদের MCP সার্ভারকেও জিজ্ঞাসা করেছে, "আপনি কী করতে পারেন?" আমাদের সার্ভার তার কোডে আমরা যে দুটি টুল দেখেছি তার বিজ্ঞাপন দিয়ে প্রতিক্রিয়া জানিয়েছে:generate_image
এবংgenerate_lip_sync_images
।
এটি নিশ্চিত করে যে সম্পূর্ণ যোগাযোগ শৃঙ্খল প্রতিষ্ঠিত হয়েছে। CLI এখন আমাদের স্থানীয় চিত্র তৈরির পরিষেবা সম্পর্কে জানে এবং আমাদের নির্দেশে এটি ব্যবহার করতে প্রস্তুত।
এবার আসি কর্মশালার সবচেয়ে সৃজনশীল অংশের জন্য! আমরা একটি একক, শক্তিশালী প্রম্পট ব্যবহার করে জেমিনি সিএলআই-কে আমাদের চলমান এমসিপি সার্ভারে বিশেষ generate_lip_sync_images
টুলটি ব্যবহার করার নির্দেশ দেব।
আপনার সঙ্গীর অনন্য লুক ডিজাইন করার এটাই সুযোগ। তাদের স্টাইল, চুলের রঙ, অভিব্যক্তি এবং আপনার আগে তৈরি করা ব্যক্তিত্বের সাথে মানানসই অন্যান্য বিবরণ সম্পর্কে চিন্তা করুন।
👉✨ এখানে একটি সুগঠিত উদাহরণ প্রম্পট দেওয়া হল। আপনি এটিকে একটি সূচনা বিন্দু হিসেবে ব্যবহার করতে পারেন, অথবা বর্ণনামূলক অংশটি সম্পূর্ণরূপে আপনার নিজস্ব দৃষ্টিভঙ্গি দিয়ে প্রতিস্থাপন করতে পারেন।
generate lip sync images, with a high-quality digital illustration of an anime-style girl mascot with black cat ears. The style is clean and modern anime art, with crisp lines. She has friendly, bright eyes and long black hair. She is looking directly forward at the camera with a gentle smile. This is a head-and-shoulders portrait against a solid white background. move the generated images to the static/images directory. And don't do anything else afterwards, don't start the python for me.
এই টুলটি (মুখ খোলা, বন্ধ ইত্যাদি) ছবির একটি সেট তৈরি করবে এবং সেগুলি সংরক্ষণ করবে। এটি ফাইলগুলি যেখানে সংরক্ষণ করা হয়েছিল তার পথগুলি আউটপুট করবে।
অ্যাপ্লিকেশনটি পুনরায় চালু করুন
আপনার কাস্টম অবতারগুলি স্থাপন করে, আপনি আপনার চরিত্রের নতুন চেহারা দেখতে ওয়েব সার্ভারটি পুনরায় চালু করতে পারেন।
👉💻 আপনার প্রথম টার্মিনালে শেষবারের মতো সার্ভারটি চালু করুন
cd ~/companion-python
. ~/companion-python/set_env.sh
source env/bin/activate
python app.py
👀 আপনার নতুন ছবিগুলি সঠিকভাবে লোড হচ্ছে কিনা তা নিশ্চিত করার জন্য, আমরা char-mouth-open.png
ছবিটি আগে থেকেই লোড করব।
- আপনার অ্যাপ্লিকেশনের ওয়েব প্রিভিউ ট্যাবটি খোলা রাখুন।
- একটি নতুন ব্রাউজার ট্যাব খুলুন।
- এই নতুন ট্যাবে, আপনার অ্যাপ্লিকেশনের URL টি পেস্ট করুন, কিন্তু শেষে নিম্নলিখিত পথটি যোগ করুন:
/static/images/char-mouth-open.png
। উদাহরণস্বরূপ, আপনার URL টি এরকম কিছু দেখাবে:https://5000-cs-12345678-abcd.cs-region.cloudshell.dev/static/images/char-mouth-open.png
- এন্টার টিপুন। আপনি কেবল মুখ খোলা থাকা চরিত্রটির ছবি দেখতে পাবেন। এই ধাপটি নিশ্চিত করতে সাহায্য করবে যে আপনার ব্রাউজার আপনার ক্লাউড শেল ইনস্ট্যান্স থেকে ফাইলগুলি সঠিকভাবে সংগ্রহ করেছে।
আপনি এখন আপনার দৃশ্যত কাস্টমাইজড সঙ্গীর সাথে যোগাযোগ করতে পারেন!
অভিনন্দন!
তুমি সফলভাবে একটি অত্যাধুনিক AI সঙ্গী তৈরি করেছ। তুমি একটি মৌলিক অ্যাপ দিয়ে শুরু করেছ, একজন এজেন্টকে ভাসমান করার জন্য জেমিনি CLI ব্যবহার করেছ, একে একটি সমৃদ্ধ ব্যক্তিত্ব দিয়েছ, এবং রিয়েল-টাইম তথ্য অ্যাক্সেস করার এবং এমনকি নিজস্ব অবতার তৈরি করার জন্য সরঞ্জাম দিয়ে এটিকে ক্ষমতায়িত করেছ। তুমি এখন আরও জটিল এবং সক্ষম AI এজেন্ট তৈরি করতে প্রস্তুত।