কোডল্যাব - ADK দিয়ে গ্রাফআরএজি এজেন্ট তৈরি করা

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

এই কোডল্যাবে, আপনি একটি অত্যাধুনিক মাল্টি-এজেন্ট বিনিয়োগ গবেষণা সিস্টেম তৈরি করবেন যা গুগলের এজেন্ট ডেভেলপমেন্ট কিট (ADK), Neo4j গ্রাফ ডেটাবেস এবং মডেল কনটেক্সট প্রোটোকল (MCP) টুলবক্সের শক্তিকে একত্রিত করে। এই হ্যান্ডস-অন টিউটোরিয়ালটি দেখায় কীভাবে এমন ইন্টেলিজেন্ট এজেন্ট তৈরি করতে হয়, যারা গ্রাফ সম্পর্কের মাধ্যমে ডেটার প্রেক্ষাপট বুঝতে পারে এবং অত্যন্ত নির্ভুল কোয়েরি প্রতিক্রিয়া প্রদান করে।

কেন GraphRAG + মাল্টি-এজেন্ট সিস্টেম?

GraphRAG (গ্রাফ-ভিত্তিক পুনরুদ্ধার-বর্ধিত প্রজন্ম) নলেজ গ্রাফের সমৃদ্ধ সম্পর্ক কাঠামোকে কাজে লাগিয়ে প্রচলিত RAG পদ্ধতিগুলোকে উন্নত করে। শুধু একই ধরনের ডকুমেন্ট খোঁজার পরিবর্তে, GraphRAG এজেন্টরা নিম্নলিখিত কাজগুলো করতে পারে:

  • সত্তাগুলোর মধ্যে জটিল সম্পর্কগুলো অতিক্রম করুন
  • গ্রাফ কাঠামোর মাধ্যমে প্রেক্ষাপট বুঝুন
  • সংযুক্ত ডেটার উপর ভিত্তি করে ব্যাখ্যাযোগ্য ফলাফল প্রদান করুন
  • নলেজ গ্রাফ জুড়ে মাল্টি-হপ রিজনিং কার্যকর করুন।

মাল্টি-এজেন্ট সিস্টেম আপনাকে নিম্নলিখিত সুবিধাগুলো দেয়:

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

আপনি যা তৈরি করবেন

আপনি একটি সম্পূর্ণ বিনিয়োগ গবেষণা সিস্টেম তৈরি করবেন, যার বৈশিষ্ট্যগুলো হলো:

  1. গ্রাফ ডাটাবেস এজেন্ট : সাইফার কোয়েরি সম্পাদন করে এবং নিও৪জে স্কিমা বোঝে।
  2. বিনিয়োগকারী গবেষণা এজেন্ট : বিনিয়োগকারীদের সম্পর্ক এবং বিনিয়োগ পোর্টফোলিও আবিষ্কার করে
  3. বিনিয়োগ গবেষণা এজেন্ট : এমসিপি টুলের মাধ্যমে ব্যাপক নলেজ গ্রাফ অ্যাক্সেস করে।
  4. রুট এজেন্ট : সকল সাব-এজেন্টকে বুদ্ধিমত্তার সাথে পরিচালনা করে

সিস্টেমটি নিম্নলিখিত জটিল প্রশ্নগুলোর উত্তর দেবে:

  • ইউটিউবের প্রধান প্রতিযোগী কারা?
  • ২০২৩ সালের জানুয়ারিতে কোন কোম্পানিগুলো ইতিবাচক মনোভাব নিয়ে উল্লিখিত হয়েছে?
  • বাইটড্যান্সে কারা বিনিয়োগ করেছে এবং তারা আর কোথায় কোথায় বিনিয়োগ করেছে?

স্থাপত্যের সংক্ষিপ্ত বিবরণ

26c67ab72ef077a4.jpeg

এই কোডল্যাবের মাধ্যমে, আপনি এন্টারপ্রাইজ-গ্রেড গ্রাফর‍্যাগ এজেন্ট তৈরির ধারণাগত ভিত্তি এবং এর বাস্তব প্রয়োগ উভয়ই শিখবেন।

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

  • গুগলের এজেন্ট ডেভেলপমেন্ট কিট (ADK) ব্যবহার করে কীভাবে মাল্টি-এজেন্ট সিস্টেম তৈরি করবেন
  • GraphRAG অ্যাপ্লিকেশনের জন্য ADK-এর সাথে Neo4j গ্রাফ ডেটাবেস কীভাবে একীভূত করবেন
  • পূর্ব-যাচাইকৃত ডাটাবেস কোয়েরির জন্য মডেল কনটেক্সট প্রোটোকল (MCP) টুলবক্স কীভাবে প্রয়োগ করবেন
  • ইন্টেলিজেন্ট এজেন্টদের জন্য কীভাবে কাস্টম টুল এবং ফাংশন তৈরি করবেন
  • এজেন্ট হায়ারার্কি এবং অর্কেস্ট্রেশন প্যাটার্ন কীভাবে ডিজাইন করবেন
  • সর্বোত্তম কর্মক্ষমতার জন্য এজেন্টের নির্দেশাবলী কীভাবে গঠন করতে হয়
  • একাধিক এজেন্টের মিথস্ক্রিয়া কার্যকরভাবে ডিবাগ করার উপায়

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

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

সকল স্তরের (শিক্ষানবিশ সহ) ডেভেলপারদের জন্য ডিজাইন করা এই কোডল্যাবটির নমুনা অ্যাপ্লিকেশনে পাইথন এবং নিও৪জে (Neo4j) ব্যবহার করা হয়েছে। যদিও পাইথন এবং গ্রাফ ডেটাবেস সম্পর্কে প্রাথমিক ধারণা থাকলে সহায়ক হতে পারে, তবে ধারণাগুলো বুঝতে বা অনুসরণ করতে কোনো পূর্ব অভিজ্ঞতার প্রয়োজন নেই।

২. গ্রাফর‍্যাগ এবং মাল্টি-এজেন্ট সিস্টেম বোঝা

বাস্তবায়নে যাওয়ার আগে, চলুন এই সিস্টেমের চালিকাশক্তি মূল ধারণাগুলো বুঝে নিই।

Neo4j হলো একটি অগ্রণী নেটিভ গ্রাফ ডেটাবেস যা ডেটাকে নোড (সত্তা) এবং সম্পর্ক (সত্তাগুলোর মধ্যে সংযোগ)-এর একটি নেটওয়ার্ক হিসেবে সংরক্ষণ করে। এটি এমন সব ব্যবহারের ক্ষেত্রে আদর্শ যেখানে সংযোগ বোঝাটা অত্যন্ত গুরুত্বপূর্ণ — যেমন সুপারিশ, জালিয়াতি শনাক্তকরণ, নলেজ গ্রাফ এবং আরও অনেক কিছু। রিলেশনাল বা ডকুমেন্ট-ভিত্তিক ডেটাবেসগুলো অনমনীয় টেবিল বা শ্রেণিবদ্ধ কাঠামোর উপর নির্ভর করলেও, Neo4j-এর নমনীয় গ্রাফ মডেল জটিল ও আন্তঃসংযুক্ত ডেটার স্বজ্ঞামূলক এবং কার্যকর উপস্থাপনার সুযোগ করে দেয়।

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

উদাহরণস্বরূপ, একটি মুভি ডেটাসেটে:

  • একটি নোড একটি Movie , Actor বা Director প্রতিনিধিত্ব করতে পারে।
  • একটি সম্পর্ক ACTED_IN বা DIRECTED হতে পারে।

b340d5e06fac5f47.jpeg

এই কাঠামোটি আপনাকে সহজেই এই ধরনের প্রশ্ন জিজ্ঞাসা করতে সক্ষম করে:

  • এই অভিনেতা কোন কোন চলচ্চিত্রে অভিনয় করেছেন?
  • ক্রিস্টোফার নোলানের সাথে কারা কাজ করেছেন?
  • একই অভিনেতা বা জনরার উপর ভিত্তি করে সাদৃশ্যপূর্ণ সিনেমাগুলো কী কী?

GraphRAG কী?

রিট্রিভাল-অগমেন্টেড জেনারেশন (RAG) বাহ্যিক উৎস থেকে প্রাসঙ্গিক তথ্য পুনরুদ্ধার করে LLM প্রতিক্রিয়াগুলিকে উন্নত করে। প্রচলিত RAG সাধারণত:

  1. ভেক্টরে নথি এম্বেড করে
  2. সদৃশ ভেক্টরের জন্য অনুসন্ধান
  3. সংগৃহীত নথিগুলো এলএলএম-এর কাছে হস্তান্তর করে।

GraphRAG নলেজ গ্রাফ ব্যবহার করে এটিকে আরও প্রসারিত করে:

  1. সত্তা এবং সম্পর্ক অন্তর্ভুক্ত করে
  2. গ্রাফ সংযোগগুলি অতিক্রম করে
  3. মাল্টি-হপ প্রাসঙ্গিক তথ্য পুনরুদ্ধার করে
  4. সুসংগঠিত ও ব্যাখ্যাযোগ্য ফলাফল প্রদান করে

এআই এজেন্টদের জন্য গ্রাফ কেন প্রয়োজন?

এই প্রশ্নটি বিবেচনা করুন: "ইউটিউবের প্রতিযোগী কারা, এবং কোন বিনিয়োগকারীরা ইউটিউব ও এর প্রতিযোগী উভয়কেই অর্থায়ন করেছে?"

একটি ঐতিহ্যবাহী RAG পদ্ধতিতে যা ঘটে:

  • ইউটিউবের প্রতিযোগীদের সম্পর্কে নথিপত্রের অনুসন্ধান
  • বিনিয়োগকারীর তথ্যের জন্য আলাদাভাবে অনুসন্ধান করা হয়।
  • এই দুটি তথ্যকে সংযুক্ত করতে সংগ্রাম করে।
  • অন্তর্নিহিত সম্পর্কগুলি বাদ পড়তে পারে

GraphRAG পদ্ধতিতে যা ঘটে:

MATCH (org:Organization {name: "OpenAI"})-[:HAS_COMPETITOR]-(competitor:Organization)
MATCH (org)-[:HAS_INVESTOR]->(investor:Person)
MATCH (competitor)-[:HAS_INVESTOR]->(investor)
RETURN org, competitor, investor

গ্রাফটি স্বাভাবিকভাবেই সম্পর্কগুলো উপস্থাপন করে, যা মাল্টি-হপ কোয়েরিগুলোকে সহজ ও কার্যকর করে তোলে।

ADK-তে মাল্টি-এজেন্ট সিস্টেম

এজেন্ট ডেভেলপমেন্ট কিট (ADK) হলো প্রোডাকশন-গ্রেড এআই এজেন্ট তৈরি ও স্থাপনের জন্য গুগলের একটি ওপেন-সোর্স ফ্রেমওয়ার্ক। এটি মাল্টি-এজেন্ট অর্কেস্ট্রেশন, টুল ইন্টিগ্রেশন এবং ওয়ার্কফ্লো ম্যানেজমেন্টের জন্য সহজবোধ্য মৌলিক উপাদান সরবরাহ করে, যার ফলে বিশেষায়িত এজেন্টগুলোকে একত্রিত করে অত্যাধুনিক সিস্টেম তৈরি করা সহজ হয়। ADK, Gemini-এর সাথে নির্বিঘ্নে কাজ করে এবং Cloud Run, Kubernetes বা যেকোনো ইনফ্রাস্ট্রাকচারে স্থাপন সমর্থন করে।

এজেন্ট ডেভেলপমেন্ট কিট (ADK) একাধিক এজেন্ট সিস্টেম তৈরির জন্য প্রয়োজনীয় উপাদান সরবরাহ করে:

  1. এজেন্টদের স্তরবিন্যাস:
# Root agent coordinates specialized agents
root_agent = LlmAgent(
    name="RootAgent",
    sub_agents=[
        graph_db_agent,
        investor_agent,
        investment_agent
    ]
)
  1. বিশেষায়িত এজেন্ট: প্রত্যেক এজেন্টের আছে
  • নির্দিষ্ট সরঞ্জাম: এটি যে ফাংশনগুলো কল করতে পারে
  • সুস্পষ্ট নির্দেশনা: এর ভূমিকা ও সক্ষমতা
  • বিশেষ জ্ঞান: কোনো নির্দিষ্ট ক্ষেত্রের জ্ঞান
  1. অর্কেস্ট্রেশন প্যাটার্ন:
  • ক্রমিক: এজেন্টদের ক্রমানুসারে কার্যকর করুন
  • সমান্তরাল: একাধিক এজেন্ট একই সাথে চালান
  • শর্তসাপেক্ষ: কোয়েরির ধরনের উপর ভিত্তি করে রুট নির্ধারণ

ডেটাবেসের জন্য এমসিপি টুলবক্স

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

ঐতিহ্যগত পদ্ধতি:

# LLM generates query (may be incorrect/unsafe)
query = llm.generate("SELECT * FROM users WHERE...")
db.execute(query)  # Risk of errors/SQL injection

এমসিপি পদ্ধতি:

# Pre-validated query definition
- name: get_industries
  description: Fetch all industries from database
  query: |
    MATCH (i:Industry)
    RETURN i.name, i.id

সুবিধাসমূহ:

  • বিশেষজ্ঞদের দ্বারা পূর্ব-যাচাইকৃত
  • ইনজেকশন আক্রমণ থেকে নিরাপদ
  • কর্মক্ষমতা অপ্টিমাইজ করা হয়েছে
  • কেন্দ্রীয়ভাবে পরিচালিত
  • এজেন্টদের মধ্যে পুনরায় ব্যবহারযোগ্য

সবকিছু একসাথে করা

GraphRAG, ADK-এর Multi-Agent Framework এবং MCP-এর সমন্বয়ে একটি শক্তিশালী সিস্টেম তৈরি হয়:

  1. রুট এজেন্ট ব্যবহারকারীর কোয়েরি গ্রহণ করে
  2. কোয়েরির ধরনের উপর ভিত্তি করে বিশেষায়িত এজেন্টের কাছে যাওয়ার পথ।
  3. এজেন্ট নিরাপদে ডেটা আনতে এমসিপি টুল ব্যবহার করে
  4. গ্রাফ কাঠামো সমৃদ্ধ প্রেক্ষাপট প্রদান করে
  5. এলএলএম ভিত্তিযুক্ত ও ব্যাখ্যাযোগ্য প্রতিক্রিয়া তৈরি করে।

এখন যেহেতু আমরা স্থাপত্যটি বুঝতে পেরেছি, চলুন নির্মাণ শুরু করা যাক!

৩. গুগল ক্লাউড প্রজেক্ট সেটআপ করুন

একটি প্রকল্প তৈরি করুন

  1. গুগল ক্লাউড কনসোলের প্রজেক্ট সিলেক্টর পেজে, একটি গুগল ক্লাউড প্রজেক্ট নির্বাচন করুন বা তৈরি করুন।
  2. আপনার ক্লাউড প্রোজেক্টের জন্য বিলিং চালু আছে কিনা তা নিশ্চিত করুন। কোনো প্রোজেক্টে বিলিং চালু আছে কিনা তা কীভাবে পরীক্ষা করবেন, তা জেনে নিন।
  3. আপনি ক্লাউড শেল ব্যবহার করবেন, যা গুগল ক্লাউডে চলমান একটি কমান্ড-লাইন পরিবেশ। গুগল ক্লাউড কনসোলের শীর্ষে থাকা ‘অ্যাক্টিভেট ক্লাউড শেল’-এ ক্লিক করুন। ক্লাউড শেল থেকে সংশ্লিষ্ট বোতামে ক্লিক করে আপনি ক্লাউড শেল টার্মিনাল (ক্লাউড কমান্ড চালানোর জন্য) এবং এডিটর (প্রজেক্ট তৈরির জন্য)-এর মধ্যে টগল করতে পারবেন।

ক্লাউড শেল সক্রিয় করুন বোতামের ছবি

  1. ক্লাউড শেলে সংযুক্ত হওয়ার পর, আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করে যাচাই করে নিন যে আপনি ইতিমধ্যেই প্রমাণীকৃত এবং প্রজেক্টটি আপনার প্রজেক্ট আইডিতে সেট করা আছে:
gcloud auth list
  1. gcloud কমান্ডটি আপনার প্রজেক্ট সম্পর্কে অবগত আছে কিনা, তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান।
gcloud config list project
  1. আপনার প্রজেক্টটি সেট করা না থাকলে, এটি সেট করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
gcloud config set project <YOUR_PROJECT_ID>

gcloud কমান্ড এবং এর ব্যবহার সম্পর্কে জানতে ডকুমেন্টেশন দেখুন।

চমৎকার! আমরা এখন পরবর্তী ধাপে যাওয়ার জন্য প্রস্তুত — ডেটাসেটটি বোঝা।

৪. কোম্পানি ডেটাসেট বোঝা

এই কোডল্যাবের জন্য, আমরা একটি রিড-অনলি Neo4j ডেটাবেস ব্যবহার করছি , যা Diffbot-এর নলেজ গ্রাফ থেকে নেওয়া বিনিয়োগ এবং কোম্পানির ডেটা দিয়ে আগে থেকেই পূরণ করা আছে।

ডেটাসেটটিতে রয়েছে:

  • ২৩৭,৩৫৮টি নোড যা প্রতিনিধিত্ব করে:
  • সংগঠন (কোম্পানি)
  • লোকজন (নির্বাহী, কর্মচারী)
  • নিবন্ধ (সংবাদ এবং উল্লেখ)
  • শিল্প
  • প্রযুক্তি
  • বিনিয়োগকারীরা
  • সম্পর্কগুলির মধ্যে রয়েছে:
  • HAS_INVESTOR - বিনিয়োগ সংযোগ
  • HAS_COMPETITOR - প্রতিযোগিতামূলক সম্পর্ক
  • MENTIONS - প্রবন্ধের তথ্যসূত্র
  • HAS_CEO - কর্মসংস্থান সম্পর্ক
  • HAS_CATEGORY - শিল্প শ্রেণীবিভাগ

5c5fee2a9823601f.jpeg

ডেমো ডেটাবেস অ্যাক্সেস করুন

এই কোডল্যাবের জন্য, আমরা একটি হোস্টেড ডেমো ইনস্ট্যান্স ব্যবহার করব। এই ক্রেডেনশিয়ালগুলো আপনার নোটে যোগ করুন:

URI: neo4j+s://demo.neo4jlabs.com
Username: companies
Password: companies
Database: companies

ব্রাউজার অ্যাক্সেস:

আপনি এখানে ডেটাটি দৃশ্যমানভাবে দেখতে পারেন: https://demo.neo4jlabs.com:7473

একই ক্রেডেনশিয়াল দিয়ে লগইন করুন এবং চালানোর চেষ্টা করুন:

// Sample query to explore the graph
MATCH (c:Organization)-[:HAS_COMPETITOR]-(competitor:Organization)
RETURN c.name, competitor.name
LIMIT 10

গ্রাফ কাঠামোর কল্পনা

সম্পর্কের প্যাটার্ন দেখতে Neo4j ব্রাউজারে এই কোয়েরিটি ব্যবহার করে দেখুন:

// Find investors and their portfolio companies
MATCH (company:Organization)-[:HAS_INVESTOR]->(investor:Person)
WITH investor, collect(company.name) as portfolio
RETURN investor.name, size(portfolio) as num_investments, portfolio
ORDER BY num_investments DESC
LIMIT 5

এই কোয়েরিটি শীর্ষ ৫ জন সর্বাধিক সক্রিয় বিনিয়োগকারী এবং তাদের পোর্টফোলিওগুলো প্রদর্শন করে।

GraphRAG-এর জন্য এই ডেটাবেসটি কেন?

এই ডেটাসেটটি GraphRAG প্রদর্শনের জন্য উপযুক্ত, কারণ:

  1. সমৃদ্ধ সম্পর্ক : সত্তাগুলোর মধ্যে জটিল সংযোগ
  2. বাস্তব জগতের ডেটা : প্রকৃত কোম্পানি, ব্যক্তি এবং সংবাদ নিবন্ধ
  3. মাল্টি-হপ কোয়েরি : একাধিক সম্পর্ক প্রকার অতিক্রম করার প্রয়োজন হয়
  4. কালানুক্রমিক তথ্য : সময়-ভিত্তিক বিশ্লেষণের জন্য টাইমস্ট্যাম্পযুক্ত নিবন্ধসমূহ
  5. অনুভূতি বিশ্লেষণ : প্রবন্ধের জন্য পূর্ব-গণনাকৃত অনুভূতি স্কোর

এখন যেহেতু আপনি ডেটা স্ট্রাকচারটি বুঝে গেছেন, চলুন আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করা যাক!

৫. রিপোজিটরি ক্লোন করুন এবং পরিবেশ কনফিগার করুন

রিপোজিটরি ক্লোন করুন

আপনার ক্লাউড শেল টার্মিনালে, চালান:

# Clone the repository
git clone https://github.com/sidagarwal04/neo4j-adk-multiagents.git

# Navigate into the directory
cd neo4j-adk-multiagents

রিপোজিটরি কাঠামো অন্বেষণ করুন

প্রকল্পের বিন্যাসটি বুঝতে একটু সময় নিন:

neo4j-adk-multiagents/
├── investment_agent/       # Main agent code
   ├── agent.py           # Agent definitions
   ├── tools.py           # Custom tool functions
   └── .adk/              # ADK configuration
       └── tools.yaml     # MCP tool definitions
├── main.py                # Application entry point
├── setup_tools_yaml.py    # Configuration generator
├── requirements.txt       # Python dependencies
├── example.env           # Environment template
└── README.md             # Project documentation

ভার্চুয়াল পরিবেশ সেট আপ করুন

uv ব্যবহার করে একটি পাইথন ভার্চুয়াল এনভায়রনমেন্ট তৈরি ও সক্রিয় করুন:

# Install uv if not already installed
pip install uv

# Create virtual environment
uv venv

# Activate the environment
source .venv/bin/activate  # On macOS/Linux
# or
.venv\Scripts\activate  # On Windows

আপনার টার্মিনাল প্রম্পটের শুরুতে (.venv) যুক্ত দেখতে পাবেন।

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

প্রয়োজনীয় সকল প্যাকেজ ইনস্টল করুন:

uv pip install -r requirements.txt

মূল নির্ভরশীলতাগুলোর মধ্যে রয়েছে:

txtgoogle-adk>=1.21.0          # Agent Development Kit
neo4j>=6.0.3               # Neo4j Python driver
python-dotenv>=1.0.0       # Environment variables
google-cloud-aiplatform>=1.30.0  # Vertex AI

পরিবেশ ভেরিয়েবল কনফিগার করুন

  1. আপনার .env ফাইলটি তৈরি করুন:
cp example.env .env
  1. .env ফাইলটি সম্পাদনা করুন :

ক্লাউড শেল ব্যবহার করলে, টুলবারে থাকা ‘ওপেন এডিটর’-এ ক্লিক করুন, এরপর .env ফাইলে গিয়ে আপডেট করুন:

লুকানো .env ফাইলটি প্রকাশ করতে:

গুগল ক্লাউড শেল এডিটর-এ View > Toggle Hidden files এ ক্লিক করুন।

# Neo4j Configuration (Demo Database)
NEO4J_URI=neo4j+s://demo.neo4jlabs.com
NEO4J_USERNAME=companies
NEO4J_PASSWORD=companies
NEO4J_DATABASE=companies

# Google AI Configuration
# Choose ONE of the following options:

# Option 1: Google AI API (Recommended)
GOOGLE_GENAI_USE_VERTEXAI=0
GOOGLE_API_KEY=your_api_key_here  # Get from https://aistudio.google.com/app/apikey

# Option 2: Vertex AI (If using GCP)
# GOOGLE_GENAI_USE_VERTEXAI=1
# GOOGLE_CLOUD_PROJECT=your-project-id
# GOOGLE_CLOUD_LOCATION=us-central1

# ADK Configuration
GOOGLE_ADK_MODEL=gemini-3.1-flash-lite-preview # or gemini-3-flash-preview

# MCP Toolbox Configuration
MCP_TOOLBOX_URL=https://toolbox-990868019953.us-central1.run.app/mcp/sse
  1. এমসিপি টুলবক্স কনফিগারেশন তৈরি করুন:

আপনার এনভায়রনমেন্ট ভেরিয়েবল থেকে tools.yaml ফাইলটি তৈরি করতে সেটআপ স্ক্রিপ্টটি চালান:

python setup_tools_yaml.py

এটি investment_agent/.adk/tools.yaml ফাইলটি তৈরি করে, যেখানে MCP টুলগুলির জন্য আপনার Neo4j ক্রেডেনশিয়ালগুলি সঠিকভাবে কনফিগার করা থাকে।

কনফিগারেশন যাচাই করুন

সবকিছু সঠিকভাবে সেট আপ করা আছে কিনা তা পরীক্ষা করুন:

# Verify .env file exists
ls -la .env

# Verify tools.yaml was generated
ls -la investment_agent/.adk/tools.yaml

# Test Python environment
python -c "import google.adk; print('ADK installed successfully')"

# Test Neo4j connection
python -c "from neo4j import GraphDatabase; print('Neo4j driver installed')"

আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট এখন সম্পূর্ণরূপে কনফিগার করা হয়েছে! এরপর, আমরা মাল্টি-এজেন্ট আর্কিটেকচার নিয়ে বিস্তারিত আলোচনা করব।

৬. মাল্টি-এজেন্ট আর্কিটেকচার বোঝা

চার-এজেন্ট সিস্টেম

আমাদের বিনিয়োগ গবেষণা ব্যবস্থা একটি স্তরক্রমিক মাল্টি-এজেন্ট কাঠামো ব্যবহার করে, যেখানে চারটি বিশেষায়িত এজেন্ট কোম্পানি, বিনিয়োগকারী এবং বাজার সম্পর্কিত তথ্যের জটিল প্রশ্নের উত্তর দেওয়ার জন্য একত্রে কাজ করে।

                ┌──────────────┐
                  Root Agent   ◄── User Query
                └──────┬───────┘
                       
      ┌────────────────┼────────────────┐
                                      
┌─────▼─────┐    ┌────▼─────┐    ┌────▼──────────┐
 Graph DB       Investor       Investment   
  Agent         Research       Research     
└───────────┘      Agent         Agent        
                 └──────────┘    └───────────────┘
  1. মূল এজেন্ট (অর্কেস্ট্রেটর):

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

  1. গ্রাফ ডাটাবেস এজেন্ট:

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

  1. বিনিয়োগকারী গবেষণা প্রতিনিধি:

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

  1. বিনিয়োগ গবেষণা প্রতিনিধি:

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

৭. মাল্টি-এজেন্ট সিস্টেম চালানো এবং পরীক্ষা করা

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

এখন যেহেতু আপনি আর্কিটেকচারটি বুঝতে পেরেছেন, চলুন সম্পূর্ণ সিস্টেমটি চালু করে এর সাথে ইন্টারঅ্যাক্ট করি।

ADK ওয়েব ইন্টারফেস চালু করুন:

# Make sure you're in the project directory with activated virtual environment
cd ~/neo4j-adk-multiagents
source .venv/bin/activate  # If not already activated
# Launch the application
uv run adk web

আপনি নিম্নলিখিতের অনুরূপ আউটপুট দেখতে পাবেন:

INFO:     Started server process [2542]
INFO:     Waiting for application startup.

+----------------------------------------------------------------+
| ADK Web Server started                                         |
|                                                                |
| For local testing, access at http://127.0.0.1:8000.            |
+----------------------------------------------------------------+

INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)

পরীক্ষার কোয়েরি এবং প্রত্যাশিত আচরণ

চলুন, ক্রমান্বয়ে জটিলতর কোয়েরির মাধ্যমে সিস্টেমটির সক্ষমতা যাচাই করে দেখি:

মৌলিক অনুসন্ধান (একক এজেন্ট)

অনুসন্ধান ১: শিল্প আবিষ্কার করুন

What industries are available in the database?

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট থেকে ইনভেস্টমেন্ট রিসার্চ এজেন্ট পর্যন্ত রুট
  • MCP টুল ব্যবহার করে: get_industries()
  • সমস্ত শিল্পের একটি বিন্যাসিত তালিকা ফেরত দেয়

যা পর্যবেক্ষণ করতে হবে:

ADK UI-তে, এক্সিকিউশন ডিটেইলস এক্সপ্যান্ড করে দেখুন:

  • এজেন্ট নির্বাচনের সিদ্ধান্ত
  • টুল কল: get_industries()
  • Neo4j থেকে প্রাপ্ত কাঁচা ফলাফল
  • ফর্ম্যাট করা প্রতিক্রিয়া

অনুসন্ধান ২: বিনিয়োগকারী খুঁজুন

Who invested in ByteDance?

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট এটিকে বিনিয়োগকারী-সম্পর্কিত কোয়েরি হিসেবে শনাক্ত করে।
  • বিনিয়োগকারী গবেষণা এজেন্টের কাছে পৌঁছানোর উপায়
  • ব্যবহৃত টুল: find_investor_by_name("ByteDance")
  • বিনিয়োগকারীদের তাদের প্রকারভেদ (ব্যক্তি/সংস্থা) অনুযায়ী রিটার্ন প্রদান করে।

প্রত্যাশিত প্রতিক্রিয়া:

I found 2 investors in ByteDance:

1. Rong Yue (Person)
2. Wendi Murdoch (Person)

Would you like to know more about their investment portfolios?

অনুসন্ধান ৩: শিল্প অনুযায়ী কোম্পানিসমূহ**

I found 2 investors in ByteDance:

1. Rong Yue (Person)
2. Wendi Murdoch (Person)

Would you like to know more about their investment portfolios?
"Show me companies in the Artificial Intelligence industry"

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট থেকে ইনভেস্টমেন্ট রিসার্চ এজেন্ট পর্যন্ত রুট
  • MCP টুল ব্যবহার করে: get_companies_in_industry("Artificial Intelligence")
  • আইডি এবং প্রতিষ্ঠার তারিখ সহ এআই কোম্পানিগুলোর তালিকা ফেরত দেয়।

যা পর্যবেক্ষণ করতে হবে:

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

মধ্যবর্তী কোয়েরি (এক এজেন্টের মধ্যে একাধিক ধাপ)

কোয়েরি ৪: সেন্টিমেন্ট অ্যানালাইসিস

Find articles with positive sentiment from January 2023

প্রত্যাশিত আচরণ:

  • বিনিয়োগ গবেষণা এজেন্ট হওয়ার পথ
  • MCP টুল ব্যবহার করে: get_articles_with_sentiment(0.7, 2023, 1)
  • শিরোনাম, সেন্টিমেন্ট স্কোর এবং প্রকাশের তারিখ সহ নিবন্ধগুলি ফেরত দেয়।

ডিবাগিং টিপস:

টুল আহ্বানের প্যারামিটারগুলো দেখুন:

  • min_sentiment : ০.৭ (এজেন্ট 'ইতিবাচক' বলতে ০.৭ বা তার বেশি মানকে বোঝে)
  • year : ২০২৩
  • month : ১

কোয়েরি ৫: জটিল ডাটাবেস কোয়েরি

How many companies are in the database?

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট গ্রাফ ডেটাবেস এজেন্টের কাছে রুট করে
  • এজেন্ট প্রথমে গঠন বোঝার জন্য get_neo4j_schema() কল করে।
  • সাইফার তৈরি করে: MATCH (c:Company) RETURN count(c)
  • কোয়েরি কার্যকর করে এবং সংখ্যা ফেরত দেয়

প্রত্যাশিত প্রতিক্রিয়া:

There are 8,064 companies in the database.

উন্নত কোয়েরি (একাধিক এজেন্টের সমন্বয়)

প্রশ্ন ৬: পোর্টফোলিও বিশ্লেষণ

Who invested in ByteDance and what else have they invested in?

প্রত্যাশিত আচরণ:

এটি একটি দুই-অংশবিশিষ্ট কোয়েরি যার জন্য এজেন্টের সমন্বয় প্রয়োজন:

  • ধাপ ১ : রুট এজেন্ট → বিনিয়োগকারী গবেষণা এজেন্ট
  • find_investor_by_name("ByteDance") কল করুন
  • বিনিয়োগকারীদের তালিকা পেলেন: [রং ইউ, ওয়েন্ডি মারডক]
  • ধাপ ২ : প্রত্যেক বিনিয়োগকারীর জন্য → বিনিয়োগকারী গবেষণা প্রতিনিধি
  • find_investor_by_id(investor_id) কল করে
  • সম্পূর্ণ পোর্টফোলিও পুনরুদ্ধার করে
  • ধাপ ৩ : রুট এজেন্ট একত্রিত করে এবং বিন্যাস করে

প্রত্যাশিত প্রতিক্রিয়া:

I found 2 investors in ByteDance. Here are their portfolios:

1. Rong Yue (Person)
   - ByteDance
   - Inspur
   
2. Wendi Murdoch (Person)
   - ByteDance
   - (No other investments in database)

যা পর্যবেক্ষণ করতে হবে:

  • ক্রমানুসারে একাধিক টুল কল
  • ধাপগুলোর মধ্যে প্রেক্ষাপট বজায় রাখা হয়
  • বুদ্ধিমত্তার সাথে একত্রিত ফলাফল

প্রশ্ন ৭: বহু-ক্ষেত্রীয় গবেষণা

What are 5 AI companies mentioned in positive articles, and who are their CEOs?

প্রত্যাশিত আচরণ:

এই জটিল কোয়েরিটির জন্য একাধিক এজেন্ট ও টুলের প্রয়োজন:

  • ধাপ ১ : বিনিয়োগ গবেষণা প্রতিনিধি
  • get_companies_in_industry("Artificial Intelligence")
  • এআই কোম্পানিগুলোর তালিকা ফেরত দেয়
  • ধাপ ২ : বিনিয়োগ গবেষণা প্রতিনিধি
  • get_articles_with_sentiment(0.8)
  • ইতিবাচক নিবন্ধ ফেরত দেয়
  • ধাপ ৩ : রুট এজেন্ট ফিল্টার
  • কোন কোন এআই কোম্পানি ইতিবাচক নিবন্ধে স্থান পায় তা শনাক্ত করে।
  • শীর্ষ ৫ জনকে নির্বাচন করে
  • ধাপ ৪ : বিনিয়োগ গবেষণা প্রতিনিধি
  • get_people_in_organizations([company_names], "CEO")
  • সিইও তথ্য ফেরত দেয়
  • ধাপ ৫ : রুট এজেন্ট টেবিল হিসাবে ফরম্যাট হয়

প্রত্যাশিত প্রতিক্রিয়া:

Here are 5 AI companies with positive news and their CEOs:

| Company | Industry | CEO | Avg Sentiment |
|---------|----------|-----|---------------|
| OpenAI | Artificial Intelligence | Sam Altman | 0.92 |
| Anthropic | Artificial Intelligence | Dario Amodei | 0.89 |
| ... | ... | ... | ... |

যা পর্যবেক্ষণ করতে হবে:

  • বিভিন্ন এজেন্টের মধ্যে একাধিক টুল কল
  • ডেটা ফিল্টারিং এবং সংমিশ্রণ যুক্তি
  • পেশাদার টেবিল বিন্যাস

প্রশ্ন ৮: প্রতিযোগিতামূলক বিশ্লেষণ

Who are YouTube's main competitors?

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট গ্রাফ ডাটাবেস এজেন্টের কাছে রুট করে (সম্পর্ক কোয়েরি)
  • এজেন্ট GraphRAG-বর্ধিত সাইফার তৈরি করে:
MATCH (c:Company {name: "YouTube"})-[:COMPETES_WITH]->(competitor)
RETURN competitor.name as competitor_name
  • প্রতিযোগী সংস্থাগুলির তালিকা ফেরত দেয়

প্রত্যাশিত প্রতিক্রিয়া:

YouTube's main competitors are:

- TikTok (ByteDance)
- Dailymotion
- Twitter
- BuzzFeed
- Mixer
- OpenAI (for video content)

প্রসঙ্গ-সচেতন ফলো-আপ কোয়েরি

প্রশ্ন ৯: পরবর্তী প্রশ্ন (প্রশ্ন ৮-এর পরে)

Which investors funded both YouTube and its competitors?

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট পূর্ববর্তী প্রেক্ষাপট মনে রাখে (ইউটিউব এবং এর প্রতিযোগীরা)
  • বিনিয়োগকারী গবেষণা এজেন্টের কাছে পৌঁছানোর উপায়
  • ইউটিউব এবং তার প্রতিটি প্রতিযোগীর জন্য বিনিয়োগকারী খুঁজে পাওয়া যায়।
  • একাধিক কোম্পানিতে উপস্থিত বিনিয়োগকারীদের শনাক্ত করে।

প্রত্যাশিত প্রতিক্রিয়া:

Based on our previous analysis of YouTube's competitors, I found these 
investors who funded multiple companies in this competitive landscape:

Sequoia Capital invested in:
- YouTube
- TikTok (ByteDance)
- Twitter

Accel Partners invested in:
- YouTube  
- BuzzFeed

This suggests these investors have strategic positions across the video content platform ecosystem.

প্রশ্ন ১০: গবেষণার সারাংশ

Summarize our research findings so far

প্রত্যাশিত আচরণ:

  • রুট এজেন্ট কথোপকথনের ইতিহাস পর্যালোচনা করে
  • পূর্ববর্তী অনুসন্ধানগুলি থেকে প্রাপ্ত মূল তথ্য সংশ্লেষণ করে
  • সুসংগত সারসংক্ষেপ প্রদান করে

প্রত্যাশিত প্রতিক্রিয়া:

Here's a summary of our investment research session:

1. Industry Overview: We explored the Artificial Intelligence industry 
   with 150+ companies in the database.

2. ByteDance Analysis: 
   - Investors: Rong Yue, Wendi Murdoch
   - Rong Yue also invested in Inspur

3. Market Sentiment: We analyzed articles from January 2023, finding 
   strong positive sentiment (avg 0.85) for tech companies.

4. Competitive Landscape: YouTube faces competition from TikTok, 
   Dailymotion, and others, with some investors (Sequoia, Accel) holding 
   positions across competing platforms.

5. Key Players: Identified CEOs of major AI companies with positive media coverage.

ডিবাগ ভিউতে এজেন্ট ইন্টারঅ্যাকশন বোঝা

ADK ওয়েব ইন্টারফেস এক্সিকিউশনের বিস্তারিত তথ্য প্রদান করে। এখানে যা যা দেখতে হবে:

  1. ইভেন্টের সময়রেখা

কালানুক্রমিক প্রবাহ দেখায়:

[USER] Query received
[ROOT_AGENT] Analyzing query intent
[ROOT_AGENT] Routing to investment_research_agent
[INVESTMENT_RESEARCH_AGENT] Tool call: get_companies_in_industry
[TOOL] Executing with params: {"industry_name": "Artificial Intelligence"}
[TOOL] Returned 47 results
[INVESTMENT_RESEARCH_AGENT] Formatting response
[ROOT_AGENT] Presenting to user
  1. টুল আহ্বানের বিবরণ

দেখতে যেকোনো টুল কলে ক্লিক করুন:

  • ফাংশনের নাম
  • ইনপুট প্যারামিটার
  • ফেরত মান
  • কার্যকর করার সময়
  • যেকোনো ত্রুটি
  1. এজেন্ট সিদ্ধান্ত গ্রহণ

এলএলএম-এর যুক্তি পর্যবেক্ষণ করুন:

    • কেন এটি একটি নির্দিষ্ট এজেন্ট বেছে নিল
    • এটি কীভাবে কোয়েরিটি ব্যাখ্যা করেছে
    • এটি কোন সরঞ্জাম বিবেচনা করেছিল
    • কেন এটি ফলাফলগুলিকে একটি নির্দিষ্ট উপায়ে বিন্যস্ত করেছে

সাধারণ পর্যবেক্ষণ এবং অন্তর্দৃষ্টি

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

কার্যকরী পরীক্ষার জন্য পরামর্শ

  1. সহজভাবে শুরু করুন : জটিল কোয়েরি করার আগে প্রতিটি এজেন্টের মূল কার্যকারিতা পরীক্ষা করে নিন।
  2. ফলো-আপ ব্যবহার করুন : ফলো-আপ প্রশ্নের মাধ্যমে প্রসঙ্গ মনে রাখার ক্ষমতা পরীক্ষা করুন।
  3. রাউটিং পর্যবেক্ষণ করুন : এর পেছনের যুক্তি বোঝার জন্য দেখুন কোন এজেন্ট প্রতিটি কোয়েরি পরিচালনা করছে।
  4. টুল কল পরীক্ষা করুন : স্বাভাবিক ভাষা থেকে প্যারামিটারগুলো সঠিকভাবে আহরণ করা হয়েছে কিনা তা যাচাই করুন।
  5. প্রান্তিক পরিস্থিতি পরীক্ষা করুন : দ্ব্যর্থক কোয়েরি, বানান ভুল বা অস্বাভাবিক অনুরোধ চেষ্টা করে দেখুন।

আপনার কাছে এখন একটি সম্পূর্ণ কার্যকরী মাল্টি-এজেন্ট গ্রাফর‍্যাগ সিস্টেম রয়েছে! এর সক্ষমতা অন্বেষণ করতে আপনার নিজের প্রশ্ন নিয়ে পরীক্ষা-নিরীক্ষা করুন।

৮. পরিষ্কার করুন

এই পোস্টে ব্যবহৃত রিসোর্সগুলোর জন্য আপনার গুগল ক্লাউড অ্যাকাউন্টে চার্জ হওয়া এড়াতে, এই ধাপগুলো অনুসরণ করুন:

  1. গুগল ক্লাউড কনসোলে, রিসোর্স পরিচালনা (Manage resources) পৃষ্ঠায় যান।
  2. প্রজেক্ট তালিকা থেকে, আপনি যে প্রজেক্টটি মুছতে চান সেটি নির্বাচন করুন এবং তারপর ডিলিট বোতামে ক্লিক করুন।
  3. ডায়ালগ বক্সে প্রজেক্ট আইডি টাইপ করুন এবং তারপর প্রজেক্টটি মুছে ফেলার জন্য 'শাট ডাউন'-এ ক্লিক করুন।

৯. অভিনন্দন

🎉 অভিনন্দন! আপনি গুগলের এজেন্ট ডেভেলপমেন্ট কিট, নিও৪জে (Neo4j), এবং এমসিপি টুলবক্স (MCP Toolbox) ব্যবহার করে সফলভাবে একটি প্রোডাকশন-কোয়ালিটির মাল্টি-এজেন্ট গ্রাফর‍্যাগ (GraphRAG) সিস্টেম তৈরি করেছেন!

ADK-এর ইন্টেলিজেন্ট অর্কেস্ট্রেশন সক্ষমতা, Neo4j-এর সম্পর্ক-সমৃদ্ধ ডেটা মডেল এবং প্রি-ভ্যালিডেটেড MCP কোয়েরির সুরক্ষার সমন্বয়ে আপনি এমন একটি অত্যাধুনিক সিস্টেম তৈরি করেছেন যা সাধারণ ডাটাবেস কোয়েরির ঊর্ধ্বে — এটি প্রেক্ষাপট বোঝে, জটিল সম্পর্কগুলোর মধ্যে যুক্তি খুঁজে বের করে এবং ব্যাপক ও নির্ভুল অন্তর্দৃষ্টি প্রদানের জন্য বিশেষায়িত এজেন্টদের মধ্যে সমন্বয় সাধন করে।

এই কোডল্যাবে, আপনি নিম্নলিখিত কাজগুলো সম্পন্ন করেছেন:

✅ গুগলের এজেন্ট ডেভেলপমেন্ট কিট (ADK) ব্যবহার করে হায়ারারকিক্যাল অর্কেস্ট্রেশন সহ একটি মাল্টি-এজেন্ট সিস্টেম তৈরি করা হয়েছে

✅ সম্পর্ক-সচেতন কোয়েরি এবং মাল্টি-হপ রিজনিং কাজে লাগানোর জন্য সমন্বিত Neo4j গ্রাফ ডেটাবেস

✅ নিরাপদ ও পূর্ব-যাচাইকৃত ডাটাবেস কোয়েরিগুলোকে পুনঃব্যবহারযোগ্য টুল হিসেবে তৈরির জন্য এমসিপি টুলবক্স বাস্তবায়ন করা হয়েছে।

✅ বিনিয়োগকারী গবেষণা, বিনিয়োগ বিশ্লেষণ এবং গ্রাফ ডাটাবেস পরিচালনার জন্য বিশেষায়িত এজেন্ট তৈরি করা হয়েছে

এমন বুদ্ধিমান রাউটিং ডিজাইন করা হয়েছে যা স্বয়ংক্রিয়ভাবে কোয়েরিগুলোকে সবচেয়ে উপযুক্ত বিশেষজ্ঞ এজেন্টের কাছে প্রেরণ করে।

✅ পাইথনের সাথে নির্বিঘ্ন একীকরণের জন্য যথাযথ Neo4j টাইপ সিরিয়ালাইজেশনের মাধ্যমে জটিল ডেটা টাইপগুলো পরিচালনা করা হয়েছে।

✅ এজেন্ট ডিজাইন, ত্রুটি পরিচালনা এবং সিস্টেম ডিবাগিংয়ের ক্ষেত্রে উৎপাদনের সর্বোত্তম অনুশীলন প্রয়োগ করা হয়েছে

এরপর কী?

এই মাল্টি-এজেন্ট গ্রাফর‍্যাগ আর্কিটেকচারটি শুধু বিনিয়োগ গবেষণার মধ্যেই সীমাবদ্ধ নয় — এটিকে নিম্নলিখিত ক্ষেত্রেও সম্প্রসারিত করা যেতে পারে:

  • আর্থিক পরিষেবা : পোর্টফোলিও অপ্টিমাইজেশন, ঝুঁকি মূল্যায়ন, জালিয়াতি সনাক্তকরণ
  • স্বাস্থ্যসেবা : রোগীর পরিচর্যা সমন্বয়, ওষুধের পারস্পরিক ক্রিয়া বিশ্লেষণ, ক্লিনিক্যাল গবেষণা
  • ই-কমার্স : ব্যক্তিগতকৃত সুপারিশ, সরবরাহ শৃঙ্খল অপ্টিমাইজেশন, গ্রাহক অন্তর্দৃষ্টি
  • আইন ও পরিপালন : চুক্তি বিশ্লেষণ, নিয়ন্ত্রক পর্যবেক্ষণ, মামলার আইন গবেষণা
  • একাডেমিক গবেষণা : সাহিত্য পর্যালোচনা, সহযোগিতা অন্বেষণ, উদ্ধৃতি বিশ্লেষণ
  • এন্টারপ্রাইজ ইন্টেলিজেন্স : প্রতিযোগিতামূলক বিশ্লেষণ, বাজার গবেষণা, সাংগঠনিক নলেজ গ্রাফ

যেখানেই জটিল আন্তঃসংযুক্ত ডেটা , ডোমেইন বিশেষজ্ঞতা এবং স্বাভাবিক ভাষার ইন্টারফেস রয়েছে, সেখানেই ADK মাল্টি-এজেন্ট সিস্টেম, Neo4j নলেজ গ্রাফ এবং MCP-দ্বারা যাচাইকৃত কোয়েরির এই সমন্বয় পরবর্তী প্রজন্মের বুদ্ধিমান এন্টারপ্রাইজ অ্যাপ্লিকেশনগুলোকে চালিত করতে পারে।

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

অন্বেষণ চালিয়ে যান, নির্মাণ করতে থাকুন এবং আপনার ইন্টেলিজেন্ট এজেন্ট অ্যাপ্লিকেশনগুলোকে পরবর্তী স্তরে নিয়ে যান!

Neo4j GraphAcademy- তে নলেজ গ্রাফের আরও হাতে-কলমে টিউটোরিয়াল দেখুন এবং ADK স্যাম্পলস রিপোজিটরি -তে অতিরিক্ত এজেন্ট প্যাটার্ন আবিষ্কার করুন।

🚀 আপনার পরবর্তী ইন্টেলিজেন্ট এজেন্ট সিস্টেম তৈরি করতে প্রস্তুত?

রেফারেন্স নথি