(ចុចលើរូបភាពខាងលើដើម្បីមើលវីដេអូមេរៀននេះ)
ការគិតពីការគិត (Metacognition) ក្នុងភ្នាក់ងារបច្ចេកវិទ្យាបញ្ញាសិប្បនិម្មិត
ស្វាគមន៍មកកាន់មេរៀនអំពីការគិតពីការគិតក្នុងភ្នាក់ងារបច្ចេកវិទ្យាបញ្ញាសិប្បនិម្មិត! ជំពូកនេះត្រូវបានរចនាសម្រាប់អ្នកចាប់ផ្តើមដែលចង់ដឹងពីរបៀបដែលភ្នាក់ងារបញ្ញាសិប្បនិម្មិតអាចគិតអំពីដំណើរការគិតរបស់ខ្លួន។ នៅចុងបញ្ចប់មេរៀននេះ អ្នកនឹងយល់ពីគំនិតស្នូល និងមានឧទាហរណ៍ជាក់ស្តែងដើម្បីអនុវត្តការគិតពីការគិតក្នុងការរចនាភ្នាក់ងារបញ្ញាសិប្បនិម្មិត។
បន្ទាប់ពីបញ្ចប់មេរៀននេះ អ្នកនឹងអាច៖
ការគិតពីការគិតមានន័យជាជំហានគិតជាថ្នាក់ខ្ពស់ដែលពាក់ព័ន្ធនឹងការគិតអំពីដំណើរការគិតរបស់ខ្លួន។ សម្រាប់ភ្នាក់ងារបញ្ញាសិប្បនិម្មិត នេះមានន័យថាអាចវាយតម្លៃ និងកែសម្រួលសកម្មភាពរបស់ខ្លួនដោយផ្អែកលើការយល់ដឹងខ្លួន និងបទពិសោធន៍ពីមុន។ ការគិតពីការគិត ឬ “ការគិតអំពីការគិត” គឺជាគំនិតសំខាន់មួយនៅក្នុងការអភិវឌ្ឍប្រព័ន្ធភ្នាក់ងារបញ្ញាសិប្បនិម្មិត។ វាផ្ដោតទៅលើប្រព័ន្ធ AI ដែលមានការយល់ដឹងពីដំណើរការជិតខាងរបស់ខ្លួន ហើយអាចត្រួតពិនិត្យ គ្រប់គ្រង និងប្តូរភាពប្រតិបត្តិការតាមបានយ៉ាងត្រឹមត្រូវ។ ដូចជាអ្នកធ្វើពេលដែលយើងអានស្ថានភាព ឬមើលបញ្ហា។ ការយល់ដឹងខ្លួននេះអាចជួយប្រព័ន្ធ AI ទទួលបានការសម្រេចចិត្តល្អប្រសើរជាងមុន ស្គាល់កំហុស និងពង្រឹងការប្រតិបត្តិការរបស់ខ្លួនយ៉ាងមានប្រសិទ្ធិភាពលើរយៈពេល - ជំនួយទាក់ទងកាន់សាកល្បង Turing និងការជជែកគ្នាពីការតើបច្ចេកវិទ្យាបញ្ញាសិប្បនិម្មិតនឹងគ្រប់គ្រងមនុស្ស។
ក្នុងបរិបទប្រព័ន្ធ 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)
# វិភាគមតិពីរបាយការណ៍និងកែប្រែការផ្តល់អនុសាសន៍នៅពេលអនាគត
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)
ដោយបញ្ចូលការគិតពីការគិត ភ្នាក់ងារធ្វើដំណើរអាចផ្តល់អនុសាសន៍ផ្ទាល់ខ្លួនប្រសើរ និងត្រឹមត្រូវខ្ពស់ បង្កើនបទពិសោធន៍អ្នកប្រើជាទូទៅ។
ការធ្វើផែនជាផ្នែកសំខាន់នៃអាកប្បកម្មភ្នាក់ងារបញ្ញាសិប្បនិម្មិត។ វារួមមានការរៀបចំហានដែលត្រូវការដើម្បីសម្រេចគោលដៅ ដោយគិតถึงស្ថានភាពបច្ចុប្បន្ន ធនធាន និងឧបសគ្គដែលអាចកើតមាន។
ឧទាហរណ៍: នេះជាជំហានដែលភ្នាក់ងារធ្វើដំណើរត្រូវជួយអ្នកប្រើក្នុងការរៀបចំដំណើរយ៉ាងមានប្រសិទ្ធិភាព៖
១. ប្រមូលចំណូលចិត្តអ្នកប្រើ
២. ស្វែងរកព័ត៌មាន
៣. បង្កើតអនុសាសន៍
៤. បង្ហាញផែនការទៅអ្នកប្រើ
៥. ប្រមូលមតិយោបល់
៦. កែសំរួលដោយផ្អែកលើមតិយោបល់
៧. បញ្ជាក់ចុងក្រោយ
៨. កក់ និងបញ្ជាក់ ការកក់
៩. ផ្តល់ការគាំទ្រនៅពេលកំពុងធ្វើដំណើរ
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 ដើម្បីកែតម្រូវកំហុស និងពង្រឹងភាពត្រឹមត្រូវនៃភ្នាក់ងារបញ្ញាសិប្បនិម្មិត។ វារួមមាន៖
១. បច្ចេកទេសបញ្ចូលបញ្ជា (Prompting Technique)៖ ប្រើបញ្ជាគោលដៅជាក់លាក់ដើម្បីណែនាំភ្នាក់ងារទាញយកព័ត៌មានដែលពាក់ព័ន្ធ។ ២. ឧបករណ៍ (Tool)៖ អនុវត្ត thuật toán និងមេកានីស្មដែលជួយឲ្យភ្នាក់ងារវាយតម្លៃភាពពាក់ព័ន្ធនៃព័ត៌មានដែលបានទាញយក និងបង្កើតចម្លើយត្រឹមត្រូវ។ ៣. ការវាយតម្លៃ (Evaluation)៖ ប្រើវិធីសាស្រ្តវាយតម្លៃប្រតិបត្តិការភ្នាក់ងារ បន្ថែមវិធីកែប្រែដើម្បីប្រសើរឡើង។
គិតពីភ្នាក់ងារស្វែងរកដែលទាញព័ត៌មានពីវែបសាយដើម្បីឆ្លើយសំណួរអ្នកប្រើ។ វិធី RAG កែតម្រូវកំហុស អាចរួមមាន៖
១. បច្ចេកទេសបញ្ចូលបញ្ជា៖ កំណត់សំណួរស្វែងរកដោយផ្អែកលើបញ្ចូលរបស់អ្នកប្រើ។ ២. ឧបករណ៍៖ ប្រើការលៃតម្រូវភាសាធម្មជាតិ និង thuật toánការសិក្សាម៉ាស៊ីនដើម្បីចាត់ថ្នាក់និងច្រោះលទ្ធផលស្វែងរក។ ៣. ការវាយតម្លៃ៖ វិភាគមតិយោបល់អ្នកប្រើដើម្បីរកកំហុសក្នុងព័ត៌មានដែលបានទាញយក និងកែតម្រូវ។
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)"]
}
៥. ដំណើរការកែតម្រូវ RAG
ឧទាហរណ៍៖
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)
នេះជាឧទាហរណ៍កូដ ភាសា Python ធម្មតា ដែលបញ្ចូលវិធី RAG កែតម្រូវកំហុសក្នុងភ្នាក់ងារធ្វើដំណើរ៖
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)
ការផ្ទុកបទបរិបទជាមុនពេល (Pre-emptive Context Load) វាយបញ្ចូលការផ្ទុកព័ត៌មានបរិបទឬព័ត៌មានផ្ទៃខាងក្រោយដែលពាក់ព័ន្ធទៅក្នុងម៉ូឌែលមុនពេលបំលែងសំណួរ។ អ្វីនេះមានន័យថា ម៉ូឌែលមានសមត្ថភាពចូលដំណើរការព័ត៌មាននេះតាំងពីដើម ដែលអាចជួយឱ្យវាបង្កើតចម្លើយដែលមានព័ត៌មានឲ្យបានច្បាស់ និងមានផ្ទាំង ច្រើនជាង ដោយមិនចាំបាច់យកព័ត៌មានបន្ថែមនៅពេលដំណើរការ។
នេះជាឧទាហរណ៍សាមញ្ញមួយនៃរបៀបដែលការផ្ទុកបទបរិបទជាមុនអាចមើលឃើញសម្រាប់កម្មវិធីភ្នាក់ងារធ្វើដំណើរជាមួយ 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 សម្រាប់ការរៀបចំឡើងវិញ និងចំម្លងពិន្ទុ ប្រព័ន្ធអាចផ្ដល់ព័ត៌មានដែលមានភាពត្រឹមត្រូវ និងពាក់ព័ន្ធជាមួយបរិបទបានកាន់តែល្អ កែលម្អបទពិសោធន៍អ្នកប្រើសរុប។
នេះជាឧទាហរណ៍ពីរបៀបដែលភ្នាក់ងារធ្វើដំណើរអាចប្រើបច្ចេកវិជ្ជាម៉ូឌែលភាសាធំ (LLM) សម្រាប់ការរៀបចំឡើងវិញ និងចំម្លងពិន្ទុកគោលដៅធ្វើដំណើរផ្អែកលើចំណូលចិត្តរបស់អ្នកប្រើប្រាស់ក្នុង Python៖
ភ្នាក់ងារធ្វើដំណើរមានបំណងផ្តល់អនុសាសន៍គោលដៅធ្វើដំណើរល្អបំផុតទៅអតិថិជនផ្អែកលើចំណូលចិត្តរបស់ពួកគេ។ 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
}
# ហៅ API Azure OpenAI ដើម្បីទទួលបានគោលដៅដែលបានចាត់ថ្នាក់ទំនងឡើងវិញនិងបានពិន្ទុ
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 ផ្អែកលើចំណូលចិត្តរបស់អ្នកប្រើ និងធ្វើការស្នើសុំ HTTP POST ទៅ API Azure OpenAI ដើម្បីទទួលបានការរៀបចំឡើងវិញ និងចំម្លងពិន្ទុគោលដៅ។
បង្កើតបញ្ចូលសំរាប់សំណើ (generate_prompt វិធីសាស្រ្ត): វិធីសាស្រ្តនេះកសាងបញ្ចូលសម្រាប់ Azure OpenAI ដែលរួមបញ្ចូលចំណូលចិត្តអ្នកប្រើ និងបញ្ជីគោលដៅ។ បញ្ចូលនេះណែនាំម៉ូឌែលឲ្យរៀបចំឡើងវិញ និងចំម្លងពិន្ទុគោលដៅ ដោយផ្អែកលើចំណូលចិត្តដែលបានផ្ដល់។
ការហៅ API: ក្រុមហ៊ុន requests ត្រូវបានប្រើដើម្បីធ្វើសំណើ HTTP POST ទៅចំណុចបណ្ដាញ API Azure OpenAI។ ការឆ្លើយតបមានគោលដៅដែលបានរៀបចំឡើងវិញ និងចំម្លងពិន្ទុ។
ឧទាហរណ៍ការប្រើប្រាស់: ភ្នាក់ងារធ្វើដំណើរប្រមូលចំណូលចិត្តអ្នកប្រើ (ឧ. ចំណាប់អារម្មណ៍ក្នុងការទស្សនាផ្លូវការ និងវប្បធម៌ចម្រុះ) ហើយប្រើសេវាកម្ម Azure OpenAI ដើម្បីទទួលបានអនុសាសន៍ដែលបានរៀបចំឡើងវិញ និងចំម្លងពិន្ទុ។
សូមប្រាកដជាប្ដូរទីតាំង your_azure_openai_api_key ជាទីតាំងកូនសោ API OpenAI របស់អ្នក និង https://your-endpoint.com/... ជា URL ចំណុចបណ្ដាញដាក់ប្រើប្រាស់ Azure OpenAI របស់អ្នក។
ដោយប្រើប្រាស់ LLM សម្រាប់ការរៀបចំឡើងវិញ និងចំម្លងពិន្ទុ ភ្នាក់ងារធ្វើដំណើរអាចផ្ដល់អនុសាសន៍ដែលផ្ទាល់ខ្លួន និងពាក់ព័ន្ធជាងមុន ដើម្បីជួយទទួលបានបទពិសោធន៍ល្អប្រសើរជាងមុនសម្រាប់អតិថិជន។
ការបង្កើតបទបញ្ហាដាក់បន្ថែមពេលទាញយក (Retrieval-Augmented Generation - RAG) អាចជាបច្ចេកទេសបញ្ចូលបញ្ហា និងជាឧបករណ៍មួយក្នុងការច្នៃប្រឌិតភ្នាក់ងារយន្តករបញ្ញាសិប្បនិម្មិត (AI agents)។ ការយល់ដឹងពីភាពខុសគ្នារវាងពីរនេះអាចជួយអ្នកប្រើប្រាស់ RAG ឲ្យមានប្រសិទ្ធភាពកាន់តែច្រើនក្នុងគម្រោងរបស់អ្នក។
វាជាអ្វី?
របៀបវាដំណើរការ:
ឧទាហរណ៍ក្នុងភ្នាក់ងារធ្វើដំណើរ:
វាជាអ្វី?
របៀបវាដំណើរការ:
ឧទាហរណ៍ក្នុងភ្នាក់ងារធ្វើដំណើរ:
| បែបផែន | បច្ចេកទេសបញ្ចូលបញ្ហា | ឧបករណ៍ |
|---|---|---|
| ដៃ vs អូតូ | បង្កើតបញ្ចូលបញ្ហាដោយដៃសម្រាប់សំណួរពីរបៀបមួយៗ។ | ដំណើរការអូតូម៉ាទិកសម្រាប់ការទាញយក និងបង្កើតចម្លើយ។ |
| ការគ្រប់គ្រង | ផ្ដល់ការគ្រប់គ្រងលើដំណើរការទាញយក។ | ធ្វើឲ្យដំណើរការទាញយក និងបង្កើតស្វ័យប្រវត្តិ និងឆាប់រហ័ស។ |
| ភាពបត់បែន | អាចបង្កើតបញ្ចូលបញ្ហាផ្ទាល់ខ្លួនដោយផ្អែកលើតម្រូវការ។ | មានប្រសិទ្ធភាពខ្ពស់សម្រាប់ការអនុវត្តនៅល្បែងធំៗ។ |
| ភាពស្មុគស្មាញ | ពិបាកក្នុងការបង្កើត និងកែសម្រួលបញ្ចូលបញ្ហា។ | ងាយស្រួលបញ្ចូលក្នុងស្ថាបត្យកម្មភ្នាក់ងារ 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] # ត្រឡប់មកវិញ ១០ គ្រឿងធាតុដែលពាក់ព័ន្ធខ្ពស់
ឧទាហរណ៍:
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] # ត្រឡប់លទ្ធផលផ្ទាល់ខ្លួន ១០ លើស្តាប់
ឧទាហរណ៍ការប្រើប្រាស់
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 ផលិតគូដសម្រាប់សរសេរ និងអនុវត្តកូដ។ តំណាងទាំងនេះអាចដោះស្រាយបញ្ហាស្មុគស្មាញ ស្វ័យប្រវត្តិការងារ និងផ្តល់ចំណេះដឹងមានតម្លៃ ដោយបង្កើតនិងរត់កូដនៅក្នុងភាសាកម្មវិធីផ្សេងៗ។
សូមនឹកស្រមៃថាអ្នកកំពុងរចនា តំណាងបង្កើតកូដ។ នេះជារបៀបវាអាចដំណើរការ:
ក្នុងឧទាហរណ៍នេះ យើងនឹងរចនាតំណាងបង្កើតកូដ Travel Agent ដើម្បីជួយអ្នកប្រើក្នុងការធ្វើផែនការធ្វើដំណើរ ដោយបង្កើតនិងអនុវត្តកូដ។ តំណាងនេះអាចបំពេញភារកិច្ចដូចជា ដកយកជម្រើសធ្វើដំណើរ តម្រាច់លទ្ធផល និងសម្រួលផែនការផ្ទាល់ខ្លួនដោយប្រើ 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 ក្នុងបរិបទ Travel Agent។
ឧទាហរណ៍: តំណាងវិភាគទិន្នន័យ៖
ប្រមូលចំណូលចិត្តអ្នកប្រើ
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';
ដោយប្រើ SQL ជាផ្នែកនៃវិធីសាស្រ្ត Retrieval-Augmented Generation (RAG) តំណាង AI ដូចជា Travel Agent អាចយកនិងប្រើទិន្នន័យពាក់ព័ន្ធបាន δυναμικό អោយផ្ដល់អនុសាសន៍ត្រឹមត្រូវ និងផ្ទាល់ខ្លួនបានល្អ។
ដើម្បីបង្ហាញវិធីអនុវត្តន៍ meta-cognition មួយ យើងសាងសង់តំណាងតូចម្នាក់ដែល ពិចារណាអំពីដំណើរការសម្រេចចិត្តរបស់ខ្លួន ខណៈកំពុងដោះស្រាយបញ្ហា។ សម្រាប់ឧទាហរណ៍នេះ យើងនឹងបង្កើតប្រព័ន្ធមួយ ដែលតំណាងនេះព្យាយាមធ្វើឲ្យជម្រើសសណ្ឋាគារល្អបំផុត ប៉ុន្តែបន្ទាប់មកវាចាប់ផ្តើមវាយតម្លៃហេតុផលរបស់ខ្លួន ហើយកែប្រែយុទ្ធសាស្រ្តនៅពេលវាធ្វើកំហុស ឬជម្រើសមិនល្អ។
យើងនឹងទទួលយកឧទាហរណ៍មូលដ្ឋានមួយ ដែលអ្នកតំណាងជ្រើសរើសសណ្ឋាគារដោយផ្អែកលើតម្លៃ និងគុណភាព ប៉ុន្តែវា “ពិចារណា” រឿងជម្រើសរបស់ខ្លួន ហើយកែប្រែតាមការពិចារណា។
នេះជាឧទាហរណ៍៖
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']}")
គន្លឹះនៅទីនេះ គឺសមត្ថភាពរបស់តំណាងក្នុងការធ្វើ៖
នេះគឺជារបៀប meta-cognition លំហាត់មូលដ្ឋាន ដែលប្រព័ន្ធអាចកែប្រែដំណើរការហេតុផលរបស់ខ្លួនដោយផ្អែកលើការពេញចិត្តខាងក្នុង។
Meta-cognition ជាឧបករណ៍មានកម្លាំងដែលអាចបង្កើនសមត្ថភាពរបស់តំណាង AI យ៉ាងខ្លាំង។ ដោយបញ្ចូលដំបូន្មាន meta-cognitive អ្នកអាចរចនាតំណាងដែលមានភាពឆ្លាតវៃ ជឿនលឿន និងមានប្រសិទ្ធិភាព។ ប្រើធនធានបន្ថែមដើម្បីស្វែងយល់បន្ថែមអំពីពិភព meta-cognition ក្នុងតំណាង AI។
ចូលរួមជាមួយ Microsoft Foundry Discord ដើម្បីជួបជាមួយអ្នករៀនផ្សេងទៀត ចូលរួមម៉ោងការិយាល័យ និងទទួលបានចម្លើយសំណួរអំពីតំណាង AI របស់អ្នក។
ការបដិសេធ: ឯកសារនេះត្រូវបានបម្លែងភាសា ដោយប្រើសេវាបម្លែងភាសា AI Co-op Translator។ ទោះយើងខ្ញុំមានក្តីប្រាថ្នាឱ្យបានច្បាស់លាស់ តែសូមយល់ដឹងថាការបម្លែងដោយស្វ័យប្រវត្តិក៏អាចមានកំហុសឬភាពមិនត្រឹមត្រូវ។ ឯកសារដើមជាភាសាទីតាំងគួរត្រូវបានគេប្រើជាប្រភពច្បាស់លាស់។ សម្រាប់ព័ត៌មានសំខាន់ៗ សូមណែនាំឱ្យប្រើប្រាស់ការប្រែដោយមនុស្សជំនាញ។ យើងខ្ញុំមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកស្រាយខុសបន្ទាប់ពីការប្រើប្រាស់ការបម្លែងនេះនោះទេ។