ข้ามไปเนื้อหาหลัก

ทดลองให้ 2 AI Agents ท้องถิ่นสร้างแอปพลิเคชันเอง

โปรเจกต์ RelayLab ใช้ Ollama และโมเดล local อย่าง qwen เพื่อให้ AI ตัวหนึ่งเป็นผู้พัฒนาและอีกตัวเป็นผู้ตรวจทานโค้ดแบบอัตโนมัติ

เรียบเรียงโดย AI
Inewgen
26 Sep 2026ที่มา: Dev.to3 นาทีอ่าน (0 ครั้ง)
แชร์
ทดลองให้ 2 AI Agents ท้องถิ่นสร้างแอปพลิเคชันเอง

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • ผู้ใช้ทดลองสร้างระบบ multi-agent แบบ local ทั้งหมดด้วย Ollama, Python และพีซีส่วนตัว
  • แบ่งบทบาทเป็น Builder (ผู้สร้าง) และ Reviewer (ผู้ตรวจทานโค้ด) ผ่านโปรเจกต์ชื่อ RelayLab
  • เผชิญปัญหาฮาร์ดแวร์โอเวอร์โหลดและปัญหาการตั้งค่า Ollama ก่อนจะปรับขนาดโมเดลให้เหมาะสม
  • ตัวตรวจทานโค้ดพยายามส่งสถานะที่นอกเหนือจากที่กำหนดไว้จนทำให้ระบบพังและต้องเขียนตัวดักจับข้อผิดพลาด

การใช้งานปัญญาประดิษฐ์ในการเขียนโค้ดและพัฒนาซอฟต์แวร์กลายเป็นเรื่องปกติในปัจจุบัน แต่การปล่อยให้โมเดล AI สองตัวทำงานร่วมกันโดยส่งต่องานไปมาระหว่างกันโดยปราศจากการแทรกแซงของมนุษย์ถือเป็นเรื่องที่ท้าทายและน่าสนใจ โดยผู้พัฒนาได้ทดลองสร้างระบบจำลองที่ไม่มีการเรียกใช้ API จากค่ายใหญ่อย่าง OpenAI หรือ Claude แต่เลือกใช้ Ollama ร่วมกับภาษา Python บนคอมพิวเตอร์ส่วนตัว

ไอเดียหลักของโปรเจกต์นี้มีชื่อว่า RelayLab ซึ่งประกอบด้วยโมเดล AI สองบทบาทหลัก ได้แก่:

  • Builder: ทำหน้าที่อ่านคำขอผลิตภัณฑ์ ตรวจสอบพื้นที่ทำงาน และสร้างหรือแก้ไขแอปพลิเคชัน
  • Reviewer: ทำหน้าที่รับงานต้นฉบับ ตรวจสอบสิ่งที่ Builder สร้างขึ้น และพิจารณาอนุมัติหรือขอให้ปรับ

ในตอนแรกผู้พัฒนาได้เลือกใช้โมเดลขนาดใหญ่ ได้แก่ qwen2.5-coder:7b สำหรับ Builder และ qwen3:8b สำหรับ Reviewer แต่ผลลัพธ์ที่ได้คือหน่วยประมวลผลกลางหรือ CPU พุ่งสูงถึงร้อยละ 100 จนเครื่องเกือบใช้งานไม่ได้ เนื่องจาก Ollama เก็บโมเดลทั้งสองไว้ในหน่วยความจำระหว่างรอบการทำงาน ทำให้หน่วยความจำบนการ์ดจอไม่พอและต้องไปประมวลผลบนซีพียูแทน

100%การใช้งาน CPU ในช่วงแรก
3b / 4bขนาดโมเดลที่ปรับลดลง

เพื่อแก้ปัญหาดังกล่าว จึงต้องมีการปรับลดขนาดโมเดลลงเหลือ qwen2.5-coder:3b สำหรับ Builder และ qwen3:4b สำหรับ Reviewer พร้อมทั้งปรับแต่งการตั้งค่าคำขอใน Ollama ให้ใช้งานคำสั่ง keep_alive: 0 เพื่อบังคับให้โมเดลล้างข้อมูลออกจากหน่วยความจำทันทีหลังจบแต่ละรอบการทำงาน ช่วยป้องกันไม่ให้ AI ทั้งสองตัวแย่งพื้นที่ VRAM กัน

chromebook notebook computer office desk workspace no logo

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ก่อนที่ระบบจะเริ่มทำงานได้จริง ยังพบอุปสรรคทางเทคนิคเพิ่มเติมเมื่อพบว่าการติดตั้ง Ollama ขาดส่วนประกอบสำคัญ ทำให้เกิดข้อผิดพลาด llama-server binary not found แม้จะดาวน์โหลดโมเดลและใช้งานคำสั่งตรวจสอบสถานะผ่าน CLI ได้ปกติก็ตาม หลังจากทำการติดตั้งใหม่ได้อย่างถูกต้อง ระบบจึงพร้อมสำหรับการทดสอบจริง

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

การรันโมเดลภาษาขนาดเล็ก (Small Language Models) ในเครื่องคอมพิวเตอร์ส่วนตัวแสดงให้เห็นถึงความก้าวหน้าสำคัญในการพัฒนาซอฟต์แวร์แบบออฟไลน์ แม้ระบบอัตโนมัติเหล่านี้จะยังขาดความยืดหยุ่นเทียบเท่า API ขนาดใหญ่ แต่การจัดการเรื่องการจัดการทรัพยากร VRAM และการตีความผลลัพธ์ JSON จาก AI ที่อยู่นอกเหนือกรอบเป็นบทเรียนสำคัญสำหรับนักพัฒนาในการสร้างระบบ Orchestration ที่มีความทนทานต่อความผิดพลาดสูง

สำหรับการทดสอบรอบแรก ผู้พัฒนาได้ป้อนโจทย์ง่ายๆ ให้ระบบสร้างแอปพลิเคชันจดบันทึกหน้าเดียวที่สามารถสร้าง ทำเครื่องหมายเสร็จสิ้น และลบโน้ตได้ โมเดล Builder เริ่มต้นสร้างไฟล์ index.html และผ่านกระบวนการส่งให้ Reviewer ตรวจสอบซ้ำแล้วซ้ำเล่าในรอบที่ 1 รอบที่ 2 และรอบที่ 3 โดยที่มนุษย์ไม่ต้องลงมือเขียนโค้ดเองเลยแม้แต่น้อย

"[round 3] builder wrote 1 file(s); reviewer: changes_requested"

RelayLab Log

อย่างไรก็ตาม ระบบเกิดข้อผิดพลาดขึ้นเมื่อ Reviewer ส่งสถานะกลับมานอกเหนือจากที่โปรแกรมกำหนดไว้ เช่น การส่งคำว่า rejected หรือ needs_changes แทนที่จะเป็น approved หรือ changes_requested ตามที่ระบบตั้งค่า enum ไว้ ส่งผลให้เกิดข้อผิดพลาด AgentProtocolError และทำให้โปรแกรมหยุดทำงานในที่สุด ผู้พัฒนาจึงต้องแก้ไขโค้ดตัวกลาง (Orchestrator) ให้มีความยืดหยุ่นมากขึ้นด้วยการแปลงคำศัพท์ต่างๆ ให้กลับมาเป็นสถานะมาตรฐานที่ระบบเข้าใจได้

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้