(हा धडा पाहण्यासाठी वरील प्रतिमेवर क्लिक करा)
AI एजंटमधील मेटाकॉग्निशन
AI एजंट्समधील मेटाकॉग्निशन या धड्यावर आपले स्वागत आहे! हा अध्याय आरंभिकांकरिता तयार केला आहे जे जाणून घेण्यास उत्सुक आहेत की AI एजंट स्वतःच्या विचार प्रक्रियेबद्दल कसे विचार करू शकतात. या धड्याच्या शेवटी, आपण महत्त्वाच्या संकल्पनांना समजून घेणार आहात आणि मेटाकॉग्निशन AI एजंट डिझाईनमध्ये लागू करण्यासाठी व्यवहार्य उदाहरणांसह सुसज्ज होणार आहात.
हा धडा पूर्ण केल्यानंतर, आपण हे करू शकाल:
मेटाकॉग्निशन म्हणजे स्वतःच्या विचारांबद्दल विचार करण्याच्या उच्च-स्तरीय संज्ञानात्मक प्रक्रियांचा समावेश. AI एजंटसाठी, याचा अर्थ म्हणजे स्वतःच्या क्रियाकलापांचे स्वतःची जाण आणि भूतकाळातील अनुभवांच्या आधारे मूल्यांकन व समायोजन करणे. मेटाकॉग्निशन, किंवा “विचारावर विचार,” हा एजंटिक AI प्रणाली विकसित करण्यामध्ये महत्त्वपूर्ण संकल्पना आहे. यात AI प्रणालींना त्यांच्या अंतर्गत प्रक्रियांबद्दल जाणीव असते आणि त्यांनी त्यांच्या वर्तनाचे निरीक्षण, नियमबद्धता आणि अनुकूलन करू शकतात. जसे आपण खोली वाचतो किंवा समस्येचे विश्लेषण करतो तशीच. ही आत्म-जाणीव AI प्रणालींना चांगले निर्णय घेण्यात, चुका ओळखण्यात आणि वेळोवेळी त्यांची कामगिरी सुधारण्यात मदत करू शकते - जे पुन्हा ट्युरिंग चाचणी आणि AI जग जिंकेल की नाही ह्या वादाशी जोडलेले आहे.
एजंटिक AI प्रणालीच्या संदर्भात, मेटाकॉग्निशन काही आव्हाने सोडवण्यास मदत करू शकते, जसे की:
मेटाकॉग्निशन, किंवा “विचारावर विचार,” हा एक उच्च-स्तरीय संज्ञानात्मक प्रक्रिया आहे ज्यामध्ये स्वतःच्या संज्ञानात्मक प्रक्रियेची आत्म-जाणीव आणि स्वयं-नियमन यांचा समावेश होतो. AI च्या क्षेत्रात, मेटाकॉग्निशन एजंट्सना त्यांच्या धोरणे आणि क्रियांच्या मूल्यांकन व अनुकूलन करण्यास सक्षम बनवते, ज्यामुळे समस्या सोडवण्याची आणि निर्णय घेण्याची क्षमता सुधारते. मेटाकॉग्निशन समजून घेऊन, आपण असे AI एजंट डिझाइन करू शकता जे केवळ बुद्धिमानच नव्हे तर अधिक अनुकूल आणि कार्यक्षम देखील असतील. खऱ्या मेटाकॉग्निशनमध्ये, AI स्पष्टपणे स्वतःच्या तर्कशास्त्राबद्दल तर्क करीत असते.
उदाहरण: “मी स्वस्त तिकिटांवर प्राधान्य दिले कारण… मला थेट फ्लाइट्स मिस होत असू शकतात, तर मला पुन्हा तपासावे लागेल.”. कसे व का त्याने विशिष्ट मार्ग निवडला ते ट्रॅक करणे.
मेटाकॉग्निशन AI एजंट डिझाईनमध्ये अनेक कारणांसाठी महत्त्वपूर्ण भूमिका बजावते:

मेटाकॉग्निशन प्रक्रियेत खोलवर जाण्याआधी, AI एजंटचे मूलभूत घटक समजून घेणे आवश्यक आहे. AI एजंट सामान्यतः खालील भागांपासून तयार असतो:
हे घटक एकत्र येऊन “तज्ज्ञता युनिट” तयार करतात जे विशिष्ट कार्ये पार पाडू शकते.
उदाहरण: एका ट्रॅव्हल एजंटचा विचार करा, जो फक्त तुमचा सुट्टी नियोजन करत नाही तर रिअल-टाइम डेटा आणि मागील ग्राहकांच्या प्रवासाच्या अनुभवांवर आधारित त्याचा मार्ग समायोजित करतो.
गृहित धरा की तुम्ही AI-powered ट्रॅव्हल एजंट सेवा डिझाइन करत आहात. हा एजंट, “ट्रॅव्हल एजंट”, वापरकर्त्यांना त्यांच्या सुटीचे नियोजन करण्यात मदत करतो. मेटाकॉग्निशन समाविष्ट करण्यासाठी, ट्रॅव्हल एजंटने स्वतःची जाणीव आणि भूतकाळातील अनुभवांवर आधारित आपले क्रियाकलाप मूल्यांकन व समायोजित करणे आवश्यक आहे. मेटाकॉग्निशन कशी भूमिका बजावू शकते ते पाहूया:
वापरकर्त्याला पॅरिसला प्रवासाचे नियोजन करण्यात मदत करणे.
ट्रॅव्हल एजंट मेटाकॉग्निशन वापरून आपल्या कामगिरीचे मूल्यांकन करतो व भूतकाळातील अनुभवातून शिकतो. उदाहरणार्थ:
मेटाकॉग्निशन समाविष्ट करताना ट्रॅव्हल एजंटचा सोपा कोड कसा दिसू शकतो:
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
self.experience_data = []
def gather_preferences(self, preferences):
self.user_preferences = preferences
def retrieve_information(self):
# पसंतीनुसार फ्लाइट्स, हॉटेल्स आणि आकर्षणे शोधा
flights = search_flights(self.user_preferences)
hotels = search_hotels(self.user_preferences)
attractions = search_attractions(self.user_preferences)
return flights, hotels, attractions
def generate_recommendations(self):
flights, hotels, attractions = self.retrieve_information()
itinerary = create_itinerary(flights, hotels, attractions)
return itinerary
def adjust_based_on_feedback(self, feedback):
self.experience_data.append(feedback)
# अभिप्रायाचे विश्लेषण करा आणि भविष्यातील शिफारसी समायोजित करा
self.user_preferences = adjust_preferences(self.user_preferences, feedback)
# उदाहरण वापर
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
itinerary = travel_agent.generate_recommendations()
print("Suggested Itinerary:", itinerary)
feedback = {"liked": ["Louvre Museum"], "disliked": ["Eiffel Tower (too crowded)"]}
travel_agent.adjust_based_on_feedback(feedback)
मेटाकॉग्निशन समाविष्ट केल्याने, ट्रॅव्हल एजंट अधिक वैयक्तिकृत व अचूक प्रवास शिफारसी देऊ शकतो, ज्यामुळे वापरकर्ता अनुभव सुधारतो.
नियोजन हा AI एजंटच्या वर्तनाचा महत्त्वाचा घटक आहे. यामध्ये उद्दिष्ट साध्य करण्यासाठी आवश्यक पायऱ्यांचा आराखडा तयार करणे, सध्याच्या स्थिती, संसाधने आणि संभाव्य अडचणी लक्षात घेणे यांचा समावेश होतो.
उदाहरण: ट्रॅव्हल एजंटला वापरकर्त्याच्या प्रवासाचे नियोजन प्रभावीपणे करण्यात मदत करण्यासाठी आवश्यक पावले.
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
self.experience_data = []
def gather_preferences(self, preferences):
self.user_preferences = preferences
def retrieve_information(self):
flights = search_flights(self.user_preferences)
hotels = search_hotels(self.user_preferences)
attractions = search_attractions(self.user_preferences)
return flights, hotels, attractions
def generate_recommendations(self):
flights, hotels, attractions = self.retrieve_information()
itinerary = create_itinerary(flights, hotels, attractions)
return itinerary
def adjust_based_on_feedback(self, feedback):
self.experience_data.append(feedback)
self.user_preferences = adjust_preferences(self.user_preferences, feedback)
# बुकिंग विनंतीमध्ये उदाहरण वापर सुरू करण्यासाठी
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
itinerary = travel_agent.generate_recommendations()
print("Suggested Itinerary:", itinerary)
feedback = {"liked": ["Louvre Museum"], "disliked": ["Eiffel Tower (too crowded)"]}
travel_agent.adjust_based_on_feedback(feedback)
प्रथम, RAG साधन आणि प्री-एम्प्टिव्ह संदर्भ लोड यातील फरक समजून घेऊया.

RAG हे रिट्रीवल प्रणाली आणि जनरेटिव्ह मॉडेलचे संयोजन आहे. जेव्हा एखादा क्वेरी केला जातो, तेव्हा रिट्रीवल प्रणाली बाह्य स्त्रोताकडून संबंधित दस्तऐवज किंवा डेटा आणते, आणि ही माहिती जनरेटिव्ह मॉडेलमध्ये इनपुट म्हणून वापरली जाते. यामुळे मॉडेल अधिक अचूक आणि संदर्भानुसार संबंधित उत्तरे तयार करू शकते.
RAG प्रणालीमध्ये, एजंट ज्ञान आधारातून संबंधित माहिती प्राप्त करत त्याचा वापर योग्य प्रतिक्रिया किंवा क्रिया निर्माण करण्यासाठी करतो.
सुधारात्मक RAG दृष्टिकोन RAG तंत्रांचा वापर करून चुका सुधारण्यावर आणि AI एजंटची अचूकता सुधारण्यावर लक्ष केंद्रित करतो. यात असतात:
एखादा शोध एजंट जी वेबवरून माहिती आणतो वापरकर्त्यांच्या प्रश्नांची उत्तरे देण्यासाठी. सुधारात्मक RAG दृष्टिकोनामध्ये असू शकते:
सुधारात्मक RAG (Retrieval-Augmented Generation) AI ला माहिती प्राप्त करण्याची आणि तयार करण्याची क्षमता वाढवते तसेच कोणत्याही अचूकतेतील चुका दुरुस्त करते. ट्रॅव्हल एजंट कसा सुधारात्मक RAG दृष्टिकोन वापरुन अधिक अचूक आणि संबंधित प्रवास शिफारसी देऊ शकतो ते पाहूया.
यात समाविष्ट आहे:
उदाहरण:
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
उदाहरण:
flights = search_flights(preferences)
hotels = search_hotels(preferences)
attractions = search_attractions(preferences)
उदाहरण:
itinerary = create_itinerary(flights, hotels, attractions)
print("Suggested Itinerary:", itinerary)
उदाहरण:
feedback = {
"liked": ["Louvre Museum"],
"disliked": ["Eiffel Tower (too crowded)"]
}
उदाहरण:
if "disliked" in feedback:
preferences["avoid"] = feedback["disliked"]
उदाहरण:
new_attractions = search_attractions(preferences)
new_itinerary = create_itinerary(flights, hotels, new_attractions)
print("Updated Itinerary:", new_itinerary)
उदाहरण:
def adjust_preferences(preferences, feedback):
if "liked" in feedback:
preferences["favorites"] = feedback["liked"]
if "disliked" in feedback:
preferences["avoid"] = feedback["disliked"]
return preferences
preferences = adjust_preferences(preferences, feedback)
सुधारात्मक RAG दृष्टिकोन ट्रॅव्हल एजंटमध्ये समाविष्ट करणारा सोपा Python कोड उदाहरण येथे आहे:
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
self.experience_data = []
def gather_preferences(self, preferences):
self.user_preferences = preferences
def retrieve_information(self):
flights = search_flights(self.user_preferences)
hotels = search_hotels(self.user_preferences)
attractions = search_attractions(self.user_preferences)
return flights, hotels, attractions
def generate_recommendations(self):
flights, hotels, attractions = self.retrieve_information()
itinerary = create_itinerary(flights, hotels, attractions)
return itinerary
def adjust_based_on_feedback(self, feedback):
self.experience_data.append(feedback)
self.user_preferences = adjust_preferences(self.user_preferences, feedback)
new_itinerary = self.generate_recommendations()
return new_itinerary
# उदाहरण वापर
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
itinerary = travel_agent.generate_recommendations()
print("Suggested Itinerary:", itinerary)
feedback = {"liked": ["Louvre Museum"], "disliked": ["Eiffel Tower (too crowded)"]}
new_itinerary = travel_agent.adjust_based_on_feedback(feedback)
print("Updated Itinerary:", new_itinerary)
प्री-एम्प्टिव कॉन्टेक्स्ट लोड म्हणजे क्वेरी प्रक्रिया करण्यापूर्वी मॉडेलमध्ये संबंधित संदर्भ किंवा पार्श्वभूमी माहिती लोड करणे. याचा अर्थ मॉडेलला सुरुवातीपासूनच या माहितीस प्रवेश असतो, ज्यामुळे प्रक्रियेदरम्यान अतिरिक्त डेटा पुनःप्राप्त करण्याची गरज न पडता अधिक माहितीपूर्ण प्रतिसाद तयार करण्यात ते मदत करू शकते.
येथे Python मध्ये ट्रॅव्हल एजंट अनुप्रयोगासाठी प्री-एम्प्टिव कॉन्टेक्स्ट लोड कसा दिसू शकतो याचे साधे उदाहरण आहे:
class TravelAgent:
def __init__(self):
# लोकप्रिय गंतव्ये आणि त्यांची माहिती पूर्व-लोड करा
self.context = {
"Paris": {"country": "France", "currency": "Euro", "language": "French", "attractions": ["Eiffel Tower", "Louvre Museum"]},
"Tokyo": {"country": "Japan", "currency": "Yen", "language": "Japanese", "attractions": ["Tokyo Tower", "Shibuya Crossing"]},
"New York": {"country": "USA", "currency": "Dollar", "language": "English", "attractions": ["Statue of Liberty", "Times Square"]},
"Sydney": {"country": "Australia", "currency": "Dollar", "language": "English", "attractions": ["Sydney Opera House", "Bondi Beach"]}
}
def get_destination_info(self, destination):
# पूर्व-लोड केलेल्या संदर्भातून गंतव्याची माहिती मिळवा
info = self.context.get(destination)
if info:
return f"{destination}:\nCountry: {info['country']}\nCurrency: {info['currency']}\nLanguage: {info['language']}\nAttractions: {', '.join(info['attractions'])}"
else:
return f"Sorry, we don't have information on {destination}."
# उदाहरण वापर
travel_agent = TravelAgent()
print(travel_agent.get_destination_info("Paris"))
print(travel_agent.get_destination_info("Tokyo"))
इनिशियलायझेशन (__init__ पद्धत): TravelAgent वर्ग प्री-लोडेड डिक्शनरी लोड करतो ज्यात पॅरिस, टोकियो, न्यू यॉर्क, सिडनी यांसारख्या लोकप्रिय ठिकाणांची माहिती असते. या डिक्शनरीमध्ये प्रत्येक ठिकाणासाठी देश, चलन, भाषा आणि मुख्य आकर्षणे यासारखे तपशील असतात.
माहिती मिळवणे (get_destination_info पद्धत): जेव्हा वापरकर्ता विशिष्ट ठिकाणाबद्दल विचारतो, तेव्हा get_destination_info पद्धत प्री-लोड केलेल्या संदर्भ डिक्शनरीमधून संबंधित माहिती प्राप्त करते.
संदर्भ प्री-लोड केल्याने, ट्रॅव्हल एजंट अनुप्रयोग वास्तविक वेळेत बाह्य स्रोताकडून ही माहिती पुनःप्राप्त न करता वापरकर्त्यांच्या क्वेरींना त्वरीत प्रतिसाद देऊ शकतो. त्यामुळे अनुप्रयोग अधिक कार्यक्षम आणि प्रतिसादक्षम बनतो.
उद्दिष्टासह योजना तयार करणे म्हणजे स्पष्ट उद्दिष्ट किंवा अपेक्षित परिणाम लक्षात ठेवून सुरुवात करणे. या उद्दिष्टाची सुरुवातीपासून सदृढ व्याख्या केल्याने मॉडेल पुनरावृत्ती प्रक्रियेदरम्यान त्या मार्गदर्शन म्हणून वापरू शकते. त्यामुळे प्रत्येक पुनरावृत्ती अपेक्षित परिणामाकडे जवळ जाऊन प्रक्रिया अधिक कार्यक्षम आणि केंद्रित होते.
येथे Python मध्ये ट्रॅव्हल एजंटसाठी उद्दिष्टासह योजना तयार करून पुनरावृत्ती करण्याचे उदाहरण दिले आहे:
एका ट्रॅव्हल एजंटला ग्राहकासाठी सानुकूल अवकाशकाळ योजना तयार करायची आहे. उद्दिष्ट म्हणजे ग्राहकाच्या पसंतीनुसार आणि बजेटनुसार त्यांची समाधानकारकता जास्तीत जास्त करणारी प्रवास वेळापत्रक तयार करणे.
class TravelAgent:
def __init__(self, destinations):
self.destinations = destinations
def bootstrap_plan(self, preferences, budget):
plan = []
total_cost = 0
for destination in self.destinations:
if total_cost + destination['cost'] <= budget and self.match_preferences(destination, preferences):
plan.append(destination)
total_cost += destination['cost']
return plan
def match_preferences(self, destination, preferences):
for key, value in preferences.items():
if destination.get(key) != value:
return False
return True
def iterate_plan(self, plan, preferences, budget):
for i in range(len(plan)):
for destination in self.destinations:
if destination not in plan and self.match_preferences(destination, preferences) and self.calculate_cost(plan, destination) <= budget:
plan[i] = destination
break
return plan
def calculate_cost(self, plan, new_destination):
return sum(destination['cost'] for destination in plan) + new_destination['cost']
# उदाहरण वापर
destinations = [
{"name": "Paris", "cost": 1000, "activity": "sightseeing"},
{"name": "Tokyo", "cost": 1200, "activity": "shopping"},
{"name": "New York", "cost": 900, "activity": "sightseeing"},
{"name": "Sydney", "cost": 1100, "activity": "beach"},
]
preferences = {"activity": "sightseeing"}
budget = 2000
travel_agent = TravelAgent(destinations)
initial_plan = travel_agent.bootstrap_plan(preferences, budget)
print("Initial Plan:", initial_plan)
refined_plan = travel_agent.iterate_plan(initial_plan, preferences, budget)
print("Refined Plan:", refined_plan)
इनिशियलायझेशन (__init__ पद्धत): TravelAgent वर्ग संभाव्य ठिकाणांची यादी घेऊन सुरूवात करतो, ज्यामध्ये प्रत्येक ठिकाणाच्या नाव, खर्च, आणि क्रियाकलाप प्रकार यांसारख्या गुणधर्मांचा समावेश असतो.
योजना तयार करणे (bootstrap_plan पद्धत): ही पद्धत ग्राहकाच्या पसंती आणि बजेटच्या आधारावर प्राथमिक प्रवास योजना तयार करते. ती ठिकाणांची यादी एका-एक करून तपासते आणि ती योजना मध्ये जोडते जर ती ग्राहकाच्या पसंतीशी सुसंगत असेल आणि बजेटमध्ये बसेल.
पसंत्या जुळवणे (match_preferences पद्धत): ही पद्धत तपासते की एखादे ठिकाण ग्राहकाच्या पसंतीशी जुळते का.
योजना पुनरावृत्ती (iterate_plan पद्धत): ही पद्धत प्राथमिक योजनेत सुधारणा करते, प्रत्येक ठिकाणाऐवजी ग्राहकाच्या अपेक्षा आणि बजेट मर्यादांनुसार अधिक चांगला पर्याय शोधण्याचा प्रयत्न करते.
खर्च मोजणे (calculate_cost पद्धत): ही पद्धत सध्याच्या योजनेचा एकूण खर्च मोजते, ज्यामध्ये संभाव्य नवीन ठिकाणाचा खर्चही समाविष्ट असतो.
उद्दिष्ट स्पष्ट (उदा. ग्राहक समाधान जास्तीत जास्त करणे) ठेवून आणि योजना परिष्कृत करण्यासाठी पुनरावृत्ती करून, ट्रॅव्हल एजंट ग्राहकासाठी सानुकूलित व अधिक कार्यक्षम प्रवास वेळापत्रक तयार करू शकतो. या प्रक्रियेमुळे सुरुवातीपासूनच योजना ग्राहकाच्या अपेक्षा आणि बजेटसह सुसंगत होते आणि प्रत्येक पुनरावृत्तीने ती सुधारते.
लार्ज लँग्वेज मॉडल्स (LLMs) पुनःमुल्यांकन व स्कोअरिंगसाठी वापरले जाऊ शकतात, ज्यामुळे पुनर्प्राप्त दस्तऐवज किंवा तयार केलेल्या प्रतिसादांची सुसंगतता आणि गुणवत्ता तपासली जाते. हे कसे कार्य करते ते येथे दिले आहे:
पुनर्प्राप्ती: पहिल्या टप्प्यात क्वेरीच्या आधारावर उमेदवार दस्तऐवज किंवा प्रतिसादांची यादी मिळवली जाते.
पुनःमुल्यांकन: LLM उमेदवारांची गुणवत्ता आणि सुसंगततेनुसार पुनःमुल्यांकन करते आणि त्यानुसार त्यांना पुन्हा क्रमबद्ध करते. यामुळे सर्वात सुसंगत आणि उच्च-गुणवत्तेची माहिती पहिल्यांदा दिली जाते.
स्कोअरिंग: LLM प्रत्येक उमेदवाराला गुणांकन देते, ज्यामुळे वापरकर्त्यासाठी सर्वोत्तम प्रतिसाद किंवा दस्तऐवज निवडण्यात मदत होते.
LLM चा पुनःमुल्यांकन आणि स्कोअरिंगसाठी वापर केल्याने प्रणाली अधिक अचूक आणि संदर्भानुसार संबंधित माहिती प्रदान करू शकते, ज्यामुळे एकूण वापरकर्ता अनुभव सुधारतो.
येथे Python मध्ये वापरकर्त्यांच्या पसंतीनुसार प्रवासाच्या ठिकाणांसाठी रेकमेंडेशन्स पुनःमुल्यांकन आणि स्कोअरिंगसाठी ट्रॅव्हल एजंट मोठ्या भाषा मॉडेलचा (LLM) कसा वापर करू शकतो याचे उदाहरण आहे:
एका ट्रॅव्हल एजंटला ग्राहकाच्या पसंतीनुसार सर्वोत्तम प्रवासस्थळे सुचवायची आहेत. LLM मदत करते ठिकाणे पुनःमुल्यांकन व स्कोअर करण्यासाठी, ज्यामुळे सुसंगत पर्याय समोर येतात.
मागील उदाहरणात Azure OpenAI सेवा वापरण्यासाठी आपल्याला काय बदल करता येईल ते येथे दाखवले आहे:
import requests
import json
class TravelAgent:
def __init__(self, destinations):
self.destinations = destinations
def get_recommendations(self, preferences, api_key, endpoint):
# Azure OpenAI साठी एक प्रॉम्प्ट तयार करा
prompt = self.generate_prompt(preferences)
# विनंतीसाठी हेडर्स आणि पेलोड परिभाषित करा
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {api_key}'
}
payload = {
"prompt": prompt,
"max_tokens": 150,
"temperature": 0.7
}
# पुनः क्रमवारी लावलेली आणि गुणांनी भरलेली स्थाने प्राप्त करण्यासाठी Azure OpenAI API कॉल करा
response = requests.post(endpoint, headers=headers, json=payload)
response_data = response.json()
# शिफारसी काढा आणि परत करा
recommendations = response_data['choices'][0]['text'].strip().split('\n')
return recommendations
def generate_prompt(self, preferences):
prompt = "Here are the travel destinations ranked and scored based on the following user preferences:\n"
for key, value in preferences.items():
prompt += f"{key}: {value}\n"
prompt += "\nDestinations:\n"
for destination in self.destinations:
prompt += f"- {destination['name']}: {destination['description']}\n"
return prompt
# उदाहरण वापर
destinations = [
{"name": "Paris", "description": "City of lights, known for its art, fashion, and culture."},
{"name": "Tokyo", "description": "Vibrant city, famous for its modernity and traditional temples."},
{"name": "New York", "description": "The city that never sleeps, with iconic landmarks and diverse culture."},
{"name": "Sydney", "description": "Beautiful harbour city, known for its opera house and stunning beaches."},
]
preferences = {"activity": "sightseeing", "culture": "diverse"}
api_key = 'your_azure_openai_api_key'
endpoint = 'https://your-endpoint.com/openai/deployments/your-deployment-name/completions?api-version=2022-12-01'
travel_agent = TravelAgent(destinations)
recommendations = travel_agent.get_recommendations(preferences, api_key, endpoint)
print("Recommended Destinations:")
for rec in recommendations:
print(rec)
इनिशियलायझेशन: TravelAgent वर्ग संभाव्य प्रवासस्थळांच्या यादीने इनिशियलाइझ होतो, ज्यात प्रत्येक ठिकाणाचे नाव आणि वर्णन समाविष्ट आहे.
शिफारसी मिळवणे (get_recommendations पद्धत): ही पद्धत वापरकर्त्याच्या पसंतीवर आधारित Azure OpenAI सेवा साठी प्रॉम्प्ट तयार करते आणि Azure OpenAI API ला HTTP POST विनंती पाठवून ठिकाणांचे पुनःमुल्यांकन व स्कोअरिंग मिळवते.
प्रॉम्प्ट तयार करणे (generate_prompt पद्धत): ही पद्धत वापरकर्त्याच्या पसंती आणि प्रवासस्थळांच्या यादीसह Azure OpenAI साठी प्रॉम्प्ट तयार करते. हा प्रॉम्प्ट मॉडेलला दिलेल्या पसंतीनुसार ठिकाणांचे पुनःमुल्यांकन व स्कोअरिंग करण्यासाठी मार्गदर्शन करतो.
API कॉल: requests लायब्ररी वापरून Azure OpenAI API एन्डपॉईंटवर HTTP POST विनंती केली जाते. प्रतिसादात पुनःमुल्यांकित व स्कोअर केलेले ठिकाणे मिळतात.
उदाहरण वापर: ट्रॅव्हल एजंट वापरकर्त्यांच्या पसंती (उदा. प्रवासातील दृष्टी, विविध संस्कृती) गोळा करून Azure OpenAI सेवा वापरतो जेणेकरून ठिकाणांच्या सूचनांची पुनःमुल्यांकन व स्कोअरिंग मिळेल.
आपल्या खऱ्या Azure OpenAI API कीसाठी your_azure_openai_api_key आणि आपल्या Azure OpenAI डिप्लॉयमेंटच्या खऱ्या एन्डपॉईंट URL साठी https://your-endpoint.com/... बदला याची खात्री करा.
LLM चा पुनःमुल्यांकन व स्कोअरिंगसाठी वापर करून, ट्रॅव्हल एजंट ग्राहकांना अधिक वैयक्तिकृत आणि सुसंगत प्रवास सूचना देऊ शकतो, ज्यामुळे त्यांचा एकूण अनुभव सुधारतो.
Retrieval-Augmented Generation (RAG) हे AI एजंट्सच्या विकासात प्रॉम्प्टिंग तंत्रज्ञान आणि टूल दोन्ही स्वरूपात असू शकते. दोन्हीमध्ये फरक समजून घेणे आपल्याला प्रकल्पांत RAG अधिक प्रभावीपणे वापरण्यास मदत करू शकते.
हे काय आहे?
हे कसे काम करते:
ट्रॅव्हल एजंटमधील उदाहरण:
हे काय आहे?
हे कसे काम करते:
ट्रॅव्हल एजंटमधील उदाहरण:
| बाजू | प्रॉम्प्टिंग तंत्रज्ञान | टूल |
|---|---|---|
| मॅन्युअल विरुद्ध स्वयंचलित | प्रत्येक क्वेरीसाठी मॅन्युअल प्रॉम्प्ट तयार करणे. | पुनर्प्राप्ती आणि निर्माणाची स्वयंचलित प्रक्रिया. |
| नियंत्रण | पुनर्प्राप्ती प्रक्रियेवर अधिक नियंत्रण पुरवते. | पुनर्प्राप्ती व निर्मिती सहज करते व स्वयंचलित करते. |
| लवचिकता | विशिष्ट गरजेनुसार सानुकूल प्रॉम्प्ट तयार करू शकते. | मोठ्या प्रमाणावर वापरासाठी अधिक कार्यक्षम. |
| कठीणपणा | प्रॉम्प्ट तयार करण्यासाठी अधिक मेहनत व अचूकता आवश्यक. | AI एजंटच्या आर्किटेक्चरमध्ये सहज समाकलित करणे सोपे. |
प्रॉम्प्टिंग तंत्रज्ञान उदाहरण:
def search_museums_in_paris():
prompt = "Find top museums in Paris"
search_results = search_web(prompt)
return search_results
museums = search_museums_in_paris()
print("Top Museums in Paris:", museums)
टूल उदाहरण:
class Travel_Agent:
def __init__(self):
self.rag_tool = RAGTool()
def get_museums_in_paris(self):
user_input = "I want to visit museums in Paris."
response = self.rag_tool.retrieve_and_generate(user_input)
return response
travel_agent = Travel_Agent()
museums = travel_agent.get_museums_in_paris()
print("Top Museums in Paris:", museums)
सुसंगतता मूल्यांकन हा AI एजंटची कार्यक्षमता सुनिश्चित करणारा महत्त्वाचा भाग आहे. हे सुनिश्चित करते की एजंटने पुनर्प्राप्त व तयार केलेली माहिती वापरकर्त्यासाठी योग्य, अचूक व उपयुक्त आहे. चला पाहूया AI एजंटमध्ये सुसंगतता कशी मूल्यांकन करतात, व्यावहारिक उदाहरणे आणि तंत्रे यासह.
उदाहरण:
def relevance_score(item, query):
score = 0
if item['category'] in query['interests']:
score += 1
if item['price'] <= query['budget']:
score += 1
if item['location'] == query['destination']:
score += 1
return score
उदाहरण:
def filter_and_rank(items, query):
ranked_items = sorted(items, key=lambda item: relevance_score(item, query), reverse=True)
return ranked_items[:10] # शीर्ष 10 संबंधित वस्तू परत करा
उदाहरण:
def process_query(query):
# वापरकर्त्याच्या चौकशीतून मुख्य माहिती काढण्यासाठी NLP वापरा
processed_query = nlp(query)
return processed_query
उदाहरण:
def adjust_based_on_feedback(feedback, items):
for item in items:
if item['name'] in feedback['liked']:
item['relevance'] += 1
if item['name'] in feedback['disliked']:
item['relevance'] -= 1
return items
येथे ट्रॅव्हल एजंटमध्ये प्रवास शिफारसींची सुसंगतता कशी मूल्यांकन केली जाऊ शकते याचा व्यावहारिक उदाहरण आहे:
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
self.experience_data = []
def gather_preferences(self, preferences):
self.user_preferences = preferences
def retrieve_information(self):
flights = search_flights(self.user_preferences)
hotels = search_hotels(self.user_preferences)
attractions = search_attractions(self.user_preferences)
return flights, hotels, attractions
def generate_recommendations(self):
flights, hotels, attractions = self.retrieve_information()
ranked_hotels = self.filter_and_rank(hotels, self.user_preferences)
itinerary = create_itinerary(flights, ranked_hotels, attractions)
return itinerary
def filter_and_rank(self, items, query):
ranked_items = sorted(items, key=lambda item: self.relevance_score(item, query), reverse=True)
return ranked_items[:10] # शीर्ष १० संबंधित घटक परत करा
def relevance_score(self, item, query):
score = 0
if item['category'] in query['interests']:
score += 1
if item['price'] <= query['budget']:
score += 1
if item['location'] == query['destination']:
score += 1
return score
def adjust_based_on_feedback(self, feedback, items):
for item in items:
if item['name'] in feedback['liked']:
item['relevance'] += 1
if item['name'] in feedback['disliked']:
item['relevance'] -= 1
return items
# उदाहरण वापर
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
itinerary = travel_agent.generate_recommendations()
print("Suggested Itinerary:", itinerary)
feedback = {"liked": ["Louvre Museum"], "disliked": ["Eiffel Tower (too crowded)"]}
updated_items = travel_agent.adjust_based_on_feedback(feedback, itinerary['hotels'])
print("Updated Itinerary with Feedback:", updated_items)
हेतूसह शोध म्हणजे वापरकर्त्याच्या क्वेरीमागील मूळ उद्देश किंवा ध्येय समजून घेऊन सर्वात सुसंगत आणि उपयुक्त माहिती शोधणे आणि तयार करणे. ही पद्धत फक्त कीवर्ड पूर्ण होण्यापेक्षा वापरकर्त्याच्या खरी गरज व संदर्भ पकडण्यावर भर देते.
ट्रॅव्हल एजंट घेऊन पाहूया की हेतूसह शोध कसा अमलात आणता येतो.
वापरकर्त्याच्या पसंत्या गोळा करणे
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
def gather_preferences(self, preferences):
self.user_preferences = preferences
वापरकर्त्याचा हेतू समजून घेणे
def identify_intent(query):
if "book" in query or "purchase" in query:
return "transactional"
elif "website" in query or "official" in query:
return "navigational"
else:
return "informational"
संदर्भ जागरूकता
def analyze_context(query, user_history):
# वापरकर्त्याच्या इतिहासासह चालू चौकशी एकत्र करून संदर्भ समजून घ्या
context = {
"current_query": query,
"user_history": user_history
}
return context
शोधा आणि परिणामांनुसार वैयक्तिकृत करा
def search_with_intent(query, preferences, user_history):
intent = identify_intent(query)
context = analyze_context(query, user_history)
if intent == "informational":
search_results = search_information(query, preferences)
elif intent == "navigational":
search_results = search_navigation(query)
elif intent == "transactional":
search_results = search_transaction(query, preferences)
personalized_results = personalize_results(search_results, user_history)
return personalized_results
def search_information(query, preferences):
# माहितीपर हेतूसाठी उदाहरण शोध लॉजिक
results = search_web(f"best {preferences['interests']} in {preferences['destination']}")
return results
def search_navigation(query):
# नेव्हिगेशनल हेतूसाठी उदाहरण शोध लॉजिक
results = search_web(query)
return results
def search_transaction(query, preferences):
# व्यवहारिक हेतूसाठी उदाहरण शोध लॉजिक
results = search_web(f"book {query} to {preferences['destination']}")
return results
def personalize_results(results, user_history):
# उदाहरण वैयक्तिकरण लॉजिक
personalized = [result for result in results if result not in user_history]
return personalized[:10] # शीर्ष 10 वैयक्तिकृत परिणाम परत करा
उदाहरण वापर
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
user_history = ["Louvre Museum website", "Book flight to Paris"]
query = "best museums in Paris"
results = search_with_intent(query, preferences, user_history)
print("Search Results:", results)
कोड तयार करणारे एजंट AI मॉडेल वापरून कोड लिहितात आणि चालवितात, जटिल समस्या सोडवितात आणि कार्ये स्वयंचलित करतात.
कोड तयार करणारे एजंट जनरेटिव्ह AI मॉडेल वापरून कोड लिहितात आणि चालवितात. हे एजंट वेगवेगळ्या प्रोग्रामिंग भाषा वापरून कोड तयार आणि चालवून जटिल समस्या सोडवू शकतात, कार्य स्वयंचलित करू शकतात आणि मौल्यवान अंतर्दृष्टी प्रदान करू शकतात.
कल्पना करा की तुम्ही एक कोड तयार करणारा एजंट डिझाईन करत आहात. तो कसा कार्य करेल हे खाली दिले आहे:
या उदाहरणात, आपण एक कोड तयार करणारा एजंट, ट्रॅव्हल एजंट, तयार करू जो प्रवास नियोजन करताना वापरकर्त्यांना मदत करेल कोड तयार करून आणि चालवून. हा एजंट प्रवास पर्याय मिळविणे, परिणाम फिल्टर करणे आणि जनरेटिव्ह AI वापरून प्रवासीय कार्यक्रम तयार करण्यास मदत करेल.
वापरकर्ता पसंती गोळा करणे
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
def gather_preferences(self, preferences):
self.user_preferences = preferences
डेटा मिळविण्यासाठी कोड तयार करणे
def generate_code_to_fetch_data(preferences):
# उदाहरण: वापरकर्त्याच्या पसंतीनुसार फ्लाइट शोधण्यासाठी कोड तयार करा
code = f"""
def search_flights():
import requests
response = requests.get('https://api.example.com/flights', params={preferences})
return response.json()
"""
return code
def generate_code_to_fetch_hotels(preferences):
# उदाहरण: हॉटेल शोधण्यासाठी कोड तयार करा
code = f"""
def search_hotels():
import requests
response = requests.get('https://api.example.com/hotels', params={preferences})
return response.json()
"""
return code
तयार कोड चालवणे
def execute_code(code):
# exec वापरून तयार झालेला कोड चालवा
exec(code)
result = locals()
return result
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
flight_code = generate_code_to_fetch_data(preferences)
hotel_code = generate_code_to_fetch_hotels(preferences)
flights = execute_code(flight_code)
hotels = execute_code(hotel_code)
print("Flight Options:", flights)
print("Hotel Options:", hotels)
प्रवासीय कार्यक्रम तयार करणे
def generate_itinerary(flights, hotels, attractions):
itinerary = {
"flights": flights,
"hotels": hotels,
"attractions": attractions
}
return itinerary
attractions = search_attractions(preferences)
itinerary = generate_itinerary(flights, hotels, attractions)
print("Suggested Itinerary:", itinerary)
अभिप्रायानुसार समायोजन
def adjust_based_on_feedback(feedback, preferences):
# वापरकर्ता अभिप्रायावर आधारित प्राधान्ये समायोजित करा
if "liked" in feedback:
preferences["favorites"] = feedback["liked"]
if "disliked" in feedback:
preferences["avoid"] = feedback["disliked"]
return preferences
feedback = {"liked": ["Louvre Museum"], "disliked": ["Eiffel Tower (too crowded)"]}
updated_preferences = adjust_based_on_feedback(feedback, preferences)
# अद्ययावत प्राधान्यांसह कोड पुन्हा तयार करा आणि चालवा
updated_flight_code = generate_code_to_fetch_data(updated_preferences)
updated_hotel_code = generate_code_to_fetch_hotels(updated_preferences)
updated_flights = execute_code(updated_flight_code)
updated_hotels = execute_code(updated_hotel_code)
updated_itinerary = generate_itinerary(updated_flights, updated_hotels, attractions)
print("Updated Itinerary:", updated_itinerary)
टेबलच्या स्कीमावर आधारित विचार केल्यास क्वेरी तयार करण्याच्या प्रक्रियेत पर्यावरणीय जागरूकता आणि तर्कशक्तीचा वापर करता येतो.
हे कसे करता येईल याचे एक उदाहरण येथे आहे:
खालील अद्ययावत Python कोड या संकल्पनांचा समावेश करतो:
def adjust_based_on_feedback(feedback, preferences, schema):
# वापरकर्त्याच्या अभिप्रायावर आधारित प्राधान्ये समायोजित करा
if "liked" in feedback:
preferences["favorites"] = feedback["liked"]
if "disliked" in feedback:
preferences["avoid"] = feedback["disliked"]
# इतर संबंधित प्राधान्ये समायोजित करण्यासाठी स्कीमा आधारित तर्कसंगतता
for field in schema:
if field in preferences:
preferences[field] = adjust_based_on_environment(feedback, field, schema)
return preferences
def adjust_based_on_environment(feedback, field, schema):
# स्कीमा आणि अभिप्रायावर आधारित प्राधान्ये समायोजित करण्यासाठी सानुकूल लॉजिक
if field in feedback["liked"]:
return schema[field]["positive_adjustment"]
elif field in feedback["disliked"]:
return schema[field]["negative_adjustment"]
return schema[field]["default"]
def generate_code_to_fetch_data(preferences):
# अद्यतनित प्राधान्यांवर आधारित उड्डाणाचा डेटा मिळवण्याचा कोड तयार करा
return f"fetch_flights(preferences={preferences})"
def generate_code_to_fetch_hotels(preferences):
# अद्यतनित प्राधान्यांवर आधारित हॉटेल डेटा मिळवण्याचा कोड तयार करा
return f"fetch_hotels(preferences={preferences})"
def execute_code(code):
# कोडची अनुकरणे करा आणि मॉक डेटा परत करा
return {"data": f"Executed: {code}"}
def generate_itinerary(flights, hotels, attractions):
# उड्डाने, हॉटेल आणि आकर्षणे यावर आधारित प्रवासतोक तयार करा
return {"flights": flights, "hotels": hotels, "attractions": attractions}
# उदाहरण स्कीमा
schema = {
"favorites": {"positive_adjustment": "increase", "negative_adjustment": "decrease", "default": "neutral"},
"avoid": {"positive_adjustment": "decrease", "negative_adjustment": "increase", "default": "neutral"}
}
# उदाहरण वापर
preferences = {"favorites": "sightseeing", "avoid": "crowded places"}
feedback = {"liked": ["Louvre Museum"], "disliked": ["Eiffel Tower (too crowded)"]}
updated_preferences = adjust_based_on_feedback(feedback, preferences, schema)
# अद्यतनित प्राधान्यांनुसार कोड पुन्हा तयार करा आणि चालवा
updated_flight_code = generate_code_to_fetch_data(updated_preferences)
updated_hotel_code = generate_code_to_fetch_hotels(updated_preferences)
updated_flights = execute_code(updated_flight_code)
updated_hotels = execute_code(updated_hotel_code)
updated_itinerary = generate_itinerary(updated_flights, updated_hotels, feedback["liked"])
print("Updated Itinerary:", updated_itinerary)
schema शब्दसंग्रह अभिप्रायानुसार पसंती कशा बदलायच्या याची व्याख्या करतो. यात favorites आणि avoid सारखे फील्ड्स आणि त्यांचे समायोजन असते.adjust_based_on_feedback पद्धत): ही पद्धत वापरकर्त्याच्या अभिप्रायानुसार पसंती बदलते व स्कीमा वापरते.adjust_based_on_environment पद्धत): ही पद्धत स्कीमा आणि अभिप्रायानुसार समायोजन सानुकूलित करते.सिस्टम पर्यावरण-आधारित आणि स्कीमा-आधारित तर्कशक्ती वापरल्यामुळे अधिक अचूक आणि सुसंगत क्वेरी तयार करु शकतो आणि त्यामुळे चांगल्या प्रवास शिफारसी व वैयक्तिकृत वापरकर्ता अनुभव देऊ शकतो.
SQL (Structured Query Language) डेटाबेसशी संवाद साधण्यासाठी एक शक्तिशाली साधन आहे. Retrieval-Augmented Generation (RAG) दृष्टिकोनाचा भाग म्हणून वापरल्यास, SQL डेटाबेसमधून संबंधित डेटा मिळविण्यासाठी वापरली जाते जेणेकरून AI एजंटमध्ये प्रतिसाद किंवा क्रिया तयार करता येतील. ट्रॅव्हल एजंटच्या संदर्भात SQL कसा RAG तंत्र म्हणून वापरला जाऊ शकतो ते पाहूया.
उदाहरण: डेटा विश्लेषण एजंट:
वापरकर्ता पसंती गोळा करणे
class Travel_Agent:
def __init__(self):
self.user_preferences = {}
def gather_preferences(self, preferences):
self.user_preferences = preferences
SQL क्वेरीज तयार करणे
def generate_sql_query(table, preferences):
query = f"SELECT * FROM {table} WHERE "
conditions = []
for key, value in preferences.items():
conditions.append(f"{key}='{value}'")
query += " AND ".join(conditions)
return query
SQL क्वेरीज चालवणे
import sqlite3
def execute_sql_query(query, database="travel.db"):
connection = sqlite3.connect(database)
cursor = connection.cursor()
cursor.execute(query)
results = cursor.fetchall()
connection.close()
return results
शिफारसी तयार करणे
def generate_recommendations(preferences):
flight_query = generate_sql_query("flights", preferences)
hotel_query = generate_sql_query("hotels", preferences)
attraction_query = generate_sql_query("attractions", preferences)
flights = execute_sql_query(flight_query)
hotels = execute_sql_query(hotel_query)
attractions = execute_sql_query(attraction_query)
itinerary = {
"flights": flights,
"hotels": hotels,
"attractions": attractions
}
return itinerary
travel_agent = Travel_Agent()
preferences = {
"destination": "Paris",
"dates": "2025-04-01 to 2025-04-10",
"budget": "moderate",
"interests": ["museums", "cuisine"]
}
travel_agent.gather_preferences(preferences)
itinerary = generate_recommendations(preferences)
print("Suggested Itinerary:", itinerary)
फ्लाइट क्वेरी
SELECT * FROM flights WHERE destination='Paris' AND dates='2025-04-01 to 2025-04-10' AND budget='moderate';
हॉटेल क्वेरी
SELECT * FROM hotels WHERE destination='Paris' AND budget='moderate';
आकर्षणे क्वेरी
SELECT * FROM attractions WHERE destination='Paris' AND interests='museums, cuisine';
Retrieval-Augmented Generation (RAG) तंत्राचा भाग म्हणून SQL चा लाभ घेत AI एजंट्स, जसे की ट्रॅव्हल एजंट, डायनॅमिकपणे संबंधित डेटा मिळवू शकतात आणि त्याचा वापर अचूक आणि वैयक्तिकृत शिफारसी देण्यासाठी करू शकतात.
त्यामुळे metacognition चे अंमलबजावणी दाखवण्यासाठी, आपण एक सोपा एजंट तयार करू जो त्याच्या निर्णय प्रक्रियेवर विचार करतो समस्या सोडवताना. या उदाहरणासाठी, आपण असा सिस्टम तयार करू जिथे एजंट हॉटेल निवडण्याचा प्रयत्न करतो, पण नंतर त्याच्या स्वतःच्या तर्कशक्तीचे मूल्यमापन करतो आणि चुका किंवा अपूर्ण निर्णयावर त्याची रणनीती समायोजित करतो.
आपण हे साधे उदाहरण वापरून अनुकरण करू जेथे एजंट किंमत आणि गुणवत्तेच्या मिश्रणावर हॉटेल निवडतो, पण तो त्याच्या निर्णयांवर “परावर्तित” होतो आणि त्यानुसार समायोजन करतो.
येथे एक उदाहरण आहे:
class HotelRecommendationAgent:
def __init__(self):
self.previous_choices = [] # पूर्वी निवडलेल्या हॉटेल्स साठवते
self.corrected_choices = [] # दुरुस्त केलेल्या निवडी साठवते
self.recommendation_strategies = ['cheapest', 'highest_quality'] # उपलब्ध धोरणे
def recommend_hotel(self, hotels, strategy):
"""
Recommend a hotel based on the chosen strategy.
The strategy can either be 'cheapest' or 'highest_quality'.
"""
if strategy == 'cheapest':
recommended = min(hotels, key=lambda x: x['price'])
elif strategy == 'highest_quality':
recommended = max(hotels, key=lambda x: x['quality'])
else:
recommended = None
self.previous_choices.append((strategy, recommended))
return recommended
def reflect_on_choice(self):
"""
Reflect on the last choice made and decide if the agent should adjust its strategy.
The agent considers if the previous choice led to a poor outcome.
"""
if not self.previous_choices:
return "No choices made yet."
last_choice_strategy, last_choice = self.previous_choices[-1]
# समजा काही वापरकर्ता अभिप्राय आहे जो सांगतो की शेवटची निवड चांगली होती की नाही
user_feedback = self.get_user_feedback(last_choice)
if user_feedback == "bad":
# मागील निवड असमाधानकारक असल्यास धोरण समायोजित करा
new_strategy = 'highest_quality' if last_choice_strategy == 'cheapest' else 'cheapest'
self.corrected_choices.append((new_strategy, last_choice))
return f"Reflecting on choice. Adjusting strategy to {new_strategy}."
else:
return "The choice was good. No need to adjust."
def get_user_feedback(self, hotel):
"""
Simulate user feedback based on hotel attributes.
For simplicity, assume if the hotel is too cheap, the feedback is "bad".
If the hotel has quality less than 7, feedback is "bad".
"""
if hotel['price'] < 100 or hotel['quality'] < 7:
return "bad"
return "good"
# हॉटेल्सची यादी अनुकरण करा (किंमत आणि गुणवत्ता)
hotels = [
{'name': 'Budget Inn', 'price': 80, 'quality': 6},
{'name': 'Comfort Suites', 'price': 120, 'quality': 8},
{'name': 'Luxury Stay', 'price': 200, 'quality': 9}
]
# एक एजंट तयार करा
agent = HotelRecommendationAgent()
# पायरी 1: एजंट "सर्वात स्वस्त" धोरण वापरून हॉटेलची शिफारस करतो
recommended_hotel = agent.recommend_hotel(hotels, 'cheapest')
print(f"Recommended hotel (cheapest): {recommended_hotel['name']}")
# पायरी 2: एजंट निवडीचा विचार करतो आणि आवश्यक असल्यास धोरण समायोजित करतो
reflection_result = agent.reflect_on_choice()
print(reflection_result)
# पायरी 3: एजंट पुन्हा शिफारस करतो, या वेळी समायोजित धोरण वापरून
adjusted_recommendation = agent.recommend_hotel(hotels, 'highest_quality')
print(f"Adjusted hotel recommendation (highest_quality): {adjusted_recommendation['name']}")
मुख्य मुद्दा म्हणजे एजंटची क्षमता:
ही metacognition चे एक सोपे रूप आहे जिथे सिस्टम अंतर्गत अभिप्रायाच्या आधारावर त्याच्या तर्कशक्तीची प्रक्रिया समायोजित करू शकतो.
Metacognition ही एक शक्तिशाली साधन आहे जी AI एजंट्सच्या क्षमतांना महत्वाने वाढवू शकते. metacognitive प्रक्रियेचा समावेश करून तुम्ही अधिक बुद्धिमान, अनुकूलनीय आणि कार्यक्षम एजंट डिझाईन करू शकता. AI एजंट्समधील metacognition च्या आकर्षक जगात अधिक अभ्यास करण्यासाठी अतिरिक्त संसाधने वापरा.
Microsoft Foundry Discord मध्ये सामील व्हा जेथे तुम्ही इतर शिकणाऱ्यांशी भेटू शकता, ऑफिस तासांना हजर राहू शकता आणि तुमचे AI एजंट्स संबंधी प्रश्न विचारू शकता.
अस्वीकरण: हा दस्तऐवज AI भाषांतर सेवा Co-op Translator चा वापर करून अनुवादित केला आहे. जरी आम्ही अचूकतेसाठी प्रयत्न करतो, तरी कृपया लक्षात घ्या की स्वयंचलित भाषांतरांमध्ये त्रुटी किंवा अचूकतेची कमतरता असू शकते. मूळ दस्तऐवज त्याच्या मूळ भाषेत अधिकृत स्रोत मानला पाहिजे. महत्त्वाची माहिती असल्यास, व्यावसायिक मानवी भाषांतराची शिफारस केली जाते. या भाषांतराच्या वापरामुळे उद्भवणाऱ्या कोणत्याही गैरसमज किंवा चुकीच्या अर्थलावणीसाठी आम्ही जबाबदार नाही.