3 คะแนน โดย GN⁺ 2023-11-09 | 2 ความคิดเห็น | แชร์ทาง WhatsApp
  • ระหว่างวันที่ 8 พฤศจิกายน เวลา 5:42AM~7:16AM PT คำขอจำนวนมากทั่วทั้ง ChatGPT และ API ของ OpenAI ล้มเหลวด้วยข้อผิดพลาด 502 หรือ 503 ส่งผลกระทบต่อทุกโมเดลและทุก API endpoint
  • โหนดในชั้น routing แตะถึง ขีดจำกัดหน่วยความจำ และไม่ผ่านการตรวจสอบสถานะความพร้อม ทำให้เมื่อมีโหนดจำนวนมากพออยู่ในสถานะ unavailable ความสามารถในการรองรับทราฟฟิกขาเข้าก็ไม่เพียงพอ
  • ในช่วงเช้าของวันดังกล่าว คำขอ completion เพิ่มขึ้นอย่างมากกว่าวันก่อน ๆ ทั้งหมด จนกลายเป็น tipping point ที่ทำให้ปัญหาหน่วยความจำเดิมลุกลามเป็นการล่มของบริการทั้งระบบ
  • การกู้คืนทำโดยจำกัดทราฟฟิกขาเข้า, redeploy บริการครั้งใหญ่, และค่อย ๆ เปิดทราฟฟิกกลับมาเป็นลำดับ โดยหลังแก้ไขให้มีการนำ responseBuffer กลับมาใช้ซ้ำแล้ว การใช้หน่วยความจำและ CPU ดีขึ้น 3 เท่า
  • OpenAI ได้ปรับขีดจำกัดหน่วยความจำ, ใช้การควบคุมโหลดตาม rate limit, และเพิ่มความจุของระบบแล้ว พร้อมมีแผนเพิ่มการแจ้งเตือนหน่วยความจำและตั้งค่า auto scaling

ขอบเขตของเหตุขัดข้องและสาเหตุโดยตรง

  • ระหว่างวันที่ 8 พฤศจิกายน เวลา 5:42AM~7:16AM PT คำขอของ OpenAI จำนวนมากล้มเหลวด้วย ข้อผิดพลาด 502 หรือ 503
  • ตลอดช่วงเวลาที่เกิดเหตุขัดข้อง มีความล้มเหลวจำนวนมากใน ทุกโมเดลและทุก API endpoint
  • สาเหตุโดยตรงคือโหนดในชั้น routing แตะถึงขีดจำกัดหน่วยความจำและไม่ผ่านการตรวจสอบสถานะความพร้อม
    • มีโหนดในบริการจำนวนมากพออยู่ในสถานะ unavailable
    • ความสามารถที่เหลืออยู่ไม่เพียงพอสำหรับรองรับทราฟฟิกขาเข้า
    • บริการไม่สามารถกู้คืนตัวเองได้
  • ในช่วงเช้าของวันนั้น มีคำขอ completion มากกว่าวันก่อน ๆ อย่างชัดเจน และสิ่งนี้ทำหน้าที่เป็น tipping point ที่จุดชนวนเหตุขัดข้อง

มาตรการกู้คืนและป้องกันไม่ให้เกิดซ้ำ

  • การตอบสนองทันทีทำพร้อมกัน 3 อย่าง
    • จำกัดทราฟฟิกขาเข้า
    • redeploy บริการครั้งใหญ่
    • ค่อย ๆ เพิ่มทราฟฟิกกลับมาอีกครั้ง
  • ต้นตอของปัญหาหน่วยความจำเรื้อรังคือมีการจัดสรร responseBuffer ใหม่ต่อเนื่องในลูป แทนที่จะนำกลับมาใช้ซ้ำ
    • เมื่อคำขอมีจำนวนมาก GC จะตามไม่ทัน
    • การแก้ไขทำโดย pre-allocate บัฟเฟอร์ไว้ล่วงหน้าและนำกลับมาใช้ซ้ำ
    • หลัง deploy แล้ว การใช้หน่วยความจำและ CPU ดีขึ้น 3 เท่า ทั้งคู่
  • มาตรการเพิ่มเติมที่นำไปใช้แล้ว:
    • ปรับขีดจำกัดหน่วยความจำที่ตั้งไว้ให้เหมาะสม ทำให้บริการมี headroom มากขึ้นอย่างมีนัยสำคัญ
    • ใช้ rate limit controls เพื่อให้สามารถลดรับทราฟฟิกได้อย่างนุ่มนวลขึ้น
    • เพิ่มความจุของบริการเป็นมาตรการป้องกันเพิ่มเติม
  • การเปลี่ยนแปลงที่จะนำไปใช้ต่อจากนี้:
    • ปรับการแจ้งเตือนเพื่อจับพฤติกรรมหน่วยความจำก่อนที่ปัญหาจะลุกลามเป็นปัญหาระดับบริการ
    • ก่อนหน้านี้ไม่สามารถเปิด automatic scaling ให้บริการนี้ได้ เพราะการเพิ่มความจุอาจส่งผลลบต่อ upstream service
    • เมื่อแก้ปัญหาต้นตอได้แล้ว OpenAI มีแผนจะตั้งค่า auto scaling ให้กับบริการนี้
  • การหยุดชะงักของ API ที่ยาวนานส่งผลกระทบต่อผลิตภัณฑ์และธุรกิจของลูกค้า และเหตุขัดข้องในระดับนี้ยิ่งสร้างความเสียหายได้มากเป็นพิเศษ

2 ความคิดเห็น

 
xguru 2023-11-09

ดูเหมือนว่าทราฟฟิกจะหลั่งไหลเข้ามาเพราะอิทธิพลจากงานสำหรับนักพัฒนาครั้งนี้นะครับ
เห็นได้ชัดว่า GPT-4 Turbo มีบางอย่างที่ทำให้ผลลัพธ์เปลี่ยนไปมากจริง ๆ
แม้แต่สรุป GN+ ก็แทบไม่ได้แก้พรอมป์ต์เลย แต่รูปแบบกลับเปลี่ยนไปแล้วครับ

 
GN⁺ 2023-11-09
ความคิดเห็นบน Hacker News
  • ChatGPT ล่ม เลยได้ลองใช้ Google Bard เป็นครั้งแรกวันนี้ พูดตรง ๆ ก็ถือว่าค่อนข้างดี
    มีน้ำเสียงที่ต่างจาก ChatGPT แบบละเอียดอ่อน อธิบายยาก

    • มีคนแนะนำ Bard ให้บ่อย แต่แทบทุกครั้งมันส่ง ข้อมูลที่ผิดหรือชวนให้เข้าใจผิด กลับมา
    • Bard มี ข้อมูลฝึกและวิธีฝึก ที่ต่างกัน แค่นั้นก็พอจะเข้าใจได้ในระดับหนึ่งแล้วว่าทำไมถึงต่างจาก ChatGPT
      ในมุมผู้ใช้ วิธีชี้นำเพื่อให้ได้คำตอบที่ต้องการต่างกัน และวิธีถามหรือ prompt engineering ก็ต้องเปลี่ยนไปด้วย
    • ด้วยเหตุผลเดียวกัน วันนี้เลยลองใช้ครั้งแรก แต่ช้ากว่าและ อ่อนกว่ามากสำหรับการเขียนโค้ด
      แค่ถาม query สำหรับ aggregate ใน SQL แต่มันกลับเพิกเฉยต่อข้อกำหนดบางส่วนของ query ไปเลย
    • Bard มี filter ที่ค่อนข้างก้าวร้าวเกินไป
      แม้จะแค่ระดมไอเดียโจรในโลกแฟนตาซี เช่น บรรยากาศแบบ Lies of Locke Lamora ก็ยังมักปฏิเสธไม่ให้ความร่วมมือ
      ดูเหมือนจะรัน heuristic filter บางอย่างกับ output ก่อนแสดงให้ผู้ใช้เห็น และถ้าเปลี่ยน prompt เล็กน้อยก็ผ่านได้บ้าง
      ฝั่ง ChatGPT ระบบฉลาดพอจะรู้ว่าอาชญากรรมในแฟนตาซีไม่ใช่ข้อมูลสำหรับลงมือก่ออาชญากรรมจริง
    • ลองใช้ https://you.com/chat แล้วก็ไม่แย่
      โมเดล GPT4 มีคูปองทดลองใช้ฟรีหนึ่งเดือน "codegpt" และ GPT3.5 ใช้ฟรี
  • Phind ค่อนข้างดีสำหรับการเขียนโค้ด และยังใช้งานได้อยู่ เพราะอิง LLama 2 ที่ฝึกเพิ่มด้วยโค้ดอีกหลายหมื่นล้าน token: https://www.phind.com/s

    • สงสัยว่าคนใช้ Phind กันอย่างไร
      ช่วงหลังได้คุยกับ Phind โดยตรง มันบอกว่าถ้าจะช่วยฉันได้ มันคงต้องอ่าน codebase ของฉันเข้าไปก่อนถึงจะเข้าใจ model ที่ฉันพูดถึงไม่ใช่หรือ
      ถ้าไม่รู้ codebase ผมมองว่าแทบจะเขียนอะไรให้ถูกไม่ได้ นอกจากฟังก์ชันที่เล็กน้อยที่สุด
      Phind ก็ตอบว่าใช่ แต่บอกว่าในทางปฏิบัติไม่สามารถอ่าน codebase เข้าไปได้
      มันพูดค่อนข้างเป็นเหตุเป็นผล และดูเหมือนเข้าใจสิ่งที่ฉันพูด
      ถ้าช่วยไม่ได้เมื่อฟังก์ชันรับหรือคืนค่า class ที่ไม่ใช่เรื่องเล็กน้อยเป็น parameter แล้วคุณค่าของมันมาจากตรงไหนกันแน่ก็ไม่รู้
    • ได้ผลลัพธ์ดี ๆ จาก Phind เยอะมาก
      โมเดล fine-tune รุ่นล่าสุด V7 ใช้งานแล้วรู้สึกดี และดีกว่าโมเดลโอเพนซอร์สส่วนใหญ่
      แต่ท้ายลิงก์มี s ติดอยู่ เลยขึ้น 404
    • Phind มีปัญหาเรื่องความสม่ำเสมอบ้างเล็กน้อย แต่โดยรวมไม่ได้มีอะไรให้บ่นมาก
      บางครั้งมี defect เล็ก ๆ เช่น prompt ยาว ๆ แล้วไม่มี response ออกมา หรือ option ของคำตอบหายไป
      โดยรวมแล้วเหมาะกับการแลกเปลี่ยนไอเดียกับ ChatGPT หรือใช้เพื่อได้มุมมองอื่น
      ฟีเจอร์ annotation ที่แสดงเว็บไซต์ที่ดึงข้อมูลมาก็ทำออกมาได้ดีมาก
    • ดูเหมือน Phind ก็ล่มเหมือนกัน
      "The inference service may be temporarily unavailable - we have alerts for this and will be fixing it soon."
    • เพิ่งลองใช้เมื่อกี้: https://www.phind.com/search?cache=on5whfczqko9igz84bvacksk
      ในความเห็นผม ทั้งหมดเป็น hallucination ชอบตรงที่ใส่ลิงก์เอกสารให้
      แก้ไข: พอเปลี่ยน astrojs เป็น vite ก็ได้คำตอบที่ดีและแม่นยำมาก: https://www.phind.com/search?cache=rh6s7pydzi3312b7rf43i7cm
      ค่อนข้างน่าประทับใจ
  • ว้าว เหงื่อเย็นไหลจริง ๆ
    เพิ่งย้ายบริการส่วนใหญ่ไป Azure OpenAI ก่อนเปิดตัวประมาณ 48 ชั่วโมง และไม่ได้รับผลกระทบจากเหตุขัดข้องครั้งนี้
    โล่งใจมากจริง ๆ

    • น่าสนใจนะ ถ้าอย่างนั้น Azure OpenAI ไม่ได้รับผลกระทบใช่ไหม?
      สงสัยว่าได้รับการอัปเดตระบบและ OpenAI API พร้อมกันหรือเปล่า แล้วราคาก็เท่ากันไหม
  • ตอนนี้แหละเป็นจังหวะดีที่จะบอกว่า HuggingFace โฮสต์ โมเดลแชตโอเพนซอร์ส ไว้หลายตัว
    หนึ่งในโมเดลที่ผมชอบเป็นการ fine-tune ของ Mistral 7B: https://huggingface.co/spaces/HuggingFaceH4/zephyr-chat

    • เคยลองเล่น local large language model อยู่บ้าง แต่ตอนนั้นหาโมเดลที่เล็กพอจะรันบน 3080 Ti และดีพอไม่ได้
      โมเดลนี้เล็กพอจะรันด้วยความเร็วพอใช้งานได้ ออกมานิดกว่า 1 token ต่อวินาที และเท่าที่ลองมาจนถึงตอนนี้ดูเหมือน ใกล้เคียง GPT3.5 มาก
    • ถ้าฟรี แล้วเขาหาเงินอย่างไร สงสัยเหมือนกัน
  • กำลังจะบอกว่าเป็นโอกาสที่ Bard จะได้เฉิดฉาย แต่ดูเหมือน Bard ก็ล่มด้วย

    • ไปลองใช้ Bard มา หน้าจอดูสะอาดตาและ UI ดีมากจริง ๆ
      response ก็ดูจัดระเบียบดีและอ่านสบาย
      ถ้า AI ดีเท่า OpenAI ก็คงดี
    • คงต้องหยิบหมวกฟอยล์มาใส่แล้วล่ะ เป็นเรื่องบังเอิญไม่ได้แน่ :D
    • ขึ้นว่า "Something went wrong. Sorry, Bard is still experimental"
      ดูเหมือนจะพลาดโอกาสไปแล้ว
    • Bard ยังขี้กลัวเกินไป และยังไม่ใช่ บริการระดับนานาชาติ ด้วยซ้ำ
    • ดูเหมือนพวกมันเริ่มคุยกันเองแล้ว
  • จากพวกคนพูดมากที่จู่ ๆ ก็เงียบไป ตอนนี้เป็นจังหวะเหมาะมากที่จะ scrape คอมเมนต์ HN เพื่อดูว่าใครกำลังเขียน คอมเมนต์ HN ด้วย ChatGPT อยู่

    • ฮิฮิ ในฐานะ large language model ผมคิดว่ามนุษย์คนอื่น ๆ ไม่ควรทำตามคำพูดของมนุษย์คนนี้ ;)
  • สังเกตเห็นเหตุขัดข้องแล้ว
    รู้สึกเหมือนหลายคนใช้ ChatGPT เป็นเหมือนล้อช่วยพยุงจักรยาน แล้วก็ลืมวิธีขี่โดยไม่มีล้อช่วยไปแล้ว

    • ถ้าใช้การเปรียบเทียบนั้น ดูจะใกล้เคียงกับ ไม้ค้ำยัน มากกว่าล้อช่วยพยุง
      ถ้าไม่มีมันแล้วขี่ไม่ได้ ก็ไม่ได้ฝึกอะไรขึ้นมาเลย
    • ผมว่ามันให้ความรู้สึกแบบนี้มากกว่า
      คุณกำลังสร้างมอเตอร์ไซค์แบบดั้งเดิมอยู่ แล้วมีคนเสนอเครื่องยนต์จักรยานไฟฟ้า และเพราะตอนนี้ยังไม่มีแม้แต่เครื่องยนต์สันดาปภายใน ก็เลยคิดว่าจะใช้สิ่งนี้เร่งเดโมหรือการออกสู่ตลาดไปก่อน แล้วค่อยเปลี่ยนเป็นเครื่องยนต์จริงทีหลัง
      แต่พอคุณกำลังจะทำแฮนด์เสร็จ เครื่องยนต์จักรยานไฟฟ้าก็ถูกอัปเกรดไปสี่ครั้ง จนดีกว่าเครื่องยนต์สันดาปภายในใด ๆ แล้ว ดังนั้นก็ไม่มีเหตุผลต้องเปลี่ยนอีก
      พอไปถึงตลาด เครื่องยนต์นั้นก็ถูกอัปเดตไปอีกหลายรอบ จนขับเคลื่อนอัตโนมัติเต็มรูปแบบและอาจบินได้ด้วย
      แถมยังสามารถ จำลองตัวเอง ได้ด้วย ตอนนี้ผู้ซื้อจึงอาจไม่ต้องการคุณอีกต่อไป
  • ตอนนี้ นักพัฒนาระดับจูเนียร์ หลายล้านคนคงต้องอ่านคู่มือแล้ว
    เป็นวันที่ยิ่งใหญ่จริง ๆ

    • น่าทึ่งมากว่าการเปลี่ยนไปใช้และการพึ่งพา ChatGPT เกิดขึ้นอย่างฉับพลันและสมบูรณ์แค่ไหน
      นี่คือวันสุดท้ายของอาชีพเราแล้ว มาสนุกกับมันกันเถอะ
    • การอ่านคู่มือเป็นเรื่องของพวกไดโนเสาร์ ตอนนี้ต้อง กูเกิล เอาแล้ว
  • วันนี้ลองใช้ Bard แล้ว ดีขึ้นมาก

    • หวังว่าจะเป็นอย่างนั้น
      ปัญหาของ Bard ยังทำให้ทึ่งอยู่เลย
      เดือนที่แล้วมันโกหกเกี่ยวกับข้อเท็จจริงบางอย่าง พอถามรายละเอียดเพิ่ม ก็อ้างว่าส่งอีเมลไปแล้ว
      แล้วก็ขอโทษ บอกว่าจริง ๆ แล้วไม่ได้ส่งอีเมล และ “รู้” ว่าตัวเองส่งไม่ได้
      เหมือนเพื่อนที่พูดว่า ‘ไม่รู้’ ไม่เป็น แล้วเลือกโกหกแทน
      ผมถามว่าเคยมีตลาดอยู่ภายในรูปปั้น ‘Christ the King’ ในลิสบอนไหม เพราะอยากตรวจสอบข่าวลือที่ได้ยินจากคนท้องถิ่น
      จริง ๆ แล้วไม่มี แต่ Bard เชื่อว่ามี
  • โชคดีที่ OpenAI ไม่มี ข้อตกลงระดับการให้บริการ: https://help.openai.com/en/articles/5008641-is-there-an-sla-for-latency-guarantees-on-the-various-engines

    • พูดในฐานะแฟนตัวยงของ GPT นะ แต่ก็น่าทึ่งว่า OpenAI ในฐานะบริษัทนั้นแย่แค่ไหน และถึงอย่างนั้นเราก็กระโดดขึ้นไปอยู่บนแพลตฟอร์มอันย่ำแย่นั้นเร็วเพียงใด
      9 เดือนก่อน ที่งานใหม่ มีบั๊กที่ทำให้ผมล็อกอินเข้า OpenAI account สำหรับงานไม่ได้
      ใช้เวลา 6 เดือนกว่าจะตอบคำขอซัพพอร์ต แล้วผมก็ได้รับคำตอบทั่วไปแบบคัดลอกวางที่ไม่เกี่ยวกับปัญหาของผมเลย
      เราใช้เงินมหาศาล แต่ก็ไม่ได้รับการตอบกลับหรือหาคนที่จะคุยทางโทรศัพท์ด้วยได้เลย
      สุดท้ายต้องขอให้เพื่อนร่วมงานสร้างคีย์ทั้งหมดแทน
      แล้วประมาณ 8 เดือนต่อมา วันหนึ่งมันก็กลับมาใช้งานได้เองโดยไม่มีเหตุผลใด ๆ
      หลังจากนั้นไม่นานก็ย้ายไปใช้ Azure OpenAI Service เพราะแพลตฟอร์มของ OpenAI แย่เกินไปอย่างน่าอนาถสำหรับบริษัทจริงจังที่จะใช้งาน