- หลายคนเข้าใจ ความแตกต่างระหว่างซอฟต์แวร์ทั่วไปกับปัญญาประดิษฐ์ ผิดไป
- คนทั่วไปมัก เข้าใจความเสี่ยงของ AI ผิดว่าเป็นแนวคิดเรื่อง ‘บั๊ก’ แบบซอฟต์แวร์ดั้งเดิม ซึ่งนำไปสู่ความมั่นใจที่ผิดเกี่ยวกับวิธีแก้ปัญหา
- ข้อผิดพลาดของ AI ไม่ได้มาจากโค้ด แต่มาจากข้อมูลฝึก และด้วยขนาดที่มหาศาลนี้ มนุษย์จึงไม่อาจรู้ได้ว่า ข้อมูลใดเป็นตัวก่อปัญหา
- ไม่สามารถค้นหาบั๊กแล้ว “แก้” หรือ “ทำให้เกิดซ้ำ” ได้แบบซอฟต์แวร์เดิม และ พฤติกรรมของ AI ไม่เป็นแบบกำหนดแน่นอน ผลลัพธ์อาจเปลี่ยนได้แม้มีการเปลี่ยนแปลงเล็กน้อยในอินพุต
- การพัฒนาแบบอิงสเปกแทบเป็นไปไม่ได้ และ ความสามารถหรือความเสี่ยงของ AI ไม่อาจคาดการณ์ล่วงหน้าได้ บางครั้งยังมีการค้นพบความสามารถแฝงที่ไม่ได้ตั้งใจในภายหลัง
- ดังนั้นแนวคิดแบบเดิมของวงการไอทีที่ว่า “ถ้ามีปัญหาก็ค่อยแก้ทีหลัง” จึงกลายเป็น ความเข้าใจผิดร้ายแรงในการถกเถียงเรื่องความปลอดภัยของ AI
ข้อจำกัดของความรู้เกี่ยวกับซอฟต์แวร์ทั่วไป
- คนทั่วไปและผู้จัดการจำนวนมากมีความเชื่อมั่นเกี่ยวกับความเสี่ยงของซอฟต์แวร์คอมพิวเตอร์ว่า "โค้ดที่มีปัญหา (บั๊ก) สามารถแก้ไขได้"
- ตลอดเวลาหลายปีที่ผ่านมา วงการซอฟต์แวร์ได้ทำให้ผู้คนตระหนักสำเร็จว่า บั๊กในโค้ดสามารถสร้างความเสียหายในโลกจริงได้
- ในซอฟต์แวร์ทั่วไป แม้จะมีบั๊กอยู่ แต่ก็ยังเป็นปัญหาในขอบเขตที่ แก้ไขได้ แม้จะซับซ้อนก็ตาม
- แต่ แนวทางและกรอบความคิดเช่นนี้ใช้กับ AI ไม่ได้ และนั่นทำให้เกิดความสับสนกับความเข้าใจผิด
ความต่างด้านการรับรู้ระหว่างผู้เชี่ยวชาญกับผู้ไม่เชี่ยวชาญ
- ซอฟต์แวร์ทั่วไปกับซอฟต์แวร์ AI ต่างกันโดยพื้นฐานทั้งในหลักการทำงานและรูปแบบการเกิดปัญหา
- กลุ่มผู้เชี่ยวชาญมักมองช่องว่างนี้เป็นเรื่องปกติจนไม่ได้อธิบาย ส่วนผู้เริ่มต้นก็ไม่สามารถมองออกได้ด้วยตนเองว่าต่างกันอย่างไร
- ทั้งสองฝ่ายจึงต่าง รู้สึกว่าการสื่อสารระหว่างกันทำได้ยาก
ความเชื่อเกี่ยวกับซอฟต์แวร์ทั่วไปที่ถูกนำมาใช้กับ AI อย่างผิด ๆ
-
1. ช่องโหว่ของซอฟต์แวร์เกิดจากความผิดพลาดในโค้ด
- บั๊กของซอฟต์แวร์ทั่วไปส่วนใหญ่มักเกิดจาก ความผิดพลาดในการเขียนโค้ด
- แต่ในกรณีของ AI ช่องโหว่หรือความไม่อาจคาดเดาได้เกือบทั้งหมดมาจากข้อมูลฝึก
- ตัวอย่างเช่น ในชุดข้อมูลอย่าง FineWeb ที่มี ข้อมูลระดับหลายพันล้านคำ มนุษย์ไม่สามารถตรวจสอบทั้งหมดได้
- ด้วยความมหาศาลของข้อมูลที่ AI ใช้เรียนรู้ จึง ยากจะเข้าใจอย่างครบถ้วนว่ามันเรียนรู้อะไรไปบ้าง และแทบเป็นไปไม่ได้ที่จะระบุปัจจัยเสี่ยงได้
-
2. สามารถวิเคราะห์โค้ดเพื่อหาบั๊กได้
- ซอฟต์แวร์แบบดั้งเดิมสามารถ วิเคราะห์โค้ดและไล่หาสาเหตุของบั๊กเชิงตรรกะได้
- แต่ปัญหาของ AI เกิดจากอิทธิพลผสมผสานของข้อมูลฝึก ทำให้แทบเป็นไปไม่ได้ในทางปฏิบัติที่จะหาต้นตอของปัญหาจากข้อมูล
- โดยทั่วไปนักวิจัยจะพยายามลดปัญหาด้วยการฝึก AI ใหม่หรือเพิ่มข้อมูล แต่ การระบุสาเหตุโดยตรงด้วยการไล่ตามเชิงตรรกะทำได้ยาก
- แม้แต่ผู้พัฒนาเองก็ ไม่รู้แน่ชัดด้วยซ้ำว่าสาเหตุของ “บั๊ก” ใน AI คืออะไร
-
3. ถ้าแก้บั๊กแล้ว มันจะไม่เกิดขึ้นอีก
- สำหรับซอฟต์แวร์ เมื่อแก้บั๊กที่พบแล้ว บั๊กเดิมจะไม่ถูกทำให้เกิดซ้ำในรูปแบบเดิมอย่างแม่นยำ
- แต่ใน AI ต่อให้แก้ “บั๊ก” ไปแล้ว พฤติกรรมปัญหาแบบเดิมก็อาจกลับมาอีกได้กับอินพุตที่ยังไม่ได้ทดสอบ
- จึงไม่อาจมั่นใจได้ว่าได้กำจัดพฤติกรรมผิดปกติของ AI ออกไปอย่างสมบูรณ์แล้ว
-
4. อินพุตเดียวกันย่อมได้ผลลัพธ์เดียวกันเสมอ
- ซอฟต์แวร์ทั่วไป จะให้เอาต์พุตเดียวกันเสมอกับอินพุตเดียวกัน
- AI ก็อาจดูเหมือนเป็นเช่นนั้นในทางเทคนิค แต่ การเปลี่ยนแปลงเพียงเล็กน้อยมากในอินพุต (เช่น เครื่องหมายวรรคตอน) ก็อาจทำให้ผลลัพธ์เปลี่ยนไปโดยสิ้นเชิง
- ในทางปฏิบัติ บริษัท AI รายใหญ่หลายแห่งยัง ออกแบบให้แม้ใช้พรอมป์ต์เดียวกันก็ได้ผลลัพธ์ต่างกันเล็กน้อย เพื่อให้ดูไม่เป็นเครื่องจักรมากเกินไป
-
5. ถ้าให้ข้อกำหนดชัดเจน ก็สามารถทำให้ตรงตามข้อกำหนดนั้นได้
- ซอฟต์แวร์ทั่วไป มีวิธีทำให้เป็นไปตามสเปกและข้อกำหนดที่กำหนดไว้อย่างชัดเจนได้
- แต่สำหรับ AI ผู้ออกแบบไม่สามารถควบคุมหรือรับประกันพฤติกรรมโดยรวมที่ต้องการได้อย่างชัดเจน
- ในขอบเขตจำกัดบางอย่าง (เช่น พูดภาษาอังกฤษ เขียนโค้ด เป็นต้น) ยังอาจควบคุมแบบระบุชัดได้พอสมควร แต่ไม่สามารถรับประกันพฤติกรรมทุกอย่างได้ (เช่น ห้ามสนับสนุนอาชญากรรม)
- หลังเปิดให้บริการ AI แล้ว บางครั้งก็มีการค้นพบ ความสามารถแฝงหรือความเสี่ยงที่แม้แต่นักพัฒนาก็ไม่เคยรู้มาก่อน โดยบังเอิญ
- การรับประกันและคาดการณ์ความปลอดภัยของ AI อย่างสมบูรณ์เป็นไปไม่ได้
ทิศทางที่ควรเดินต่อไป
- ความรู้เรื่องซอฟต์แวร์ที่ถูกเหมารวมอย่างผิด ๆ กำลัง บิดเบือนความเชื่อมั่นและการประเมินความเสี่ยงต่อ AI
- สิ่งสำคัญคือการ เผยแพร่ความเข้าใจเรื่องหลักการทำงาน ข้อจำกัด และความแตกต่างจากซอฟต์แวร์ทั่วไปของ AI ให้เพื่อนร่วมงานรับรู้กว้างขวาง
- ควรอธิบาย ความแตกต่างเชิงโครงสร้างที่เป็นลักษณะเฉพาะของ AI ซึ่งยังไม่เป็นที่รู้จักมากนัก และสื่อสารให้เข้าใจว่าแนวทางแบบ “แพตช์บั๊ก” อย่างง่ายใช้ไม่ได้ผล
ช่องว่างความเข้าใจระหว่างผู้เชี่ยวชาญกับผู้เริ่มต้น
- หากบทความนี้ทำให้คุณ เพิ่งตระหนักเป็นครั้งแรกถึงความแตกต่างพื้นฐานระหว่าง AI กับซอฟต์แวร์ทั่วไป ก็อยากชวนให้แบ่งปันเนื้อหานี้กับคนใกล้ตัว
- หากคุณรู้ความแตกต่างนี้อยู่แล้ว ก็ควรลองพูดคุยกับคนทั่วไปหรือผู้ที่ไม่ใช่ผู้เชี่ยวชาญสักครั้ง
- ในความเป็นจริง ยังมีคนจำนวนไม่น้อยที่ไม่รู้ว่าสองสิ่งนี้แตกต่างกันโดยพื้นฐาน
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ถ้าอยากรู้ว่าการนำ LLM ไปใช้งานให้ได้ผลจริงมีความยากอะไรบ้าง กรณีของ Apple เป็นตัวอย่างที่ดี เมื่อ 1 ปีก่อน Apple เปิดตัว Apple Intelligence อย่างยิ่งใหญ่และเน้นเวิร์กโฟลว์เอเจนต์ที่อิงกับ LLM แต่หลังจากนั้นกลับเพิ่มมาเพียงเครื่องมือเล็กน้อยอย่างการสร้างอีโมจิ การสรุปการแจ้งเตือน และการตรวจแก้เอกสาร แม้แต่ฟีเจอร์สรุปการแจ้งเตือนเองก็เคยอยู่ในสภาพ “ควบคุมไม่อยู่” อยู่ช่วงหนึ่งจนต้องถอนออก บทความที่เกี่ยวข้อง ในงานอีเวนต์ iPhone ปีนี้ก็ลดการตลาดด้าน AI ลงอย่างมากด้วย ดูเหมือนว่าผู้บริหาร Apple จะประเมินต่ำไปว่าการทำ LLM ให้ได้ระดับความเนี้ยบและการควบคุมแบบฉบับ Apple นั้นยากแค่ไหน
ประโยคต่อไปนี้โดนใจเป็นพิเศษ:
ถ้าใช้แนวทางอย่าง MCP ปรากฏการณ์ที่ความเสี่ยงแบบนี้ขยายตัวแบบทวีคูณก็จะยิ่งชัดขึ้น ลิงก์ MCP
ดูเหมือนจะขาดเงื่อนไขตั้งต้นที่สำคัญที่สุดไป แม้ซอฟต์แวร์ทั่วไปก็ไม่เป็นแบบนี้เสมอไป แต่สำหรับ AI ยิ่งสำคัญมาก นั่นคือเกณฑ์ที่ว่า “อินพุตเดียวกันต้องให้เอาต์พุตเดียวกัน” สิ่งนี้จำเป็นต่อความน่าเชื่อถือในกระบวนการอัตโนมัติ
มักมีคนพูดว่าบั๊กของ AI เกิดจากปัญหาด้านข้อมูล แต่ก็ไม่ถูกทั้งหมด ต่อให้สถาปัตยกรรม LLM เองหรือข้อมูลฝึกดูไม่มีปัญหา LLM ก็ยังมีความไม่กำหนดแน่นอนในระดับพื้นฐานอยู่ดี ดังนั้นตามการออกแบบของอัลกอริทึม คำถามเดียวกันจึงไม่ได้ให้คำตอบเดียวกันเสมอไป ผลลัพธ์เปลี่ยนเหมือนทอยลูกเต๋าใหม่ในแต่ละสถานการณ์
พูดตามตรง ฉันคิดว่าคำกล่าวที่ว่า “สุดท้ายพอเวลาผ่านไป บั๊กก็จะถูกแก้หมดและความน่าเชื่อถือของ AI จะสูงขึ้น” ฟังดูถูกต้องกว่า เทคโนโลยีนี้ยังใหม่มาก และแนวคิดแบบที่เห็นบ่อยใน HN ว่า “ไม่กำหนดแน่นอน = ขยะ” ก็ดูสุดโต่งเกินไปเมื่อคำนึงว่าความน่าเชื่อถือของ LLM เพิ่มขึ้นราว 10 เท่าในช่วง 2 ปีที่ผ่านมา
ควรระวังมากขึ้นกับความคิดที่ว่า “พฤติกรรมผิดพลาดทั้งหมดของระบบ AI มีต้นตอมาจากข้อมูลฝึก” ต่อให้ข้อมูลและกระบวนการฝึกสมบูรณ์แบบ โมเดล AI ก็ยังอาจทำผิดพลาดต่อไปได้จากตัวโครงสร้างของมันเอง
น่าจะอธิบายให้ชัดกว่านี้ว่า “บั๊ก AI” ปรากฏในสถานการณ์แบบไหน ฉันเห็นด้วยกับการบอกว่าไม่ควรมอบหมายการตัดสินใจแบบเรียลไทม์โดยไม่มีผู้กำกับดูแลให้ LLM ยกตัวอย่างเช่น ยังเร็วเกินไปที่จะให้ AI ควบคุมสัญญาณไฟจราจรทั้งเมือง แต่จากมุมมองของวิศวกร ประเด็นบั๊ก AI ส่วนใหญ่มักถูกพูดถึงในบริบทของ ‘เอเจนต์เขียนโค้ด’ และงานเหล่านี้แทบทั้งหมดมีการกำกับดูแลอยู่แล้ว ดังนั้นความกังวลนี้จึงไม่ได้ใช้ตรง ๆ กับกรณีเหล่านั้น
สิ่งสำคัญคือทำให้เข้าใจว่า “AI บางครั้งก็ทำงานได้ดีอย่างน่าทึ่ง แต่บางครั้งก็น่าผิดหวัง และจะไม่มีทางรู้ได้เลยหากไม่ทดสอบ” อย่างไรก็ตาม การทดสอบทุกกรณีนั้นเป็นไปไม่ได้ ถ้าลูกค้าเข้าใจข้อนี้ พวกเขาจะเริ่มเรียกร้องขอบเขตและอำนาจควบคุมในการทดสอบมากขึ้น ส่วนผู้ให้บริการก็จะหันไปเน้นสภาพแวดล้อมที่ตรวจสอบได้ เช่น การเขียนโค้ด หรือเน้นงานที่ความแม่นยำไม่สำคัญมาก เช่น ข้อความหรือการสร้างมีม ถ้าคุณเป็นคนที่สนับสนุน AI การเข้าใจจุดนี้อย่างลึกซึ้งถือเป็นข้อได้เปรียบที่มีค่ามาก ในทางกลับกัน ผู้คนอาจไม่สนใจบั๊กของ AI สเปก หรือการล่มสลายของโมเดลการเขียนโปรแกรมเดิม แต่ถ้า AI ไปมีอิทธิพลต่อการเลือกตั้งหรือก่อปัญหาอย่างการเลิกจ้างครั้งใหญ่ ก็จะเกิดความเป็นปฏิปักษ์และเสียงเรียกร้องให้กำกับดูแลอย่างมหาศาล เมื่อเหตุการณ์แบบนั้นเกิดขึ้น อุตสาหกรรมก็จะพยายามประคองตัวด้วยวิธีหลบเลี่ยงความรับผิดและกฎระเบียบที่พัฒนามาตลอด เช่น การปฏิเสธความรับผิด ข้อยกเว้นตามสัญญา และเงื่อนไขอนุญาโตตุลาการ สุดท้ายฉันคิดว่าผลสะเทือนจากอุบัติเหตุใหญ่เพียงไม่กี่ครั้งโดยไม่ตั้งใจ อาจทำให้การเติบโตของอุตสาหกรรมและการลงทุนข้ามรุ่นทั้งหมดตกอยู่ในความเสี่ยง
จุดที่อันตรายจริง ๆ ของ AI คือ ‘อำนาจที่กระจุกตัว’ มันเป็นความกังวลที่สมจริงกว่าการกลัวว่า AI ที่มีอารมณ์แบบมนุษย์จะปฏิบัติกับเราเหมือนแบตเตอรี่ใน Matrix
ช่วงนี้ฉันพยายามบอกคนอื่นอยู่เรื่อย ๆ ว่า “ไม่มีใครรู้แน่ชัดว่า AI ทำงานอย่างไร” อยากเน้นว่าการสร้างบางอย่างขึ้นมาได้กับการเข้าใจหลักการของมันเป็นคนละเรื่องกัน มนุษย์เองก็เช่นกัน