ซับเอเจนต์
วิธีที่ Perch ส่งบางส่วนของงานให้เอเจนต์ผู้ช่วยที่โฟกัสเฉพาะเรื่อง เหตุผลที่วิธีนี้ทำให้เธรดหลักสะอาด และวิธีเลือกโมเดลที่เอเจนต์ผู้ช่วยเหล่านั้นใช้
ภายในเทิร์นเดียว Perch ส่งงานบางส่วนให้ซับเอเจนต์ได้ ซับเอเจนต์คือเอเจนต์ผู้ช่วยที่มีเป้าหมายแคบๆ มีบริบทของตัวเอง และมีชุดเครื่องมือจำกัด เอเจนต์ผู้ช่วยทำงานแล้วส่งข้อสรุปกลับมา ส่วน Perch ถือเธรดไว้ ตัดสินใจ และเขียนคำตอบ
นี่คือองค์ประกอบพื้นฐานที่อยู่ใต้โหมดที่ใหญ่กว่า ซับเอเจนต์หนึ่งตัวคือเอเจนต์ผู้ช่วย ส่วนทีมซับเอเจนต์ที่วางแผนไว้ ทำงานเป็นเฟส และตรวจงานของกันและกัน คือ Flock
ทำไมต้องส่งงานต่อ
เหตุผลที่เห็นได้ชัดคือความเร็ว และนั่นเป็นเหตุผลที่สำคัญน้อยที่สุด เหตุผลจริงคือบริบท
การอ่านใบแจ้งหนี้สี่สิบใบได้ผลลัพธ์จากเครื่องมือสี่สิบรายการ ถ้า Perch อ่านเอง ทั้งสี่สิบรายการจะเข้ามาอยู่ในบทสนทนาและเบียดทุกอย่างออกไป รวมถึงคำถามเดิมของคุณ แต่ถ้าซับเอเจนต์อ่าน จะมีเพียงสิ่งที่พบที่ส่งกลับมา เนื้อหาดิบยังอยู่ในบริบทของเอเจนต์ผู้ช่วย และเธรดหลักยังโล่งพอที่จะใช้เหตุผลกับสิ่งที่พบได้
มีอีกสองเหตุผลที่สำคัญ
- การตัดสินที่เป็นอิสระ ตัวตรวจสอบที่รีวิวร่างเทียบกับแหล่งที่มา ไม่ได้ใช้เวลาสิบนาทีที่ผ่านมาเขียนร่างนั้น การจับการอ้างอิงที่ขาดหายจะง่ายกว่าเมื่อคุณไม่ใช่คนที่เขียนเลี่ยงมันไป
- การทำงานขนานกันจริง ผู้ขายสิบสองราย คำถามอิสระสิบสองข้อ ไม่มีการปะปนกันระหว่างข้อ งานเหล่านี้รันพร้อมกัน แทนที่จะรันทีละงาน
เมื่อไรที่ Perch เลือกใช้ซับเอเจนต์
เกณฑ์ที่ Perch ใช้นั้นง่าย คือ งานชิ้นนี้สมบูรณ์ในตัวเองหรือไม่ และต้องการแค่ข้อสรุปของมันหรือไม่ ถ้าใช่ทั้งสองข้อ ก็ส่งต่อ ถ้าไม่ใช่ข้อใดข้อหนึ่ง ก็ทำเองในลูป
ในทางปฏิบัติหมายถึง
- การรวบรวมหลักฐานจากหลายไฟล์ ไล่ดูทั้งโฟลเดอร์ ดึงตัวเลขจากใบแจ้งยอดกองใหญ่ หรือทำแผนผังโค้ดเบสขนาดใหญ่
- การคำนวณที่ต้องแม่นยำ การกระทบยอดและยอดรวม ที่รันเป็นการวิเคราะห์จริงในแซนด์บ็อกซ์ แทนที่จะประมาณเป็นข้อความ
- การตรวจงานที่เสร็จแล้ว อ่านร่างอีกครั้งเทียบกับแหล่งที่มาที่อ้างอิง แล้วรายงานส่วนที่ไม่ถูกต้อง
- งานที่แยกเป็นอิสระ คำถามเดียวกันที่ถามกับหลายสิ่งที่แยกจากกัน
และ Perch ตั้งใจไม่ส่งต่องานเหล่านี้
- อะไรก็ตามที่เป็นการสนทนา ซับเอเจนต์มองไม่เห็นบทสนทนาของคุณและถามคำถามคุณไม่ได้ ถ้างานต้องใช้อย่างใดอย่างหนึ่ง งานนั้นจะอยู่ในลูปหลัก
- งานเล็ก การอ่านไฟล์เดียวหรือการแก้ไขเล็กน้อย มีต้นทุนในการส่งต่อมากกว่าทำเอง
- การส่งมอบและการกระทำในโลกจริง การส่งอีเมล การสร้างเอกสาร การจองนัดในปฏิทิน Perch เป็นคนร่าง Perch จึงเป็นคนส่งมอบ โดยยังจำทุกขั้นตอนก่อนหน้าได้
ไม่ใช่ทุกเทิร์นที่ต้องใช้ทีม
การเลือกโมเดลที่ซับเอเจนต์ใช้
บน Perch Desktop เมนูโมเดลในช่องพิมพ์ข้อความมีแถว Sub-agents ซึ่งเขียนว่า Agents run on ถ้าปล่อยไว้ที่ Inherit เอเจนต์ผู้ช่วยจะรันบนโมเดลเดียวกับที่เทิร์นนั้นใช้ ถ้าเลือกโมเดล เอเจนต์ผู้ช่วยทุกตัวที่ Perch สร้างจะรันบนโมเดลนั้น รวมถึงงานที่มอบหมายไปทำในเบื้องหลังด้วย
โมเดลที่มีให้เลือกคือชุดเดียวกับที่คุณปักหมุดให้ตัวเองได้ สิ่งที่แพ็กเกจของคุณรวมไว้สำหรับการปักหมุดก็รวมไว้ตรงนี้ด้วย เอเจนต์ที่ใช้โมเดลที่ระบุชื่อจะคิดค่าใช้จ่ายเหมือนโมเดลที่ปักหมุดตัวอื่นๆ ส่วน Inherit ยังใช้การ routing ของ Roost
Perch ยังเลือกโมเดลแยกตามเอเจนต์ผู้ช่วยแต่ละตัวภายในงานเดียวได้เมื่อมีเหตุผล จึงมีรูปแบบหนึ่งที่ควรรู้ไว้ คือ ให้โมเดลอื่นตรวจงาน ร่างที่รีวิวโดยโมเดลที่เขียนมันมักจะเห็นด้วยกับตัวเอง แต่ถ้าให้อีกโมเดลรีวิว ความเห็นที่ขัดแย้งจะปรากฏขึ้น ขอได้โดยตรง
draft the summary, then have a different model verify it against the sourcesถ้าคุณระบุโมเดลที่แพ็กเกจของคุณไม่รวมไว้ Perch จะบอกและหยุด แทนที่จะแอบใช้โมเดลอื่น
แถบ effort กำหนดว่าจะส่งต่องานง่ายแค่ไหน
แถบ effort ในช่องพิมพ์ข้อความกำหนดว่า Perch จะทุ่มเทกับเทิร์นหนึ่งมากแค่ไหน ซึ่งรวมถึงความพร้อมที่จะกระจายงานออกไปด้วย
| Effort | พฤติกรรม |
|---|---|
| Off, Low, Medium | Perch ส่วนใหญ่ทำงานอยู่ในลูปของตัวเอง ยังส่งต่องานได้ และจะส่งต่อถ้าคุณขอ |
| High | Perch รู้ว่างานรูปแบบไหนคุ้มที่จะส่งต่อ และรูปแบบไหนไม่คุ้มกับต้นทุนที่เพิ่มขึ้น นี่คือค่าเริ่มต้น |
| Flock | งานทั้งหมดถูกวางแผนเป็นทีมตั้งแต่ต้น ดู Flock |
งานที่ใช้เวลานานกว่าเทิร์น
ซับเอเจนต์รันอยู่ภายในเทิร์นที่คุณกำลังรอ เมื่องานยาวจนคุณไม่อยากรอ /delegate จะส่งงานนั้นให้เอเจนต์เบื้องหลังแทน คืนช่องพรอมต์ให้คุณ และนำผลลัพธ์มาให้คุณรีวิวเมื่อเสร็จ ดูคำสั่งสแลช
ข้อจำกัด
- ไม่มีการเรียกซ้อน ซับเอเจนต์สร้างซับเอเจนต์ของตัวเองไม่ได้ เครื่องมือประสานงานถูกถอดออกจากเอเจนต์ผู้ช่วยทุกตัว
- การรันมีขอบเขต เอเจนต์ผู้ช่วยแต่ละตัวมีเพดานจำนวนขั้นตอนและจำนวนการเรียกใช้เครื่องมือ ซึ่ง Perch เป็นผู้บังคับ ไม่ใช่แค่ขอให้โมเดลทำตาม
- ผลลัพธ์ตรงไปตรงมา เอเจนต์ผู้ช่วยที่อ่านไฟล์ไม่ได้จะรายงานว่ายังไม่ได้อ่าน ผลลัพธ์ที่ได้ไม่ครบจะถูกส่งกลับมาในสภาพไม่ครบ
- เฉพาะ Perch Terminal ซับเอเจนต์ต้องเข้าถึงไฟล์ในเครื่อง ซึ่งแอปเดสก์ท็อปและ CLI ทำได้ เว็บแชตตอบในรอบเดียว
ดูลูปที่ซับเอเจนต์ทำงานอยู่ได้ที่ Operator และเอเจนต์ และดูวิธีวางแผนและตรวจสอบทั้งทีมได้ที่ Flock