(ఈ పాఠం యొక్క వీడియోను చూడటానికి పై చిత్రం పై క్లిక్ చేయండి)
AI ఏజెంట్లలో మెటాకాగ్నిషన్
AI ఏజెంట్లలో మెటాకాగ్నిషన్ గురించి పాఠానికి స్వాగతం! ఈ అధ్యాయం, AI ఏజెంట్లు తమ స్వంత ఆలోచన ప్రక్రియల గురించి ఎలా ఆలోచిస్తాయి అనేది తెలుసుకోవాలని ఆసక్తి ఉన్న ప్రారంభికుల కోసం రూపొందించబడింది. ఈ పాఠం ముగిసిన తరువాత, మీరు ప్రధాన సంకల్పాలను అర్థం చేసుకుంటారు మరియు AI ఏజెంట్ డిజైన్లో మెటాకాగ్నిషన్ని వర్తింప చేసుకునేందుకు ప్రాక్టికల్ ఉదాహరణలతో సన్నద్ధమవుతారు.
ఈ పాఠం పూర్తి చేసిన తర్వాత, మీరు చేయగలరు:
మెటాకాగ్నిషన్ అంటే ఒకరి స్వంత ఆలోచన గురించి ఆలోచించే ఉన్నత స్థాయి జ్ఞాన ప్రక్రియలు. AI ఏజెంట్లకు, ఇది స్వీయ-ज్ఞానం మరియు గత అనుభవాల ఆధారంగా తమ చర్యలు మూల్యాంకనం చేసి సర్దుబాటు చేసుకోవడమే. “ఆలోచన గురించి ఆలోచన” అంటే మెటాకాగ్నిషన్, ఏజెంటిక్ AI వ్యవస్థల అభివృద్ధిలో ఒక ముఖ్యమైన భావన. ఇది AI వ్యవస్థలు తమ అంతర్గత ప్రక్రియలను తెలుసుకొని, తన ప్రవర్తనను పర్యవేక్షించి, నియంత్రించి, తగినట్లుగా మార్చగలగడం. మేము ఒక గది వాతావరణం తెలుసుకునేటప్పుడు లేదా ఒక సమస్యను పరిశీలిస్తామన్నట్లుగా. ఈ స్వీయ-ज్ఞానం AI వ్యవస్థలకు మెరుగైన నిర్ణయాలు తీసుకోవడం, తప్పులు గుర్తించడం మరియు సమయానుకూలంగా వారి ప్రదర్శనను మెరుగుపరచడంలో సహాయపడుతుంది—తూరింగ్ పరీక్ష మరియు AI takeover మీద ఉన్న చర్చలకు కూడా ఇది సంబంధం కలిగి ఉంది.
ఏజెంటిక్ AI వ్యవస్థల సందర్భంలో, మెటాకాగ్నిషన్ ఈ క్రింది ఎన్నో సవాళ్లను పరిష్కరించడంలో సహాయపడుతుంది:
మెటాకాగ్నిషన్ లేదా “ఆలోచన గురించి ఆలోచన” అనేది ఒక ఉన్నత-స్థాయి జ్ఞాన ప్రక్రియ, ఇది వ్యక్తి యొక్క జ్ఞాన ప్రక్రియలను స్వీయ-ज్ఞానం మరియు స్వీయ-నియంత్రణతో సంక్రమిస్తుంది. AI డొమైన్లో, మెటాకాగ్నిషన్ ఏజెంట్లకు తమ వ్యూహాలు మరియు చర్యలను మూల్యాంకనం చేసి అనుసరించడానికి శక్తివంతంగా చేస్తుంది, ఫలితంగా మెరుగైన సమస్య పరిష్కారం మరియు నిర్ణయ సామర్థ్యాలు ఉన్నాయి. మెటాకాగ్నిషన్ అర్థం చేసుకున్నట్లయితే, మీరు మరింత మేధావిగా కాకుండా, మరింత అనుకూలించదగిన మరియు సమర్థవంతమైన AI ఏజెంట్లను డిజైన్ చేయవచ్చు. నిజమైన మెటాకాగ్నిషన్ లో, AI తన స్వంత తర్కాన్ని స్పష్టంగా ఆలోచిస్తుంది.
ఉదాహరణ: “నేను తక్కువ ఖర్చరి విమానాలను ప్రాధాన్యం ఇచ్చాను ఎందుకంటే… నేను నేరుగా విమానాలు కోల్పోను భావించి, కాబట్టి తిరిగి తనిఖీ చేద్దాం.” ఎట్లా లేదా ఎందుకు ఒక నిర్దిష్ట మార్గాన్ని ఎంచుకుంది అని గమనించడం.
AI ఏజెంట్ డిజైన్లో మెటాకాగ్నిషన్ అనేక కారణాల వల్ల కీలక పాత్ర పోషిస్తుంది:

మెటాకాగ్నిటివ్ ప్రక్రియల్లోకి వెళ్లే ముందు, AI ఏజెంట్ యొక్క ప్రాథమిక భాగాలను అర్థం చేసుకోవడం ముఖ్యం. ఒక AI ఏజెంట్ సాధారణంగా కలిగి ఉంటుంది:
ఈ భాగాలు కలిసి ఒక “నైపుణ్య యూనిట్లు” సృష్టించి నిర్దిష్ట పనులను నిర్వహిస్తాయి.
ఉదాహరణ: మీ ప్రయాణం కోసం సర్వీస్ చేసే ట్రావెల్ ఏజెంట్ గురించి భావించండి, ఇది రియల్-టైమ్ డేటా మరియు గత కస్టమర్ ప్రయాణ అనుభవాల ఆధారంగా మార్గాన్ని అనుకూలంగా సర్దుబాటు చేస్తుంది.
మీరు 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)
# అభిప్రాయాలను విశ్లేషించి భవిష్యత్తు సిఫారಸ್ತಿgలను సర్దుబాటు చేయండి
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 విధానం AI ఏజెంట్లలో దోషాలను సరి చేసేందుకు మరియు ఖచ్చితత్వాన్ని మెరుగుపరచేందుకు RAG సాంకేతికతలను ఉపయోగించడంపై దృష్టి కలిగిఉంటుంది. ఇది شامل:
ఏజెంట్ వెబ్ నుండి వినియోగదారుల ప్రశ్నలకు సమాధానమిచ్చేందుకు సమాచారాన్ని తీసుకుంటుంది. సరిదిద్దు RAG విధానం ఈ విధంగా ఉండవచ్చు:
సరిదిద్దు RAG (రిట్రీవల్-ఆగ్మెంటెడ్ జనరేషన్) ఏజెంట్ లో దోషాలను సరి చేసుకోగలగడం మరియు ఖచ్చితమైన సమాచారాన్ని అందించడం సామర్ధ్యాన్ని పెంచుతుంది. ట్రావెల్ ఏజెంట్ సరిదిద్దు 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__ method): TravelAgent క్లాస్ ప్యారిస్, టోక్యో, న్యూ యార్క్, సిడ్నీ లాంటి ప్రజాదరణ పొందిన గమ్యస్థానాల సమాచారం కలిగిన డిక్షనరీని ముందుగా లోడ్ చేస్తుంది. ఈ డిక్షనరీలో ప్రతి గమ్యస్థానానికి దేశం, కరెన్సీ, భాష, ప్రధాన ఆకర్షణలు వంటి వివరాలు ఉంటాయి.
సమాచారం పొందడం (get_destination_info method): ఒక వినియోగదారు నిర్దేశించిన గమ్యస్థానం గురించి ప్రశ్నించినప్పుడు, 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__ method): TravelAgent క్లాస్ సాధ్యమైన గమ్యస్థానాల జాబితాను (ప్రతీ గమ్యస్థానం పేరు, ఖర్చు, కార్యాచరణ రకం వంటి లక్షణాలతో) తో ప్రారంభించబడుతుంది.
బూట్స్ట్రాపింగ్ ప్లాన్ (bootstrap_plan method): ఈ పద్ధతి క్లయింట్ ఎంపికలు మరియు బడ్జెట్ అలవాట్లపై ఆధారంగా ప్రాథమిక ప్రయాణ ప్రణాళికను సృష్టిస్తుంది. ఎంపికలకు సరిపోలే మరియు బడ్జెట్లో సరిపోతే గమ్య స్థానాలను ప్లాన్లో చేర్చుతుంది.
ఎంపికలకు సరిపోలిక (match_preferences method): ఈ పద్ధతి ఒక గమ్యస్థానం క్లయింట్ ఎంపికలకు సరిపోతుందా అని తనిఖీ చేస్తుంది.
ప్లాన్ పునరావృతం (iterate_plan method): ఈ పద్ధతి ప్రాథమిక ప్లాన్ను మెరుగుపరుస్తుంది, ప్రణాళికలో ప్రతి గమ్యస్థానాన్ని క్లయింట్ ఎంపికలు మరియు బడ్జెట్ పరిమితుల ఆధారంగా ఉత్తమమయిన గమ్యస్థానంతో మార్చేందుకు ప్రయత్నిస్తుంది.
ఖర్చు లెక్కింపు (calculate_cost method): ఈ పద్ధతి ప్రస్తుత ప్రణాళిక యొక్క మొత్తం ఖర్చును మరియు కొత్త గమ్యస్థానం ఖర్చును లెక్కిస్తుంది.
స్పష్టమైన లక్ష్యంతో (ఉదా: క్లయింట్ సంతృప్తిని గరిష్టం చేయడం) ప్లాన్ బూట్స్ట్రాపింగ్ చేసి దాన్ని పునరావృతం చేయడం ద్వారా, ట్రావెల్ ఏజెంట్ క్లయింట్ కోసం అనుకూలంగా మరియు ఆప్టిమైజ్ చేయబడ్డ ప్రయాణ ప్రణాళికను సృష్టించగలడు. ఈ పద్ధతి ప్రారంభం నుండే క్లయింట్ ఎంపికలు మరియు బడ్జెట్కు ప్లాన్ సర్దుబాటుపడుతుంది మరియు ప్రతీ పునరావృతంతో మెరుగుపడుతుంది.
పెద్ద భాషా మోడళ్లు (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 method): ఈ పద్ధతి వినియోగదారు ఎంపికల ఆధారంగా Azure OpenAI సర్వీస్కు ఒక ప్రాంప్ట్ని రూపొందించి HTTP POST అభ్యర్థన చేస్తుంది, రీ-రాంక్ మరియు స్కోర్ చేసిన గమ్యస్థానాలను పొందుతుంది.
ప్రాంప్ట్ తయారీ (generate_prompt method): ఈ పద్ధతి Azure OpenAIకి వినియోగదారు ఎంపికలు మరియు గమ్యస్థానాల జాబితాను పక్కన పెట్టి ఒక ప్రాంప్ట్ని నిర్మిస్తుంది. ఈ ప్రాంప్ట్ మోడల్ను ఆ గమ్యస్థానాలను రీ-రాంక్ చేసి స్కోర్ చేయమని సూచిస్తుంది.
API కాల్: requests లైబ్రరీ ఉపయోగించి Azure OpenAI API ఎండ్పాయింట్కు HTTP POST అభ్యర్థన పంపబడుతుంది. ప్రతిస్పందనలో రీ-ర్యాంక్ మరియు స్కోర్ చేసిన గమ్యస్థానాలు ఉంటాయి.
ఉదాహరణ వాడుక: ట్రావెల్ ఏజెంట్ వినియోగదారు ఎంపికలను (ఉదా: సైట్లను సందర్శించడంలో ఆసక్తి మరియు వివిధ సంస్కృతి) సేకరించి Azure OpenAI సర్వీస్ ఉపయోగించి రీ-రాంక్ మరియు స్కోర్ చేసిన సిఫారసులు పొందుతాడు.
your_azure_openai_api_key ను మీ నిజమైన Azure OpenAI API కీతో మరియు https://your-endpoint.com/... ను మీ Azure OpenAI అమరిక యొక్క వాస్తవ ఎండ్పాయింట్ URLతో మార్చుకోవడం మర్చిపోకండి.
LLMను రీ-ర్యాంకింగ్ మరియు స్కోరింగ్ కోసం వినియోగించడం ద్వారా, ట్రావెల్ ఏజెంట్ మరింత వ్యక్తిగతీకరించిన మరియు సంబంధిత ట్రావెల్ సిఫారసులను క్లయింట్లకు అందించి వారి సార్వత్రిక అనుభవాన్ని మెరుగుపరుచగలడు.
Retrieval-Augmented Generation (RAG) AI ఏజెంట్ల అభివృద్ధిలో ఒకటి ప్రాంప్టింగ్ సాంకేతికతగా మరియు మరోటి సాధనంగా ఉండవచ్చు. వీటి మధ్య తేడాను అర్థం చేసుకోవడం ద్వారా మీరు RAGను మీ ప్రాజెక్టుల్లో మరింత సమర్థవంతంగా ఉపయోగించుకోవచ్చు.
ఇది ఏమిటి?
ఇది ఎలా పని చేస్తుంది:
ట్రావెల్ ఏజెంట్లో ఉదాహరణ:
ఇది ఏమిటి?
ఇది ఎలా పని చేస్తుంది:
ట్రావెల్ ఏజెంట్లో ఉదాహరణ:
| అంశం | ప్రాంప్టింగ్ సాంకేతికత | సాధనం |
|---|---|---|
| మాన్యువల్ vs ఆటోమేటిక్ | ప్రతీ ప్రశ్నకు ప్రాంప్టులను మనually రూపొందించడం. | పునఃప్రాప్తి మరియు జనరేషన్ కోసం ఆటోమేటిక్ ప్రాసెస్. |
| నియంత్రణ | పునఃప్రాప్తి ప్రక్రియపై ఎక్కువ నియంత్రణ ఇస్తుంది. | పునఃప్రాప్తి మరియు జనరేషన్ ప్రక్రియను సరళీకృతం చేస్తుంది. |
| లచీలుతనం | ప్రత్యేక అవసరాల కోసం అనుకూల ప్రాంప్టులు అనుమతిస్తుంది. | పెద్ద ప్రామాణిక అమలులకు మరింత సమర్థవంతం. |
| సంక్లిష్టత | ప్రాంప్టులు రూపొందించడం మరియు సవరించడం అవసరం. | 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] # టాప్ 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):
# personalization లాజిక్ యొక్క ఉదాహరణ
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 (స్ట్రక్చర్డ్ క్వైరీ లాంగ్వేజ్) డేటాబేస్లతో ఇంటరాక్ట్ చేయడానికి శక్తివంతమైన సాధనం. 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 ఏజెంట్లు సంబంధిత డేటాను డైనమిక్గా పొందగలుగుతాయి మరియు ఖచ్చితమైన, వ్యక్తిగతీకరించిన సిఫార్సులు అందించగలుగుతాయి.
కాబట్టి మెటాకాగ్నిషన్ అమలును చూపించడానికి, ఒక సింపుల్ ఏజెంట్ను సృష్టిద్దాం, ఇది సమస్య పరిష్కరిస్తూ తన నిర్ణయ ప్రక్రియపై ఆలోచిస్తుంది. ఈ ఉదాహరణకు, ఒక ఏజెంట్లు హోటల్లు ఎంపిక చేసినవళ్ళను ఆప్టిమైజ్ చేయడానికి ప్రయత్నించి ఆ తర్వాత తాము చేసిన తప్పులు లేదా లోపాలను గుర్తించి తమ తర్కాన్ని సరిదిద్దుకుంటుంది.
మేము ఒక సింపుల్ ఉదాహరణతో దీనిని సిమ్యులేట్ చేస్తాము, ఇందులో ఏజెంట్ ధర మరియు నాణ్యత ఆధారంగా హోటల్స్ను ఎంపిక చేస్తుంది, కానీ తన నిర్ణయాలను “ప్రతిబింబిస్తుంది” మరియు అవసరమైతే సర్దుబాటు చేస్తుంది.
ఉదాహరణ:
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']}")
ఇక్కడ కీలకం ఏజెంట్ వారి:
ఇది ఒక సింపుల్ మెటాకాగ్నిషన్ రూపం, దీంట్లో సిస్టమ్ అంతర్గత ఫీడ్బ్యాక్ ఆధారంగా తన తర్కాన్ని సవరించగలదు.
మెటాకాగ్నిషన్ ఒక శక్తివంతమైన సాధనం, ఇది AI ఏజెంట్ల సామర్థ్యాలను గణనీయంగా పెంచుతుంది. మెటాకాగ్నిటివ్ ప్రాసెస్లను జోడించి, మీరు మునుపటి కంటే తెలివైన, అనుకూలమైన, మరియు సమర్థవంతమైన ఏజెంట్లను రూపకల్పన చేయవచ్చు. మెటాకాగ్నిషన్ ప్రపంచాన్ని మరింత లోతుగా తెలుసుకోవడానికి అదనపు వనరులను ఉపయోగించండి.
ఇతర అభ్యాసకులతో కలుసుకోవడానికి, ఆఫీస్ అవర్స్లో పాల్గొనడానికి, మరియు మీ AI ఏజెంట్లకు సంబంధించిన ప్రశ్నలకు సమాధానాలు పొందడానికి Microsoft Foundry Discordలో చేరండి.
అస్వీకరణ: ఈ పత్రం AI అనువాద సేవ Co-op Translator ఉపయోగించి అనువదించబడింది. మేము ఖచ్చితత్వానికి ప్రయత్నిస్తున్నప్పటికీ, ఆటోమేటెడ్ అనువాదాలు తప్పులు లేదా అసమగ్రతలను కలిగి ఉండవచ్చు. దాని స్వదేశ భాషలో ఉన్న అసలు పత్రాన్ని అధికారం కలిగిన మూలంగా పరిగణించాలి. కీలకమైన సమాచారం కోసం, ప్రొఫెషనల్ మానవ అనువాదాన్ని సిఫారసు చేస్తాము. ఈ అనువాదం ఉపయోగం వల్ల కలిగే ఏవైనా అపార్థాలు లేదా తప్పుదారులు కోసం మేము బాధ్యత వహించము.