ก้าวที่ 4 · ตอนที่ 10

เมื่อผมกับ AI คิดว่าจะไปถึง Production รอบสองในสองสัปดาห์

พ่อกับ Buddy วางแผนเส้นทางไป Production ภายในสองสัปดาห์

พอเริ่มลงมือกับ Runtime รอบใหม่ ผมคิดว่าทางต่อไปค่อนข้างชัด: จัด SBJ Runtime ให้เรียบร้อยก่อน แล้วค่อยกลับไปทำ Web

ในหัวตอนนั้น ผมประเมินว่าถ้าขึ้น Test แล้ว อีกประมาณสองสัปดาห์ก็น่าจะพาระบบไปถึง Production รอบสองได้ ผมกับ AI จึงเริ่มเดินจากงาน Runtime ทีละ Feature โดยเริ่มจากการต้อนรับคนที่กลับมาคุย และต่อไปยังการเก็บข้อมูล

ตอนนั้นผมยังไม่รู้ว่า ระหว่างทางที่ดูเหมือนกำลังเดินตามแผน สิ่งสำคัญอย่างหนึ่งจากระบบเดิมจะไม่เดินทางมาด้วย

แผนที่ดูพอเดินตามได้

งานถัดไปในความคิดของผมคือทำ Runtime ให้พร้อมก่อน เรื่องนี้ฟังดูเป็นลำดับที่ไม่ซับซ้อน: ปิด Feature ที่จำเป็นใน Runtime แล้วค่อยกลับมาทำส่วน Web เพื่อเตรียม Production รอบสอง

ผมมีเวลาคร่าว ๆ อยู่ในใจด้วย—ประมาณสองสัปดาห์หลังขึ้น Test แต่วันขึ้น Test ที่แน่นอนไม่ได้อยู่ในหลักฐานชุดที่ผมตรวจย้อนหลังได้ ดังนั้นตัวเลขนี้จึงเป็นความทรงจำถึงแผนของผม ไม่ใช่วันกำหนดส่งที่ Release ยืนยัน

สิ่งที่ผมจำได้คือผมไล่เติมความสามารถของ Runtime ไปทีละเรื่อง เรื่องแรก ๆ คือการทักทายคนที่กลับมาคุยกัน ต่อด้วยงานรับและเก็บข้อมูล แล้วเส้นทางก็ขยายไปยังการทำให้ข้อมูลที่บันทึกแล้วกลับมาใช้ได้และตรวจสอบได้ Release ยืนยันว่าขอบเขตงานเปลี่ยนและขยายผ่านหลายช่วง แต่ยังไม่พอจะบอกว่าผมกับ AI ไม่มีแผนเลย หรือรายละเอียดของแผนในแต่ละวันเป็นอย่างไร

ผมกับ AI เริ่มเติมความสามารถตามงานที่อยู่ตรงหน้า ภายใต้เป้าหมายไปถึง Production รอบสอง สิ่งที่ยังไม่รู้คือแผนและเอกสารจะช่วยให้เราเห็นภาพรวมที่กำลังโตขึ้นทันหรือไม่

เราเริ่มจากสิ่งที่คนใช้มองเห็น

Open Door เป็นชื่อของแนวคิดให้ระบบรับบทสนทนาที่ไม่ได้เริ่มจากคำสั่งชัด ๆ ได้ ส่วนงานทำความเข้าใจและ Capture พยายามต่อข้อความไปสู่ข้อมูลที่ระบบรองรับ ช่วงนั้น Release วางขอบเขตเพิ่มขึ้นทีละส่วน ทั้งทางรับข้อความ การคิดของ AI และหน้าที่ของ Runtime ในการตรวจและทำงานตามผลที่ได้รับ

ถ้ามองจากข้างนอก มันอาจดูเหมือนเรากำลังเพิ่มความสามารถให้บอท แต่สำหรับผมในเวลานั้น งานคือพา AI กับ Runtime ผ่านโจทย์ที่เฉพาะขึ้น: รับบทสนทนาให้ได้ เข้าใจข้อมูลที่ส่งมา แล้วทำตามทางที่กำหนด

ผมยังจำวิธีแบ่งงานและบทสนทนากับ AI ในแต่ละวันได้ไม่ครบ จึงไม่อยากแต่งคำสั่งหรือคำตอบขึ้นมาแทนความทรงจำ แต่ร่องรอยใน Release แสดงว่าทีมงานค่อย ๆ เขียนขอบเขตและทางเดินให้ชัด ขณะที่ผมเองจำได้ว่าพยายามเดิน Feature ไปทีละเรื่องก่อนจะกลับไปทำ Web

ตอนทดสอบ เราไม่ได้ถามแค่ว่ามันตอบหรือยัง

เมื่อเริ่มทดสอบ สิ่งที่ต้องดูไม่ได้มีเพียงว่าบอทตอบกลับไหม หรือข้อมูลถูกบันทึกไหม ถ้าระบบทำงานผิดปกติ ผมต้องย้อนดูได้ด้วยว่าทางเดินระหว่างรับข้อความ ตีความ และบันทึกเกิดอะไรขึ้น

ตอนเริ่มออกเดินทาง ผมคิดถึงงานหลักที่ต้องทำให้เสร็จและทางไป Production รอบสอง แต่การทดสอบกำลังขยายคำถามของผมออกไปอีก: เมื่อ AI กับ Runtime ช่วยกันทำงานแล้ว ผมจะรู้ได้อย่างไรว่าทั้งคู่ทำสิ่งที่ผมตั้งใจไว้จริง?

คำตอบยังไม่ปรากฏในตอนต้นของแผน แต่ไม่นานการทดสอบ Capture ก็ให้คำตอบที่ผมไม่ได้คาดไว้ ข้อมูลบันทึกสำเร็จ ข้อความตอบกลับก็ดูปกติ ทว่าร่องรอยที่ควรช่วยให้ผมตรวจการทำงานกลับไม่อยู่ตรงนั้น

การเดินทางสองสัปดาห์ที่ผมวางไว้จึงกำลังจะมีงานอีกแบบแทรกเข้ามา—ไม่ใช่เพิ่ม Feature แต่เป็นการตามหาสิ่งที่หายไปจากทางเดินที่เราคิดว่าทำเสร็จแล้ว