$ cat 06-schedules.md บทที่ 6
Schedules ให้เริ่มตามเวลา อีเมล หรือเหตุการณ์ Task คือสิ่งที่บอกว่าเราต้องการอะไร ส่วน Schedule (กำหนดเวลา) คือสิ่งที่บอกว่าเมื่อไรที่ Spark ควรเริ่มลงมือทำงาน ดังนั้น การผูก Schedule เข้าไปจึงไม่ได้ช่วยให้คำสั่งที่คลุมเครือฉลาดขึ้นมาเอง แต่มันคือการนำคำสั่งเดิมกลับมาทำงานซ้ำตามจังหวะเวลาที่เราตั้งไว้อย่างอัตโนมัติ
วิธีการใช้งาน Schedule อย่างปลอดภัย จึงไม่ใช่การสร้างงานแบบรันทุกวันทิ้งไว้แล้วค่อยมารอดูผลในวันพรุ่งนี้ แต่คือการทดสอบรันดูผลลัพธ์ตอนนี้ทันที เพื่อตรวจสอบว่าผลงาน แอปที่เรียกใช้ และไฟล์เอกสารต่างๆ เป็นไปตามขอบเขตที่ต้องการหรือไม่ ก่อนจะปล่อยให้ระบบทำงานจริงตามกำหนดเวลา
ในบทนี้ เราจะมาทดลองสร้าง Schedule แบบครั้งเดียว (Once) จากนั้นกดปุ่ม Run now เพื่อทดสอบผลลัพธ์ทันที และลบทิ้งเมื่อพิสูจน์แล้วว่าทำงานได้ถูกต้องตรงตามขอบเขต
เงื่อนไขการเริ่มงาน (Trigger) ทั้ง 3 แบบของ Schedule
Schedule ตอบคำถามว่า “เริ่มเมื่อไร” · ส่วนวิธีทำงานยังคงบันทึกไว้ใน instructions หรือ Skill · งานที่จำเป็นต้องรู้ผลแบบเรียลไทม์ทันที ไม่ควรฝากไว้กับระบบ monitor
1. กำหนดตามเวลา (Time-based Schedule)
ตั้งให้ทำงานเพียงครั้งเดียว (Once), รายชั่วโมง, รายวัน, รายสัปดาห์, รายเดือน หรือรายปี เหมาะสำหรับงานประจำที่มีรอบเวลาแน่นอนและยอมรับเวลาโดยประมาณได้ เช่น การสรุปประเด็นงานทุกเช้า หรือการเตรียมหัวข้อทบทวนโปรเจกต์ทุกวันศุกร์
Schedule รูปแบบนี้สามารถสร้างผ่านฟอร์ม Create manually ได้โดยตรง
2. เมื่อมีอีเมลตรงตามเงื่อนไข (Gmail monitor)
เริ่มทำงานโดยอัตโนมัติเมื่อมีอีเมลใหม่เข้ามาตรงตามตัวกรองที่กำหนด เช่น จากผู้ส่งเฉพาะราย หรือมีคำสำคัญในหัวข้อ เหมาะสำหรับงานคัดกรอง สรุปประเด็นสำคัญ หรือร่างข้อความตอบกลับเบื้องต้น โดยไม่ควรเริ่มต้นด้วยการสั่งให้ส่งต่อหรือลบอีเมลทันที
การสร้าง monitor ต้องสั่งงานผ่าน Create with Gemini หรือพิมพ์สั่งใน task thread เท่านั้น เนื่องจากฟอร์ม Create manually รองรับเฉพาะแบบกำหนดตามเวลา
3. เมื่อมีเหตุการณ์ในหัวข้อที่สนใจเกิดขึ้น (Topic monitor) คอยติดตามความเคลื่อนไหวจากข่าวสาร การเงิน กีฬา หรือประเด็นที่สนใจ แล้วเริ่มทำงานเมื่อพบเหตุการณ์ที่ตรงเงื่อนไข เหมาะสำหรับการรวบรวมข้อมูลสรุปหรือการแจ้งเตือนที่รอรอบเวลาได้ ไม่เหมาะกับการติดตามราคาสินทรัพย์ที่ผันผวนเร็วและต้องการการตอบสนองระดับวินาที
คำเตือน เวลาทำงานของ Schedule เป็น “เวลาโดยประมาณ”
Google ระบุไว้อย่างชัดเจนว่า Schedule อาจไม่ได้เริ่มทำงานตรงตามนาทีที่ตั้งเป๊ะๆ หรือรันทันทีในวินาทีที่เงื่อนไขเกิดขึ้น ดังนั้น งานที่ต้องการความแม่นยำระดับนาที เช่น การกดจองตั๋ว การซื้อขายสินทรัพย์ หรือการแจ้งเตือนเหตุฉุกเฉิน จึงไม่ควรฝากไว้กับระบบ Schedule ของ Spark
เลือกจังหวะเริ่มงานให้ตรงกับธรรมชาติของงาน ลักษณะงาน ตัวเลือกที่เหมาะสม เหตุผลที่ไม่ควรเลือกแบบอื่น งานประจำที่มีรอบเวลาแน่นอน กำหนดตามเวลา (Time-based) อย่าตั้ง monitor เฝ้า ทั้งที่ไม่มีเหตุการณ์หรืออีเมลให้ตรวจจับ งานที่ต้องเริ่มเมื่อมีอีเมลเฉพาะเข้ามา Gmail monitor อย่าตั้ง Schedule ให้ค้นหาอีเมลถี่ๆ ทุกชั่วโมงโดยไม่จำเป็น งานที่เริ่มเมื่อมีข่าวหรือเหตุการณ์ใหม่ Topic monitor อย่าตั้งเวลาให้ค้นหาข่าวเดิมซ้ำๆ ทุกวัน งานที่ต้องการทำเพียงครั้งเดียว Task ปกติ หรือ Schedule แบบ Once อย่าสร้าง Schedule ซ้ำซ้อนที่ต้องคอยกลับมาตามปิด งานด่วนที่ต้องรู้ผลในทันที ระบบแจ้งเตือนเฉพาะทาง อย่าฝากงานเร่งด่วนไว้กับระบบ Schedule ที่ทำงานตามรอบเวลาโดยประมาณ
การเลือกจังหวะเริ่มงานที่เหมาะสม จะช่วยลดทั้งจำนวนงานที่ไม่จำเป็นและปริมาณข้อมูลที่ Spark ต้องประมวลผล แต่สิ่งสำคัญคือ Schedule ไม่ได้ช่วยลดระดับความเสี่ยงของคำสั่ง หากคำสั่งเดิมสั่งให้ส่งอีเมล ลบไฟล์ หรือสั่งซื้อสินค้า Schedule ก็จะนำคำสั่งที่มีความเสี่ยงนั้นกลับมารันซ้ำเช่นกัน เราจึงต้องควบคุมขอบเขตและวางจุดหยุดให้รัดกุมเสมอ
ทดลองสร้าง Schedule แบบครั้งเดียว การทดลองนี้จะไม่เชื่อมต่อ Connected Apps ไม่เปิดเว็บ ไม่สร้างไฟล์ และตั้งเวลาทำงานไว้ในอนาคตเพียงครั้งเดียว โดยข้อมูลและวันที่ในตัวอย่างเป็นเรื่องสมมุติ:
Prompt เป้าหมาย: สร้างคำถามทบทวน 3 ข้อสำหรับการเตรียมเวิร์กช็อปวันเสาร์
ของที่ให้ใช้: ใช้เฉพาะข้อความในคำสั่งนี้เท่านั้น โดยไม่เชื่อมต่อ Connected Apps ไม่เปิดเว็บไซต์ และไม่สร้างไฟล์
วิธีทำ: ตอบเป็นเช็กลิสต์สั้นๆ 3 ข้อ (ข้อละไม่เกิน 1 บรรทัด) หากข้อมูลไม่เพียงพอ ให้ใส่สัญลักษณ์ [ข้อมูลที่ต้องเติม] ไว้ ห้ามคาดเดาเอง
จังหวะเริ่ม: ทำงานตาม Schedule นี้เท่านั้น
จุดหยุด: ห้ามส่งข้อความ สร้างนัดหมาย สร้างหรือแก้ไขไฟล์ และห้ามแตะต้องข้อมูลใดๆ ทั้งสิ้น
คัดลอก
ขั้นตอนการสร้างผ่านฟอร์ม
เปิดหน้า Schedules จากแถบด้านข้าง
คลิกปุ่ม Create manually
ตั้งชื่อที่สื่อถึงทั้งตัวงานและขอบเขต เช่น “ซ้อมทบทวนเวิร์กช็อปแบบปลอดภัย”
เลือกรูปแบบเป็น Once แล้วกำหนดวันและเวลาในอนาคต
วางข้อความคำสั่ง (instructions) ด้านบนลงไป
อ่านคำเตือนใต้ฟอร์มเรื่องเวลาทำงานโดยประมาณและขีดจำกัดการใช้งาน (usage limit)
คลิกปุ่ม Create
หน้าจอจริงเต็ม viewport · ปุ่ม Create จะเปิดให้กดเมื่อกรอกชื่อ วันเวลา และคำสั่งครบถ้วน · ปิดทับเฉพาะรูปโปรไฟล์โดยไม่ตัดส่วน UI อื่น หลังจากสร้างเสร็จ Schedule จะไปปรากฏอยู่ในหมวด Ongoing พร้อมแสดงสถานะ Waiting to run ตามวันและเวลาที่ตั้งไว้
วันที่ในภาพเป็นเพียงวันทดลอง · รายการนี้จะถูกลบทิ้งหลังการทดสอบเพื่อไม่ให้เผลอรันจริงในภายหลัง
กด Run now เพื่อทดสอบผลทันทีก่อนถึงเวลาจริง เราไม่จำเป็นต้องรอให้ถึงวันพรุ่งนี้เพื่อดูว่าคำสั่งทำงานได้ถูกต้องหรือไม่:
เลื่อนเมาส์ไปชี้ที่รายการ Schedule ที่ต้องการ
คลิกที่ปุ่ม More (เมนูเพิ่มเติม)
เลือกคำสั่ง Run now
เปิดเข้าไปดูใน task thread ที่ระบบสร้างขึ้นใหม่
ตรวจสอบผลลัพธ์ ตรวจดูแถบ Files และ Skills & apps ใน work panel
หากผลลัพธ์ถูกต้อง จึงค่อยเก็บบันทึกไว้ใช้งาน แต่หากเป็นเพียงการทดลอง ให้กด Pause หรือ Delete ทิ้งได้ทันที
ผลลัพธ์จริงที่ได้คือ เช็กลิสต์ 3 ข้อที่เว้นช่อง [ข้อมูลที่ต้องเติม] ไว้แทนการแต่งข้อมูลขึ้นเอง และเมื่อเปิดดูใน work panel ช่อง Files จะว่างเปล่า ส่วนแถบ Skills & apps จะไม่แสดงแอปใดๆ ซึ่งตรงตามคำสั่งที่ให้ใช้เฉพาะข้อความใน Schedule ทุกประการ
Task ที่เกิดจากการกด Run now จริง · ภาพเต็ม viewport และพับแถบรายการงานก่อนจับภาพ จึงไม่มีไฟล์หรือแอปส่วนตัวหลุดเข้ามา การทดสอบรอบนี้ช่วยพิสูจน์ว่าคำสั่งทำงานได้ตามแผน แต่ภาพหน้าจอเพียงรอบเดียวไม่อาจรับประกันได้ว่าการรันในอนาคตทุกครั้งจะได้ผลเหมือนเดิม งานที่มีการแก้ไขข้อมูลจึงยังต้องมีคนเข้ามาตรวจเช็กหลังการรันแต่ละรอบเสมอ
การอ่านสถานะและจัดการวงจรชีวิตของ Schedule ในหน้า Schedules จะแบ่งรายการออกเป็น 3 กลุ่ม:
Ongoing: รายการที่กำลังเปิดใช้งานอยู่ หรือกำลังรอให้ถึงรอบเวลาทำงาน
Paused: รายการที่หยุดชั่วคราว (สามารถคลิก Resume เพื่อกลับมาใช้งานต่อได้)
Completed: รายการที่ทำงานครบตามจำนวนครั้งแล้ว (ไม่สามารถแก้ไขหรือ Resume ได้ ทำได้เพียง Delete)
สำหรับ Schedule ที่ยังใช้งานอยู่ สามารถแก้ไขได้ 2 วิธี คือ เปิดเข้าไปแก้ไขในฟอร์มโดยตรง หรือคลิกเลือก Edit with Gemini เพื่อสั่งปรับแก้ผ่าน task thread (หากเป็น Gmail หรือ Topic monitor ที่ต้องการแก้ trigger จะต้องใช้คำสั่ง Edit with Gemini เท่านั้น)
หมายเหตุ การลบ task thread จะส่งผลต่อ Schedule ที่ผูกอยู่ด้วย
หากเราลบ task thread ใดทิ้งไป ระบบจะลบ Schedule ทั้งหมดที่ถูกสร้างขึ้นใน thread นั้นทิ้งไปด้วย ดังนั้น ก่อนจะกดลบ Task ใดๆ ให้เปิดดูใน work panel หรือเข้าไปตรวจสอบในหน้า Schedules ให้มั่นใจก่อนว่าไม่มีกำหนดเวลาสำคัญที่เรายังต้องใช้งานผูกอยู่
4 สาเหตุที่ทำให้ Schedule ไม่ทำงานตามเวลา
บัญชีติดขีดจำกัดการใช้งาน (Usage limit) ณ ช่วงเวลาที่ถึงกำหนดรัน
มี Task กำลังทำงานอยู่พร้อมกันครบ 15 งาน ทำให้ระบบไม่สามารถเปิดงานใหม่เพิ่มได้
ระบบประมวลผลตามเวลาโดยประมาณ ซึ่งอาจล่าช้ากว่านาทีที่ตั้งไว้เล็กน้อย
ช่วงเวลาที่มีผู้ใช้งานหนาแน่น ทำให้คิวการประมวลผลบนคลาวด์ล่าช้า
Gemini Spark รองรับ Schedule ที่เปิดใช้งานพร้อมกันได้สูงสุด 50 รายการ หากครบโควตาจะต้อง Pause หรือ Delete รายการเดิมออกก่อน ทั้งนี้ การปิดใช้งาน Gemini Spark จะทำให้ Schedule ทั้งหมดถูกหยุดชั่วคราว (Paused) ส่วนการเปลี่ยนหรือยกเลิกแพ็กเกจสมาชิกจะทำให้ Schedule ถูกหยุดไว้ชั่วคราวแต่ยังไม่ถูกลบทิ้ง
ข้อควรระวัง: เวลาทำงานไม่เลื่อนตามเมื่อเดินทาง Schedule ที่ตั้งตามเวลาจะถูกผูกเข้ากับเขตเวลา (Time zone) ของสถานที่ที่สร้างขึ้นมา หากเราเดินทางไปต่างประเทศ เวลาการทำงานจะยังคงยึดตามเขตเวลาเดิม ไม่ได้เลื่อนตามเวลาท้องถิ่นใหม่โดยอัตโนมัติ
ข้อปฏิบัติก่อนเดินทางหรือย้ายเขตเวลา:
เปิดเข้าไปดูรายการ Schedule ที่เกี่ยวข้อง
ตรวจสอบเขตเวลาเดิมเทียบกับเวลาท้องถิ่นใหม่ที่ต้องการ
พิมพ์สั่งให้ Gemini ปรับเวลาใน Schedule ตามเขตเวลาใหม่
ใช้ปุ่ม Run now เพื่อทดสอบคำสั่งอีกครั้งหากมีการปรับแก้ขอบเขตงาน
เนื่องจากงานประมวลผลอยู่บนคลาวด์ ระบบจึงทำงานต่อไปได้แม้เราจะปิดคอมพิวเตอร์ แต่ความสะดวกนี้ไม่ได้การันตีเรื่องความตรงเวลาเป๊ะระดับนาทีหรือความถูกต้องของผลลัพธ์
จุดที่ต้องตรวจก่อนปล่อยต่อ
คำสั่ง (instructions) ต้องผ่านการกดทดสอบ Run now ดูผลจริงแล้วอย่างน้อย 1 ครั้ง
รูปแบบ trigger ตรงกับธรรมชาติของงาน ไม่ตั้งความถี่ให้รันบ่อยเกินความจำเป็น
เป็นงานที่ยอมรับเวลาทำงานโดยประมาณได้ และไม่ใช่งานเร่งด่วนที่ต้องรู้ผลทันที
ในรอบทดสอบ หมวด Connected Apps และ Files แสดงผลตรงตามขอบเขตที่สั่ง
งานที่มีการส่ง ลบ ซื้อ แชร์ หรือแก้ไขข้อมูล ต้องมีจุดหยุดให้คนตรวจเช็กเสมอ
เข้าใจตำแหน่งของปุ่ม Pause · Resume · Edit · Delete
ตรวจเช็ก Schedule ที่ผูกอยู่ก่อนตัดสินใจลบ task thread
หากเดินทางข้ามประเทศ อย่าลืมตรวจเช็กเขตเวลาที่ Schedule อ้างอิงอยู่เสมอ
ลองเลย
ลองสร้าง Schedule แบบ Once ด้วยพรอมต์ทดลองในบทนี้ โดยกำหนดเวลาไว้ในอนาคต จากนั้นคลิกที่เมนู More แล้วกด Run now เพื่อตรวจดูว่าผลลัพธ์ได้เช็กลิสต์ 3 ข้อ · ช่อง Files ว่างเปล่า · แถบ Skills & apps ว่างเปล่า เมื่อทดสอบเสร็จเรียบร้อย ให้ลบ Schedule ทดลองนี้ทิ้งทันที (อย่าเพิ่งเปลี่ยนเป็นรายวันจนกว่าจะมีงานจริงที่จำเป็นต้องทำซ้ำ)
ในตอนนี้ Spark รู้แล้วว่าต้องทำอะไร และควรเริ่มลงมือเมื่อไร แต่สิ่งที่เรายังต้องทำซ้ำอยู่คือการพิมพ์ขั้นตอนวิธีทำลงในทุก Schedule ในบทถัดไป เราจะนำขั้นตอนเหล่านั้นไปเก็บบันทึกเป็น Skill เพื่อให้เรียกใช้งานซ้ำได้ทันทีโดยไม่ต้องคอยคัดลอกคำสั่งเดิมทุกครั้ง
อัปเดตล่าสุด: 21 ส.ค. 2569
ความคิดเห็น
ยังไม่มีความคิดเห็น
เป็นคนแรกได้เลย