Doctor AI

Dr. Savath Saypadith

240 ບົດຄວາມ

ການຂຽນ Prompt ຂັ້ນສູງ: ເຕັກນິກ Few-Shot ແລະ Chain-of-Thought ເພື່ອແກ້ໄຂບັນຫາທີ່ຊັບຊ້ອນ

ໂພສເມື່ອ # Prompt Engineering # AI Tools # Software Development

ການຂຽນ Prompt ຂັ້ນສູງ: ເຕັກນິກ Few-Shot ແລະ Chain-of-Thought ເພື່ອແກ້ໄຂບັນຫາທີ່ຊັບຊ້ອນ

ໃນຍຸກທີ່ AI ເຂົ້າມາມີບົດບາດສຳຄັນໃນການເຮັດວຽກປະຈຳວັນຂອງເຮົາ, ການສັ່ງງານໃຫ້ AI (Prompting) ໃຫ້ໄດ້ຜົນໄດ້ກາຍເປັນທັກສະທີ່ສຳຄັນ. ສຳລັບວຽກທົ່ວໄປເຊັ່ນ: ການຂຽນອີເມວ ຫຼື ການສະຫຼຸບຂ່າວ, ການຂຽນຄຳສັ່ງແບບງ່າຍໆ (Zero-Shot) ອາດຈະພຽງພໍ. ແຕ່ຖ້າທ່ານກຳລັງສ້າງແອັບພລິເຄຊັນສຳລັບທຸລະກິດໃນລາວ ເຊັ່ນ: ລະບົບຄຳນວນຕົ້ນທຶນການຂົນສົ່ງກາເຟຈາກເມືອງປາກຊ່ອງ, ຫຼື ລະບົບວິເຄາະຂໍ້ມູນການຂາຍຂອງຮ້ານສະດວກຊື້ໃນນະຄອນຫຼວງວຽງຈັນ ທີ່ຕ້ອງອາໄສຕັກກະສາດທີ່ຊັບຊ້ອນ (Logic) ແລະ ການຄິດໄລ່ທາງຄະນິດສາດ, AI ມັກຈະໃຫ້ຄຳຕອບທີ່ຜິດພາດ.

ໃນບົດຄວາມນີ້, ເຮົາຈະມາເຈາະເລິກວິທີການທາງເຕັກນິກລະດັບປານກາງ (Intermediate) ສອງເຕັກນິກ ນັ້ນກໍຄື Few-Shot Prompting ແລະ Chain-of-Thought (CoT) ເຊິ່ງຈະຊ່ວຍເພີ່ມຄວາມແມ້ນຢຳໃຫ້ລະບົບ AI ຂອງທ່ານໄດ້ຢ່າງມະຫາສານ.

Few-Shot Prompting ແມ່່ນຫຍັງ?

ເວົ້າລວມແລ້ວ, Few-Shot Prompting ແມ່ນການໃຫ້ “ຕົວຢ່າງ” ແກ່ AI ຈຳນວນໜຶ່ງ (Few shots) ກ່ອນທີ່ເຮົາຈະຖາມຄຳຖາມຈິງ. ແທນທີ່ຈະໃຫ້ AI ເດົາຮູບແບບເອງ, ເຮົາຈະສ້າງແບບແຜນ (Pattern) ໃຫ້ມັນເບິ່ງກ່ອນ. ສິ່ງນີ້ມີປະໂຫຍດຫຼາຍໂດຍສະເພາະກັບພາສາລາວ ເຊິ່ງບາງຄັ້ງ AI ຍັງບໍ່ເຂົ້າໃຈບໍລິບົດການຈຳແນກປະເພດຂໍ້ມູນໄດ້ດີພໍ.

ຕົວຢ່າງການນຳໃຊ້ Few-Shot ກັບບໍລິບົດລາວ

ສົມມຸດເຮົາກຳລັງສ້າງ AI ເພື່ອວິເຄາະຄວາມຮູ້ສຶກ (Sentiment Analysis) ຂອງລູກຄ້າທີ່ມາຮີວິວຮ້ານອາຫານໃນວຽງຈັນ.

Prompt ທີ່ເຮົາຈະສົ່ງໃຫ້ AI:

ຈົ່ງຈັດປະເພດຄວາມຮູ້ສຶກຂອງຂໍ້ຄວາມຕໍ່ໄປນີ້ ວ່າເປັນ "ທາງບວກ", "ທາງລົບ" ຫຼື "ເປັນກາງ":

ຂໍ້ຄວາມ: "ຕຳໝາກຫຸ່ງຮ້ານນີ້ແຊບຫຼາຍ! ປາແດກນົວສຸດໆ ຕ້ອງກັບມາກິນອີກແນ່ນອນ."
ຄວາມຮູ້ສຶກ: ທາງບວກ

ຂໍ້ຄວາມ: "ລໍຖ້າອາຫານດົນຫຼາຍ, ພະນັກງານກໍບໍລິການບໍ່ຄ່ອຍດີ ເວົ້າຈາບໍ່ມ່ວນ."
ຄວາມຮູ້ສຶກ: ທາງລົບ

ຂໍ້ຄວາມ: "ມື້ນີ້ເຮົາສັ່ງເຝີຊາມໃຫຍ່ຢູ່ຮ້ານແຖວສີຫອມ ຊີ້ນໃຫ້ໜ້ອຍຫຼາຍ ຜິດຫວັງແຮງ."
ຄວາມຮູ້ສຶກ:

ການໃຫ້ຕົວຢ່າງແບບນີ້ ຈະເຮັດໃຫ້ AI ຈັບຈຸດໄດ້ວ່າ ຕ້ອງການຄຳຕອບສັ້ນໆພຽງແຕ່ປະເພດຄວາມຮູ້ສຶກເທົ່ານັ້ນ, ເຊິ່ງເຮັດໃຫ້ເຮົາສາມາດເອົາຜົນຮັບໄປຂຽນໂຄ້ດຕໍ່ໃນລະບົບ Database ໄດ້ງ່າຍຂຶ້ນ.

Chain-of-Thought (CoT) ເທັກນິກການຄິດແບບເປັນຂັ້ນຕອນ

Chain-of-Thought (CoT) ແມ່ນເຕັກນິກທີ່ບັງຄັບໃຫ້ AI “ອະທິບາຍແນວຄວາມຄິດແບບເປັນຂັ້ນເປັນຕອນ” ກ່ອນທີ່ຈະສະແດງຄຳຕອບສຸດທ້າຍ. ຄ້າຍຄືກັບການທີ່ຄູສອນນັກຮຽນໃຫ້ສະແດງວິທີແກ້ເລກໃນເຈ້ຍສອບເສັງ. ເມື່ອ AI ໄດ້ສ້າງຂໍ້ຄວາມແຕ່ລະຂັ້ນຕອນອອກມາ, ມັນຈະຊ່ວຍລຸດໂອກາດທີ່ມັນຈະຄິດໄລ່ລັດຂັ້ນຕອນແລ້ວຂ້າມໄປສູ່ຄຳຕອບທີ່ຜິດ.

ຕົວຢ່າງການນຳໃຊ້ CoT ໃນການຄິດໄລ່ຄ່າຂົນສົ່ງ

ຖ້າເຮົາຖາມ AI ກົງໆໃຫ້ຄິດໄລ່ຄ່າຂົນສົ່ງທີ່ຊັບຊ້ອນ ມັນອາດຈະຜິດພາດ. ເຮົາສາມາດໃຊ້ເຕັກນິກບັງຄັບໃຫ້ມັນຄິດເປັນຂັ້ນຕອນ (Let’s think step by step).

Prompt:

ຄຳຖາມ: ພໍ່ຄ້າຢູ່ປາກຊ່ອງຕ້ອງການສົ່ງກາເຟ 15 ກິໂລກຣາມ ລົງມາວຽງຈັນ. ບໍລິສັດຂົນສົ່ງມີເງື່ອນໄຂດັ່ງນີ້: ຄ່າສົ່ງພື້ນຖານແມ່ນ 20,000 ກີບ ສຳລັບ 5 ກິໂລທຳອິດ. ສ່ວນນ້ຳໜັກທີ່ເກີນມາແຕ່ລະກິໂລ ຈະຄິດໄລ່ເພີ່ມ 3,000 ກີບຕໍ່ກິໂລ. ລາວຈະຕ້ອງຈ່າຍຄ່າສົ່ງທັງໝົດເທົ່າໃດ?

ຈົ່ງແກ້ໄຂບັນຫານີ້ໂດຍການຄິດແບບເປັນຂັ້ນເປັນຕອນ (Let's think step by step):

AI ຈະສ້າງຜົນຮັບທີ່ອະທິບາຍການຄິດໄລ່: ຊອກຫານ້ຳໜັກທີ່ເກີນ (15 - 5 = 10 ກິໂລ), ຄິດໄລ່ຄ່າປັບເພີ່ມ (10 * 3,000 = 30,000 ກີບ), ແລະ ລວມຍອດ (20,000 + 30,000 = 50,000 ກີບ).

ການລວມຕົວຂອງ Few-Shot ແລະ Chain-of-Thought (Few-Shot CoT) ສຳລັບນັກພັດທະນາ

ສຳລັບນັກພັດທະນາ (Developers) ທີ່ຕ້ອງການເຊື່ອມຕໍ່ API ເຊັ່ນ OpenAI ຫຼື ລຸ້ນອື່ນໆ ເຂົ້າໃນແອັບພລິເຄຊັນ, ເຮົາສາມາດນຳທາງ AI ໂດຍການໃຫ້ “ຕົວຢ່າງທີ່ມີການອະທິບາຍຂັ້ນຕອນ” ໄປພ້ອມເລີຍ. ສິ່ງນີ້ເອີ້ນວ່າ Few-Shot Chain-of-Thought.

ລອງເບິ່ງຕົວຢ່າງການຂຽນໂຄ້ດດ້ວຍ Python ທີ່ຮຽກໃຊ້ OpenAI API ເພື່ອແກ້ໄຂບັນຫາທາງຕັກກະສາດການຜະລິດ:

import os
import openai

openai.api_key = os.getenv("OPENAI_API_KEY")

prompt_text = """
Q: ຖ້າຮ້ານຂາຍເຂົ້າຈີ່ປາເຕ້ຢູ່ວຽງຈັນ ຂາຍໄດ້ 50 ກ້ອນໃນວັນຈັນ, ແລະ ແຕ່ລະມື້ຕໍ່ມາຂາຍໄດ້ເພີ່ມຂຶ້ນ 10 ກ້ອນທຸກມື້. ໃນວັນພະຫັດ ຮ້ານຈະຂາຍໄດ້ທັງໝົດຈັກກ້ອນສຳລັບມື້ນັ້ນ?
A: ວັນຈັນຂາຍໄດ້ 50 ກ້ອນ. 
ວັນອັງຄານຂາຍໄດ້ 50 + 10 = 60 ກ້ອນ. 
ວັນພຸດຂາຍໄດ້ 60 + 10 = 70 ກ້ອນ. 
ວັນພະຫັດຂາຍໄດ້ 70 + 10 = 80 ກ້ອນ. 
ດັ່ງນັ້ນ ຄຳຕອບແມ່ນ 80 ກ້ອນ.

Q: ຊາວກະສິກອນປູກເຂົ້າຢູ່ຈຳປາສັກ ມື້ທຳອິດກ່ຽວເຂົ້າໄດ້ 120 ເປົາ, ມື້ທີສອງກ່ຽວໄດ້ໜ້ອຍກວ່າມື້ທຳອິດ 20 ເປົາ, ແລະ ມື້ທີສາມກ່ຽວໄດ້ເທົ່າກັບເຄິ່ງໜຶ່ງຂອງມື້ທີສອງ. ລວມສາມມື້ລາວກ່ຽວເຂົ້າໄດ້ທັງໝົດຈັກເປົາ?
A:
"""

response = openai.chat.completions.create(
    model="gpt-4",
    messages=[
        {
            "role": "system", 
            "content": "ເຈົ້າແມ່ນຜູ້ຊ່ວຍ AI ທີ່ເກັ່ງດ້ານການຄິດໄລ່ທາງຄະນິດສາດ ແລະ ການວິເຄາະຕັກກະສາດ. ຈົ່ງສະແດງວິທີຄິດໄລ່ຢ່າງລະອຽດກ່ອນໃຫ້ຄຳຕອບ."
        },
        {
            "role": "user", 
            "content": prompt_text
        }
    ],
    temperature=0.2 # ຕັ້ງຄ່າຄວາມຄິດສ້າງສັນໃຫ້ຕ່ຳ ເພື່ອເນັ້ນຄວາມຖືກຕ້ອງທາງຕັກກະສາດ
)

print(response.choices[0].message.content)

ໃນໂຄ້ດຂ້າງເທິງ, ເຮົາໄດ້ໃຫ້ຕົວຢ່າງໜຶ່ງ (Few-shot) ທີ່ສະແດງການຄິດໄລ່ແບບເປັນຂັ້ນຕອນ (CoT) ໄປແລ້ວ ເຮັດໃຫ້ Model ສາມາດຮຽນແບບວິທີຄິດເພື່ອແກ້ໄຂໂຈດທີ່ສອງໄດ້ຢ່າງຖືກຕ້ອງຊັດເຈນ.

Key Takeaways (ສິ່ງສຳຄັນທີ່ຄວນຈື່)

ການເຂົ້າໃຈເຕັກນິກເຫຼົ່ານີ້ ຈະຊ່ວຍໃຫ້ນັກພັດທະນາ ແລະ ເຈົ້າຂອງທຸລະກິດໃນລາວ ສາມາດປະຍຸກໃຊ້ AI ໃຫ້ເກີດປະໂຫຍດສູງສຸດ. ບໍ່ວ່າຈະເປັນການສ້າງ Chatbot ຊ່ວຍຮັບປີ້ອໍເດີ (Order) ຈາກລູກຄ້າຜ່ານ WhatsApp, ຫຼື ລະບົບຊ່ວຍຄຳນວນສະຕັອກສິນຄ້າ ກໍ່ລ້ວນແລ້ວແຕ່ຮຽກຮ້ອງໃຫ້ AI ມີຄວາມຊັດເຈນທາງຕັກກະສາດ. ການນຳໃຊ້ Few-Shot ແລະ Chain-of-Thought ຄືກຸນແຈສຳຄັນທີ່ຈະປ່ຽນ AI ຈາກລະບົບຖາມ-ຕອບທຳມະດາ ໃຫ້ກາຍເປັນເຄື່ອງມືແກ້ໄຂບັນຫາທຸລະກິດທີ່ໜ້າເຊື່ອຖືໄດ້ຢ່າງແທ້ຈິງ. ພະຍາຍາມທົດລອງຂຽນ Prompt ໃນຮູບແບບຕ່າງໆ ແລ້ວທ່ານຈະເຫັນເຖິງການປ່ຽນແປງຂອງໝາກຜົນຢ່າງແນ່ນອນ.