การเปิดตัว Windows-Use เอเจนต์ระบบอัตโนมัติตัวใหม่ที่ควบคุมระบบ Windows ผ่านการโต้ตอบกับ GUI ได้จุดประกายการอภิปรายทางเทคนิคที่น่าสนใจเกี่ยวกับแนวทางที่ดีที่สุดสำหรับการทำงานอัตโนมัติของคอมพิวเตอร์ เครื่องมือที่พัฒนาด้วย Python นี้สัญญาว่าจะให้โมเดลภาษาขนาดใหญ่ใดๆ สามารถทำงานอัตโนมัติบนเดสก์ท็อปได้โดยไม่ต้องพึ่งพาโมเดล computer vision แบบดั้งเดิม
ความต้องการของระบบ
- Python 3.12 หรือสูงกว่า
- ตัวจัดการแพ็กเกจ UV (หรือ pip)
- Windows 7, 8, 10, หรือ 11
- เข้ากันได้กับ LLM ใดก็ได้ (สาธิตด้วย Google's Gemini 2.0 Flash)
ความแตกแยกครั้งใหญ่ในการทำงานอัตโนมัติ: Accessibility Trees เทียบกับ Screenshots
ชุมชนแบ่งออกเป็นสองฝ่ายอย่างรวดเร็วในเรื่องกลยุทธ์การทำงานอัตโนมัติ ฝ่ายหนึ่งสนับสนุนแนวทาง User Interface Automation (UIA) tree ที่ Windows-Use ใช้ โดยให้เหตุผลว่าให้ข้อมูลที่สะอาดและเชื่อถือได้มากกว่าสำหรับระบบ AI ในการทำงาน อีกฝ่ายหนึ่งสนับสนุนวิธีการ computer vision ที่วิเคราะห์ screenshots โดยตรง
ผู้สนับสนุนแนวทาง UIA ชี้ให้เห็นว่าแอปพลิเคชัน Windows ที่สำคัญส่วนใหญ่เปิดเผยองค์ประกอบอินเทอร์เฟซของตนผ่าน accessibility frameworks อย่างเหมาะสม วิธีการนี้ให้ข้อมูลที่มีโครงสร้างและชัดเจนเกี่ยวกับปุ่ม ช่องข้อความ และส่วนประกอบ UI อื่นๆ ที่เอเจนต์ AI สามารถเข้าใจและโต้ตอบได้อย่างง่ายดาย
อย่างไรก็ตาม นักวิจารณ์เน้นช่องว่างที่สำคัญในแนวทางนี้ แอปพลิเคชันด้านสุขภาพ ซอฟต์แวร์ที่ใช้ Electron และเว็บแอปพลิเคชันจำนวนมากไม่ปฏิบัติตามแนวทาง accessibility อย่างเหมาะสม ทำให้เครื่องมืออัตโนมัติไม่สามารถมองเห็นองค์ประกอบอินเทอร์เฟซของพวกมันได้ สิ่งนี้สร้างจุดบอดที่วิธีการใช้ screenshots อาจเป็นทางเลือกเดียวที่ใช้ได้
หมายเหตุ: UIA (User Interface Automation) เป็นเฟรมเวิร์กของ Microsoft ที่อนุญาตให้แอปพลิเคชันเปิดเผยองค์ประกอบอินเทอร์เฟซของตนต่อเทคโนโลยีช่วยเหลือและเครื่องมืออัตโนมัติ
แนวทางเทคนิคหลักที่กล่าวถึง
- วิธี UIA Tree: ใช้เฟรมเวิร์กการเข้าถึงของ Windows สำหรับข้อมูล UI ที่มีโครงสร้าง
- Computer Vision: วิเคราะห์ภาพหน้าจอเพื่อระบุองค์ประกอบ UI
- แนวทางแบบผสมผสาน: รวมทั้งสองวิธีเข้าด้วยกันเพื่อความเข้ากันได้ที่กว้างขึ้น
- เครื่องมือเก่า: SendKeys() และการเรียกใช้ Win32 API จากทศวรรษ 1990
ความท้าทายของ Computer Vision
การอภิปรายเผยให้เห็นความคับข้องใจที่ยังคงมีอยู่เกี่ยวกับความสามารถในการวิเคราะห์ screenshots ของโมเดล AI ปัจจุบัน สมาชิกชุมชนหลายคนรายงานว่าแม้แต่โมเดลขั้นสูงอย่าง ChatGPT มักจะหันไปเขียนสคริปต์ Python เพื่อแยกวิเคราะห์ภาพแทนที่จะใช้ความสามารถ vision ดั้งเดิมของตน ส่งผลให้เกิดผลลัพธ์ที่ไม่น่าเชื่อถือและความพยายามที่ล้มเหลวหลายครั้ง
ฉันขอให้มันดึง guid จากภาพและมันเขียนสคริปต์ python เพื่อรัน ocr กับมัน...และก็ผิด
สิ่งนี้เน้นให้เห็นถึงความท้าทายที่กว้างขึ้น: ในขณะที่ computer vision เสนอความเข้ากันได้แบบสากลกับแอปพลิเคชันใดๆ การดำเนินการยังคงไม่สม่ำเสมอและเปราะบาง โมเดลที่ได้รับการฝึกอบรมเฉพาะสำหรับการตรวจจับ UI อาจทำงานได้ดีกว่า แต่เครื่องมือเฉพาะทางเช่นนี้ยังไม่มีให้ใช้งานอย่างแพร่หลาย
ปัญหาความเข้ากันได้ของแอปพลิเคชัน
- รองรับ UIA ได้ดี: แอปพลิเคชัน Windows มาตรฐานส่วนใหญ่, ชุดโปรแกรม Office
- รองรับ UIA ได้ไม่ดี: แอป Electron, แอปพลิเคชันด้านการแพทย์จำนวนมาก, VS Code (โดยไม่มีโหมดการเข้าถึง)
- ความเข้ากันได้แบบสากล: คอมพิวเตอร์วิชันทำงานได้กับอินเทอร์เฟซที่มองเห็นได้ทุกประเภท
ความคิดถึงยุคที่เรียบง่ายกว่า
น่าสนใจที่การอภิปรายทางเทคนิคได้จุดประกายความทรงจำแบบคิดถึงอดีตของเครื่องมืออัตโนมัติยุคก่อน นักพัฒนาหลายคนจำได้อย่างอบอุ่นใจถึงการใช้ SendKeys() ใน Visual Basic 6 ในช่วงทศวรรษ 1990 ซึ่งขับเคลื่อนทุกอย่างตั้งแต่ chatbots ของ AOL ไปจนถึงการแกล้งบนเดสก์ท็อป เครื่องมือเรียบง่ายเหล่านี้แม้จะดูดิบแต่มักทำงานได้เชื่อถือได้มากกว่าโซลูชันที่ขับเคลื่อนด้วย AI ในปัจจุบัน
การเปรียบเทียบนี้เน้นให้เห็นว่าความท้าทายในการทำงานอัตโนมัติยังคงอยู่แม้จะมีความก้าวหน้าทางเทคโนโลยีมาหลายทศวรรษ เครื่องมือสมัยใหม่อาจซับซ้อนกว่า แต่ยังคงต่อสู้กับปัญหาพื้นฐานเดียวกัน: การโต้ตอบกับอินเทอร์เฟซผู้ใช้ที่หลากหลายและไม่สม่ำเสมออย่างเชื่อถือได้
มองไปข้างหน้า
เมื่อเอเจนต์อัตโนมัติคอมพิวเตอร์กลายเป็นที่แพร่หลายมากขึ้น การถกเถียงระหว่างแนวทางเทคนิคต่างๆ น่าจะรุนแรงขึ้น โซลูชันที่เหมาะสมอาจเกี่ยวข้องกับระบบไฮบริดที่สามารถสลับระหว่าง UIA trees, computer vision และการเรียก API โดยตรง ขึ้นอยู่กับความสามารถของแอปพลิเคชันเป้าหมาย
ในตอนนี้ Windows-Use แสดงถึงจุดกึ่งกลางที่น่าสนใจ โดยใช้ข้อมูล accessibility ที่มีโครงสร้างเป็นหลักและใช้ vision เป็นทางเลือกสำรองเมื่อจำเป็น ว่าแนวทางนี้จะพิสูจน์ให้เห็นว่าเชื่อถือได้มากกว่าวิธีการ computer vision แบบบริสุทธิ์หรือไม่ ยังคงต้องรอดูเมื่อผู้ใช้มากขึ้นทดสอบในสถานการณ์จริง
อ้างอิง: Windows-Use