এজেন্ট কি?
সহজ সংজ্ঞা:
এজেন্ট হল একটি স্মার্ট সহায়ক যা নিজে সিদ্ধান্ত নিতে পারে এবং টুলস ব্যবহার করতে পারে।
কল্পনা করো:
- তুমি: “আমার জন্য একটি রেসিপি খুঁজে দাও এবং উপাদানের দাম বলো”
- এজেন্ট:
- গুগলে সার্চ করে রেসিপি খুঁজে বের করে
- বাজারের দাম খুঁজে বের করে
- সব তথ্য একসাথে দেয়
প্রযুক্তিগত সংজ্ঞা:
এজেন্ট হল একটি স্বায়ত্তশাসিত সিস্টেম যা LLM ব্যবহার করে সিদ্ধান্ত নেয় এবং বিভিন্ন টুলস (API, ডাটাবেস, সার্চ ইঞ্জিন) ব্যবহার করে কাজ সম্পন্ন করে।
এজেন্ট এর উপাদান
| উপাদান | কি করে |
|---|---|
| LLM | সিদ্ধান্ত নেয় |
| টুলস | কাজ সম্পন্ন করে |
| মেমোরি | প্রেক্ষাপট মনে রাখে |
| এক্সিকিউটর | সবকিছু সংযুক্ত করে |
সাধারণ এজেন্ট তৈরি করা
উদাহরণ ১: গণিত এজেন্ট
from langchain_groq import ChatGroq
from langchain.agents import initialize_agent, Tool
from langchain.agents import AgentType
from dotenv import load_dotenv
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
# টুলস তৈরি করো
def add(a, b):
return a + b
def subtract(a, b):
return a - b
def multiply(a, b):
return a * b
# টুলস লিস্ট তৈরি করো
tools = [
Tool(
name="যোগ",
func=lambda x: add(int(x.split("+")[0]), int(x.split("+")[1])),
description="দুটি সংখ্যা যোগ করে"
),
Tool(
name="বিয়োগ",
func=lambda x: subtract(int(x.split("-")[0]), int(x.split("-")[1])),
description="দুটি সংখ্যা বিয়োগ করে"
),
Tool(
name="গুণ",
func=lambda x: multiply(int(x.split("*")[0]), int(x.split("*")[1])),
description="দুটি সংখ্যা গুণ করে"
)
]
# এজেন্ট তৈরি করো
agent = initialize_agent(
tools,
ai,
agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
verbose=True
)
# এজেন্ট চালাও
result = agent.run("৫ এবং ৩ যোগ করো")
print(result)আউটপুট:
চিন্তা করছি... আমাকে যোগ টুল ব্যবহার করতে হবে।
ফলাফল: ৮
উদাহরণ ২: তথ্য সংগ্রহকারী এজেন্ট
from langchain_groq import ChatGroq
from langchain.agents import initialize_agent, Tool
from langchain.agents import AgentType
from dotenv import load_dotenv
import requests
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
# টুলস তৈরি করো
def get_weather(city):
"""একটি শহরের আবহাওয়া পান"""
# এটি একটি উদাহরণ, বাস্তবে API ব্যবহার করবে
return f"{city} এ আজ ২৮ ডিগ্রি এবং মেঘলা"
def get_news(topic):
"""একটি বিষয়ের সর্বশেষ খবর পান"""
return f"{topic} সম্পর্কে সর্বশেষ খবর: ..."
# টুলস লিস্ট তৈরি করো
tools = [
Tool(
name="আবহাওয়া",
func=get_weather,
description="একটি শহরের আবহাওয়া জানতে ব্যবহার করো"
),
Tool(
name="খবর",
func=get_news,
description="একটি বিষয়ের সর্বশেষ খবর জানতে ব্যবহার করো"
)
]
# এজেন্ট তৈরি করো
agent = initialize_agent(
tools,
ai,
agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
verbose=True
)
# এজেন্ট চালাও
result = agent.run("ঢাকার আবহাওয়া কেমন এবং আজকের প্রধান খবর কি?")
print(result)এজেন্ট এর ব্যবহারিক প্রয়োগ
ব্যবহার ১: গ্রাহক সেবা এজেন্ট
গ্রাহক: "আমার অর্ডার কোথায়?"
এজেন্ট:
১. ডাটাবেসে অর্ডার খোঁজে
২. ট্র্যাকিং তথ্য পায়
৩. গ্রাহককে বলে: "আপনার অর্ডার ঢাকায় পৌঁছাবে আগামীকাল"
ব্যবহার ২: গবেষণা এজেন্ট
ব্যবহারকারী: "কৃত্রিম বুদ্ধিমত্তা সম্পর্কে সর্বশেষ গবেষণা কি?"
এজেন্ট:
১. ইন্টারনেট সার্চ করে
২. একাডেমিক পেপার খোঁজে
৩. তথ্য সংক্ষিপ্ত করে
৪. ব্যবহারকারীকে বলে
ব্যবহার ৩: ডেটা বিশ্লেষণ এজেন্ট
ব্যবহারকারী: "এই মাসের বিক্রয় বৃদ্ধি কত?"
এজেন্ট:
১. ডাটাবেস থেকে ডেটা নেয়
২. গণনা করে
৩. গ্রাফ তৈরি করে
৪. ফলাফল দেয়
সারসংক্ষেপ
| বিষয় | বর্ণনা |
|---|---|
| এজেন্ট | স্বয়ংক্রিয় সিদ্ধান্ত নেওয়ার সিস্টেম |
| টুলস | এজেন্ট যা কাজ করতে ব্যবহার করে |
| সুবিধা | জটিল কাজ স্বয়ংক্রিয়ভাবে করা যায় |