
ตื่นมาเห็นข่าวกำลังเริ่มแชร์กันในโลกโซเชี่ยลว่า สามารถสั่งให้ chatbot บน platform หนึ่ง เขียนโค้ดโปรแกรมให้ได้ด้วยการคุย แทนที่จะทำหน้าที่ในการช่วยเหลือผู้ใช้เท่าที่มันถูกออกแบบมา แต่กลับไปทำอย่างอื่นซะงั้น
ใครที่อยู่ในสายพัฒนาแอพจะรู้เลยว่างานเข้าแน่นอน เชื่อว่าไม่มีใครอยากให้เกิดเรื่องแบบนี้หรอก โดยเฉพาะคนทำ กับเจ้าของระบบ
แต่ถ้าเรามานั่งคิดกันว่า แล้วเรามีแนวทางที่จะทำให้แอพที่ใช้ Generative AI ของเราไม่เกิดเรื่องแบบนี้ได้มั้ย
แบบมีมั้ยพวก best practice อะไรแบบเนี้ย?
พลก็ของแชร์จากฝั่งของพลแล้วกัน ว่า “มีจ้า” และเข้าใจง่ายด้วย มา! เริ่ม!
Responsible AI: แนวทางเพื่อการนำ AI มาอยู่ในธุรกิจได้อย่างมั่นใจมากขึ้น

การละเลยแนวคิด Responsible AI ไม่ได้หมายความว่าเราจะสร้าง Generative AI App ไม่ได้ แต่เราจะได้ระเบิดเวลาซ่อนอยู่ในมุมหนึ่งของสิ่งที่เราสร้าง รอวันที่สักวันมันจะแตกออกและสร้างความเสียหายให้เรา
ก่อนอื่น ขอคุยเรื่องแนวคิดของ Responsible AI (ที่พลมักคุยสนุกๆ ว่ามันเหมือนศีล 6 ข้อ) ที่พลจะย้ำในทุกครั้งที่ได้มีโอกาสไปแชร์ให้พี่ๆ น้องๆ นักพัฒนาทุกครั้ง ว่ามันสำคัญนะ
การละเลยแนวคิดนี้ ไม่ได้ทำให้โปรแกรมทำงานไม่ได้หรอก แต่พอถึงจุดหนึง มันจะมีโอกาสสร้างความเสียหายให้แก่คนสร้าง, บริษัทองค์กร, ตัวธุรกิจ, ไปจนถึงสังคมนั้นๆ ร้ายแรงมากๆ ก็ไปถึงชีวิตคนได้เลย
ศีล 6 หรือแนวคิด Responsible AI ในการสร้างแอพที่มี AI เป็นส่วนประกอบ หรือแม้แต่จัดซื้อจัดจ้างโครงการเกี่ยวกับ AI ที่มีอยู่ 6 ส่วนนั้นได้แก่
- Fairness
- Reliability & Safety
- Privacy & Security
- Inclusiveness
- Transparency
- Accountability
ใครสนใจไปตำกันที่นี่ หลายๆ เรื่องที่เล่าให้ห้องเรียน ส่วนหนึ่งก็หยิบยกมาจากที่นี่แหละ
ซึ่งพอเข้าใจแนวทางแล้ว จะเห็นว่าทั้ง 6 ข้อนี้เปรียบเสมือนเป้าหมาย หรือ goal แต่ตอนจะเอามาทำจริงๆ ให้มันจับต้องได้ ก็จะมีแนวทางอยู่หลายแบบ หนึ่งในนั้นคือ Mitigation Layers
มา! The Mitigation Layers

ในการพัฒนา Generative AI Application โดยคำนึงถึง Responsible AI มีแนวทางที่ชื่อว่า Mitigation layers ครับ
จุดประสงค์ของสิ่งนี้ ก็เพื่อให้คนที่เกี่ยวข้องกับโครงการ AI (รวมไปถึงนักพัฒนาซอฟต์แวร์) นำไปใช้ เพื่อให้แน่ใจว่าในแต่ละส่วนประกอบของการพัฒนา Generative AI Application นั้น เราได้เลือกที่จะจำกัดความเสี่ยง ที่อาจเกิดขึ้นจากส่วนประกอบพวกนี้ ให้เหลือน้อยที่สุด
พลได้ศึกษาเรื่อง Mitigation Layer นี้ครั้งแรกจากคุณ Sarah Bird ที่มีการพูดถึงในงานของ Microsoft ตั้งแต่ 2 ปีที่แล้ว ปีนี้ช่วงที่ไปงาน Microsoft MVP ก็ได้มีโอกาสคุยกับแกด้วย ได้แนวคิดดีๆ มาต่อยอด และถ่ายทอดให้เพื่อนพี่น้องเยอะเลย ซึ่งตอนนี้คุณ Sarah มีหน้าที่เป็น Chief Product Officer ส่วน Responsible AI ของ Microsoft ครับ
ในที่นี้พลขอหยิบมาสรุปพอเป็นแนวทางว่าทั้ง 4 Layer เราสามารถนำไปใช้ส่วนไหนของการพัฒนาแอพ Generative AI ได้บ้าง
- Model Layer การเลือก AI model ที่เหมาะสมกับงาน และเป้าหมาย
- ไม่จำเป็นต้องเลือกตัวท้อป ตัวแรงที่สุด
- เลือกประเภทที่เหมาะกับ scope ของหน้าที่ในแอพพลิเคชั่นนั้นๆ
- สามารถปรับจูน (fine-tuning) ให้ตรงกับขอบเขตหน้าที่ได้ ถ้าต้องการ
- Safety System Layer การควบคุมการทำงานในระดับ platform
- สูงขึ้นมาอีกขั้นก็คือระบบที่สามารถนำ model มาทำงานด้วย อันนี้ของยกของ Azure OpenAI Service ของ Microsoft มาแล้วกัน
- กรองเนื้อหาพวกคำเกลียดชัง หรือการพูดถึงทรัพย์สินทางปัญญา ซึ่งในบริการของ Microsoft จะมี Azure AI Content Safety ฝังมาเป็นค่าเริ่มต้น (ส่วนนี้ถ้าใช้ปกติไม่มีค่าใช้จ่ายเพิ่มนะ)
- ป้องกับ prompt injection ในตัว
- ตรวจสอบรูปแบบของการ prompt ที่ผิดปกติไปจากที่กำหนดได้
- System Message และ Grounding Layer
- การออกแบบ meta prompt (พลมักจะเปรียบส่วนนี้ว่าเหมือนกับโพยที่ส่งให้ model ใช้อ้างอิงว่าควรตอบยังไง หรือไม่ควรพูดเรื่องอะไร)
- นักพัฒนาสามารถใช้เทคนิค prompt engineering ต่างๆ เพื่อตีกรอบการตอบของ AI model ได้
- ถ้ามีการนำข้อมูลเฉพาะมาตอบ (RAG) ควรให้แน่ใจว่าเป็นข้อมูลจากแหล่งที่มาที่ตรวจสอบแล้ว และปลอดภัย
- User Experience Layer
- ส่วนนี้บันเทิงสุด เพราะเป็นส่วนที่เราต้องตรวจสอบการใส่คำสั่งจากผู้ใช้
- เกี่ยวข้องกับการกำหนดรูปแบบของการใช้งานที่ว่าจะให้อิสระผู้ใช้มากแค่ไหน ซึ่งการทำแอพในรูปแบบห้องแชทคือเป็น level 3 จากทั้งหมด 4 level ซึ่งท้าทายในการควบคุมพอตัว
- ขั้นตอนนี้สามารถทำขึ้นมาในรูปแบบของเงื่อนไข หรือข้อกำหนดการใช้งานทางกฎหมายก็ได้
จริงๆ มี practice เยอะกว่านี้ เอาว่าใครสนใจไปดูใน Microsoft Learn ได้ และพลเคยได้ไปพูดใน “Risk and safety check GenAI app with Azure AI Studio” ในงาน Azure AI Day 2024 ที่จัดที่ SCBX Siam Paragon ด้วย ไม่รู้มีอัดไว้ไหม แต่เดี๋ยวมาเล่าสนุกๆ ผ่านช่องแดง Youtube แล้วกันครับ
โลกแห่งความจริง มันก็ไม่สมบูรณ์แบบหรอกนะ
เอาหล่ะเราเห็น best practice ที่เกิดจากการสั่งสม และลองผิดลองถูกของบริษัทไอทีขนาดใหญ่แล้ว เครื่องมือก็พร้อมสรรพให้เลือกใช้จากทุกค่าย
แต่นานาจิตตังแล้วแต่ที่ แล้วแต่แนวทางของแต่ละคน พลขอแชร์แนวคิด จากประสบการณ์บางส่วนที่เจอในโครงการต่างๆ ในที่นี้นะครับ
- อย่าละเลย Responsible AI
- แนวคิด Responsible AI พอเอามาทำจริง ส่วนใหญ่จะอยู่ในรูปแบบของนโยบาย และเครื่องมือที่เป็นต้นทุน หลายคนจะรู้สึกยุ่งยาก และเปลือง แต่จริงๆ เป็นส่วนที่ไม่มีก็ไม่ได้ (ระเบิดเวลา ท่องไว้ๆ) ควรให้ผู้ที่มีความเข้าใจเรื่องนี้มาให้คำแนะนำในการตัดสินใจ เลือกสิ่งที่ดีที่สุดให้เหมาะกับเป้าหมายและรูปแบบโครงการ
- ความเสียหายที่เกิดจากการละเลย Responsible AI มักจะกระแทกเข้าที่องค์กร หรือตัวธุรกิจโดยตรง
- องค์กรบางที่ที่ไม่มีการทำ AI transformation ที่เหมาะสม จะเกิดความวุ่นวายว่าที่สุดแล้วจะรับมือสถานการณ์นี้ยังไง เพราะไม่ใช่แค่เอา software ลง แต่เกิดความเสียหายกับ brand ไปแล้ว
- มันจะมีจุดที่ balance ระหว่างต้นทุน prompt กับกำไรเสมอ
- โครงการที่มี AI มาเกี่ยวข้อง ส่วนใหญ่มักมีต้นทุนที่สูงกว่าโครงการ IT ทั่วๆ ไปเสมอ โยนไอความเข้าใจว่าแอพเอไอมีราคา 20 ดอลต่อเดือนนั่นทิ้งไป เพราะตอนเราทำจริงๆ มันเริ่มต้นคิดที่ปริมาณข้อมูลเข้าออก
- หลายๆ ที่ พยายามลดขนาด meta prompt ตั้งแต่ต้น project เพราะมองว่าเป็นต้นทุนที่สิ้นเปลือง แต่มันเป็นกลไกแรกๆ ที่ทำให้เราควบคุมการทำงานของ AI Model ได้ มันมีเทคนิคที่สามารถไปปรับลดทีหลังได้ แต่ช่วงต้นของโครงการ เตรียมงบส่วนนี้ไว้หน่อย
- ถ้าดำเนินโครงการได้โอเค เราจะเจอจุดที่ต้นทุนต่อ prompt ของผู้ใช้ กับผลลัพธ์ที่เราเรียกว่ากำไรได้ครับ
- Model ตัวเดียว ตัว Top ไม่ใช่คำตอบ
- หลายที่ที่เงินไม่ใช่ปัญหา มักเลือก Model ตัวท้อปตัวดัง มาทำทุกอย่างในแอพ แบบเผื่อไว้ก่อน ซึ่งผลลัพธ์คือ แม้แต่ตอน POC เจอแค่ค่า token ก็ก่ายหน้าผาก
- แนวคิด Agent พิสูจน์แล้วว่า เลือกใช้ model ให้เหมาะกับงานต่างๆ สามารถเพิ่มศักยภาพให้แอพพลิเคชั่นได้ แถมประหยัดด้วย
ที่แชร์ไว้ด้านบนก็เป็นแค่มุมมองของคนๆ หนึ่งเท่านั้นเอง มีพี่น้องในวงการเก่งๆ และมีประสบการณ์มากมาย อีกเยอะครับ เอาเป็นว่าแลกเปลี่ยนข้อมูลกันสนุกๆ เพื่อให้พวกเราสามารถเดินไปในยุคสมัยแห่ง AI นี้กันอย่างสนุกสนานแล้วกัน
เพราะยุคแห่ง AI พวกเราเริ่มต้นพร้อมกันครับ