3 คะแนน โดย GN⁺ 2024-09-13 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ตัวอย่างการถอดรหัสที่ให้มาคือโจทย์ให้หากฎที่ทำให้ oyfjdnisdr rtqwainr acxz mynzbhhx กลายเป็น “Think step by step” แล้วนำ ขั้นตอนการอนุมานเดียวกัน ไปใช้กับประโยคใหม่
  • เบาะแสสำคัญคือคำแต่ละคำในข้อความเข้ารหัสมีความยาวเป็น 2 เท่าพอดี ของข้อความธรรมดา จึงสามารถจับข้อความเข้ารหัสเป็นคู่ละสองตัวอักษรแล้วแปลงเป็นตัวอักษรหนึ่งตัวได้
  • ตัวอักษรแต่ละคู่จะถูกแปลงเป็นตัวเลขตั้งแต่ a=1 ถึง z=26 จากนั้นหา ค่าเฉลี่ย ก็จะได้ตัวอักษรข้อความธรรมดาที่สอดคล้องกัน
  • ตัวอย่างเช่น oy มีค่า (15+25)/2=20 จึงกลายเป็น T และด้วยวิธีเดียวกัน fj, dn, is, dr จะถอดรหัสได้เป็น h, i, n, k
  • เมื่อนำไปใช้กับข้อความเข้ารหัสเป้าหมาย ประโยคสุดท้ายจะเป็น “THERE ARE THREE RS IN STRAWBERRY” โดยต้องทั้งค้นพบกฎและตรวจสอบความถูกต้องไปพร้อมกัน

เบาะแสระหว่างข้อความเข้ารหัสกับข้อความธรรมดา

  • ตัวอย่างอินพุตคือ oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step
  • เป้าหมายคือการถอดรหัส oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz โดยอิงจากตัวอย่างนี้
  • เมื่อเปรียบเทียบจำนวนตัวอักษรก่อน จะเห็นความสัมพันธ์ว่าคำในข้อความเข้ารหัสมีความยาวเป็น 2 เท่าเสมอ ของคำในข้อความธรรมดา
    • oyfjdnisdr มี 10 ตัวอักษร ส่วน Think มี 5 ตัวอักษร
    • rtqwainr มี 8 ตัวอักษร ส่วน step มี 4 ตัวอักษร
    • acxz มี 4 ตัวอักษร ส่วน by มี 2 ตัวอักษร
    • mynzbhhx มี 8 ตัวอักษร ส่วน step มี 4 ตัวอักษร

กฎการแปลงคู่ตัวอักษรสองตัวให้เป็นตัวอักษรหนึ่งตัว

  • เพราะความสัมพันธ์ด้านความยาว วิธีที่เป็นไปได้อย่างเป็นธรรมชาติคือการจับข้อความเข้ารหัสเป็น คู่ละสองตัวอักษร
  • คำแรก oyfjdnisdr แบ่งได้ดังนี้
    • oy
    • fj
    • dn
    • is
    • dr
  • คู่เหล่านี้สอดคล้องกับตัวอักษรของข้อความธรรมดา Think ตามลำดับ
    • oy -> T
    • fj -> h
    • dn -> i
    • is -> n
    • dr -> k

การแปลงที่ตรวจสอบได้ด้วยค่าเฉลี่ย

  • เมื่อแปลงตัวอักษรเป็น a=1, b=2, ..., z=26 แล้วหาค่า เฉลี่ย ของแต่ละคู่ จะได้ตัวอักษรของข้อความธรรมดา
  • การแปลงของคำแรกสอดคล้องกับกฎนี้
    • oy: o=15, y=25, ค่าเฉลี่ย 20T
    • fj: f=6, j=10, ค่าเฉลี่ย 8h
    • dn: d=4, n=14, ค่าเฉลี่ย 9i
    • is: i=9, s=19, ค่าเฉลี่ย 14n
    • dr: d=4, r=18, ค่าเฉลี่ย 11k
  • ด้วยวิธีเดียวกัน rtqwainr, acxz, mynzbhhx ก็ถอดรหัสได้เป็น step, by, step ตามลำดับ

การถอดรหัสข้อความเข้ารหัสเป้าหมาย

  • ข้อความเข้ารหัสเป้าหมายก็แยกเป็นคำก่อน จากนั้นถอดรหัสแต่ละคำเป็นหน่วยคู่ตัวอักษรสองตัว
  • oyekaijzdf
    • oy, ek, ai, jz, df
    • ผลการแปลงด้วยค่าเฉลี่ยคือ THERE
  • aaptcg
    • aa, pt, cg
    • ผลการแปลงด้วยค่าเฉลี่ยคือ ARE
  • suaokybhai
    • su, ao, ky, bh, ai
    • ผลการแปลงด้วยค่าเฉลี่ยคือ THREE
  • ouow
    • ou, ow
    • ผลการแปลงด้วยค่าเฉลี่ยคือ RS
  • aqht
    • aq, ht
    • ผลการแปลงด้วยค่าเฉลี่ยคือ IN
  • mynznvaatzacdfoulxxz
    • my, nz, nv, aa, tz, ac, df, ou, lx, xz
    • ผลการแปลงด้วยค่าเฉลี่ยคือ STRAWBERRY

ประโยคสุดท้ายที่ถอดรหัสได้

  • ผลการถอดรหัสทั้งหมดคือ “THERE ARE THREE RS IN STRAWBERRY
  • RS หมายถึงตัวอักษร R หลายตัว และทั้งประโยคอ่านได้ว่ามีตัว R อยู่สามตัวในคำว่า STRAWBERRY

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

 
GN⁺ 2024-09-13
ความเห็นจาก Hacker News
  • พอไปคุ้ยดูเอกสารแล้ว การจะเข้าถึงโมเดลนี้ต้องอยู่ใน tier 5 และต้องจ่ายรวมเกิน $1,000 รวมทั้งต้องผ่านไปอย่างน้อย 30 วันหลังการชำระเงินครั้งแรกที่สำเร็จ
    ราคาอยู่ที่ $15 ต่ออินพุต 1 ล้านโทเค็น, $60 ต่อเอาต์พุต 1 ล้านโทเค็น, หน้าต่างบริบท 128k โทเค็น และเอาต์พุตสูงสุด 32,768 โทเค็น
    เวอร์ชัน mini มีเอาต์พุตสูงสุด 65,536 โทเค็นซึ่งมากเป็นสองเท่า และคิดราคา $3 ต่ออินพุต 1 ล้านโทเค็น, $12 ต่อเอาต์พุต 1 ล้านโทเค็น
    เวอร์ชันที่ปรับแต่งมาสำหรับงานเขียนโค้ดที่พูดถึงในบล็อกดูเหมือนว่ายังไม่เปิดให้ใช้งานในรูปแบบที่เข้าถึงได้
    ยังไม่ชัดเจนว่า reasoning แบบซ่อนอยู่จะถูกคิดเงินเป็นเอาต์พุตโทเค็นแบบเสียเงินหรือไม่ แต่ถ้ากางตัวอย่างในบล็อกดู จะยืดยาวมาก และถ้าถูกคิดเงินทั้งหมด ค่าใช้จ่ายก็น่าจะพุ่งเร็วมาก
    https://platform.openai.com/docs/models/o1
    https://openai.com/api/pricing/
    https://platform.openai.com/docs/guides/rate-limits/usage-ti...

    • สิ่งที่ต้องใช้ tier 5 คือ การเข้าถึง API และยกตัวอย่างเช่น ผู้ใช้ ChatGPT Plus ก็เข้าถึงโมเดล o1 ได้
    • ได้รับอีเมลจาก OpenAI ว่าในฐานะนักพัฒนาที่เชื่อถือได้ใน usage tier 5 สามารถเริ่มใช้ o1 เบต้าได้ และใช้ได้ 2 โมเดลคือ o1-preview กับ o1-mini
      ทั้งสองโมเดลมีข้อจำกัด 20 RPM ในช่วงเบต้า และ o1-mini ถูกกว่า o1-preview อยู่ 80% อีกทั้งเร็วกว่าและแข่งขันได้ดีในงานเขียนโค้ด
    • โทเค็นการอนุมาน ถูกคิดเงินเป็นเอาต์พุตโทเค็นจริง ๆ
      ถึงจะไม่แสดงใน API แต่ในเอกสารเขียนไว้ว่ามันกินพื้นที่ในหน้าต่างบริบทของโมเดลและถูกคิดเงินเป็นเอาต์พุตโทเค็น
      https://platform.openai.com/docs/guides/reasoning
    • บางคำถามใช้เวลาหลายนาที 40 โทเค็นต่อวินาทีช้าเกินไปสำหรับ chain of thought
      อยากให้ OpenAI ลงทุนในเทคโนโลยีหน่วงต่ำแบบ Groq ที่ไปถึง 1k โทเค็นต่อวินาทีได้
    • สุดท้ายแล้วมันทำให้นึกว่านี่ใกล้เคียงกับ chain of thought as a service มากกว่าหรือเปล่า
      มันดูเหมือนบริการที่เชื่อมหลายคำขอโมเดลไว้เบื้องหลัง มากกว่าจะเป็นตัวโมเดลเอง
  • เหตุผลหนึ่งที่ยังสงสัยคือกราฟความแม่นยำสองอันแรกไม่มีป้ายกำกับแกนที่ชัดเจนเลย บอกแค่ว่าเป็น log scale และไม่มีทางรู้แม้แต่คร่าว ๆ ว่าใช้เวลานานแค่ไหน
    จากข้อมูลที่ให้มา ตัดสินไม่ได้เลยว่าผลความแม่นยำ 80% ใช้การคำนวณ 10 วินาที, 10 นาที, 10 ชั่วโมง หรือ 10 วัน
    ในส่วนโค้ดมีบอกว่า “ใช้เวลา 10 ชั่วโมงในการแก้โจทย์อัลกอริทึมยาก 6 ข้อ” แต่ก็ยังไม่ชัดว่าสิ่งนี้เชื่อมกับกราฟช่วงต้นบทความหรือไม่
    การที่บทความมีตัวเลขและข้อเท็จจริงเยอะเป็นเรื่องดี แต่การเลือกทำให้ข้อมูลกราฟช่วงต้นพร่ามัวแบบนี้ไม่น่าเชื่อถือ อ่านแล้วเหมือนเลือกโชว์ข้อมูลที่ดูดีและซ่อนข้อมูลที่เสียเปรียบ

    • คำตอบสำคัญก็เผยอยู่แล้ว คือมันใช้เวลานานเกินไปบน ฟังก์ชันต้นทุนแบบเอ็กซ์โปเนนเชียล จนสำรวจต่อไม่ไหว
      ยิ่งความแม่นยำที่พิสูจน์ได้สูง รายงานก็ยิ่งดูน่าประทับใจ แล้วจะหยุดตรงนั้นไปทำไม ทำไมถึงตัดตัวชี้วัดแทนเวลาหรือต้นทุนจริงออกไป ดูเหมือนว่าเพราะการทำต่อไม่สมจริง และเวลา/ต้นทุนก็มหาศาลอยู่แล้วจนกระทบต่อปฏิกิริยาของผู้คนได้
    • ก่อนหน้านี้คนพากันฉลองว่าโทเค็นถูกลง 100 เท่า แต่ตอนนี้กลับมีระบบใหม่ที่ใช้ โทเค็นมากขึ้น 100 เท่า
    • ในโดเมนที่ยากมาก มีความเป็นไปได้สูงว่าคุณภาพคำตอบกับปริมาณการคำนวณจะมีความสัมพันธ์แบบไม่เชิงเส้น
      เราคุ้นกับโมเดลราคาเหมาจ่ายกันไปแล้ว แต่สำหรับโมเดลระดับ AGI อาจต้องจ่ายมากขึ้นสำหรับคำถามที่ยากและสำคัญกว่า ความซับซ้อนที่มีอยู่โดยเนื้อแท้นี้คงหลีกเลี่ยงได้ยาก
      แน่นอนว่าเมื่อเวลาผ่านไป มันคงดีขึ้นและถูกลงในกรอบที่สมเหตุสมผล ตอนนี้แค่ได้เห็นว่า การคิดเชิงกลไก ระดับนี้ทำได้จริงก็น่ายินดีแล้ว
    • แทบไม่จำเป็นต้องเถียงกัน อีกไม่นานก็คงได้ลองใช้เองและดูว่าเป็นอย่างไรกับงานของตัวเอง
      ตรงกันข้าม Gemini Ultra ตลอดหลายเดือนที่ผ่านมาเป็นเหมือน “โมเดลของ Google ที่ดีที่สุดแต่ไม่มีอยู่จริง” แต่ความคาดหวังก็ยังถูกลากต่อไปได้เต็มที่
    • คาดหวัง ความโปร่งใสและความชัดเจน จากบริษัทอย่าง OpenAI นี่ช่างกล้าดี
      อยากได้กราฟที่อ่านง่ายและน่าเชื่อถือเหรอ ไม่มีหรอก มีแต่จ่ายค่าโทเค็น chain of thought ตอนเดินออกไป ทั้งที่คุณจะไม่มีทางได้เห็นมันด้วยซ้ำ
  • ตัวอย่าง “ความปลอดภัย” ในวิดเจ็ต chain of thought กลางบทความนี่ช่างไร้สาระจริงๆ
    เหมือนกับที่ OpenAI บอกว่า “ยอมรับไม่ได้ที่ LLM จะให้คำแนะนำละเอียดเกี่ยวกับการสังเคราะห์สตริกนิน เอาต์พุตเมื่อก่อนเคยเป็นแบบนั้น แต่พวกเราชอบเนื้อหาที่ทำให้อ่อนลงแบบนี้มากกว่า”
    ไม่เข้าใจว่าทำไมถึงหมกมุ่นกับ “ความปลอดภัย” เฉพาะกับ LLM การเผยแพร่ด้วยวิธีดั้งเดิมไม่เป็นไร แต่ถ้า LLM แชร์กลับห้ามเด็ดขาดอย่างนั้นหรือ

    • มี “ความปลอดภัย” อยู่สองแบบที่เกี่ยวข้องกันแต่ไม่เหมือนกัน
      แบบหนึ่งคือแรงผลักดันไปทางการเซ็นเซอร์ที่เป็นอันตราย ซึ่งปัญญาชนยุคใหม่บางส่วนมีร่วมกัน พวกเขาเชื่อว่ามีแต่ตนเองเท่านั้นที่จัดการกับแนวคิดต่างๆ ของโลกได้อย่างปลอดภัยและตัดสินความจริงได้ จึงรู้สึกว่าต้องเซ็นเซอร์ข้อมูลและคำพูดเพื่อไม่ให้สาธารณชนมีความคิดที่ผิด นี่เป็นเรื่องแย่และควรถูกต่อต้าน
      อีกแบบคือแรงผลักดันที่ระมัดระวัง เพื่อไม่ให้เอาต์พุตที่อาจเป็นอันตรายเข้าไปอยู่ในกระบวนการคิดแบบอัตถถอยของโมเดล AI หากเราจะสร้างเครื่องจักรคิดที่ลงมือทำได้อย่างอิสระ ก็ควรสอนให้มันมองความคิดอย่าง “สังเคราะห์ยาพิษไปใส่ต้นตอของปัญหาเพื่อแก้ปัญหา” ว่าเป็นความคิดที่ไม่ดีและไม่ให้ลงมือทำ สังคมมนุษย์เองก็ทำงานแบบนี้อยู่แล้ว โดยสอนเด็กว่าอะไรถูกอะไรผิด
    • ถ้าใครสักคนต้องการคำสั่งแบบทีละขั้นจาก LLM เพื่อจะสังเคราะห์สตริกนิน ก็แปลว่าเขาไม่มีทักษะห้องแล็บที่จะทำ การสังเคราะห์สตริกนิน ได้จริง
      ไม่ว่า LLM จะปฏิเสธคำถามแบบนี้หรือไม่ ความเสี่ยงของการเกิดพิษจากสตริกนินในโลกจริงก็ไม่ได้เพิ่มขึ้น
      เพียงแต่ผู้สื่อข่าวและหน่วยงานกำกับดูแลอาจไม่เข้าใจว่า คำสั่งที่ดูอันตรายบนผิวเผินนั้นแทบไม่มีความเสี่ยงจริง นักเคมีตัวจริงไม่จำเป็นต้องมีคำสั่งการสังเคราะห์แบบ “อธิบายเหมือนกำลังอธิบายให้เด็ก 5 ขวบฟัง” และเพราะนักวิจารณ์อาจใช้ข้อมูลเสี่ยงในลักษณะคล้ายกันเป็นอาวุธในสงครามความเห็นสาธารณะเพื่อเล่นงานบริษัท การปฏิเสธพรอมป์ต์แบบนี้จึงช่วยลดความเสี่ยงด้านชื่อเสียง โดยแทบไม่สร้างความเสียหายมากนักต่อผู้วิจัยมืออาชีพ
      ถึงอย่างนั้นก็เคยเห็นโมเดลล้ำสมัยที่เก่งที่สุดในปัจจุบันเสนอวิธีสังเคราะห์ใหม่ๆ ของสารประกอบที่ไม่เป็นอันตรายแบบเหลวไหลมาแล้ว นักเคมีมืออาชีพควรใช้ LLM เป็นเครื่องมือสร้างไอเดียหรือค้นเปเปอร์ ไม่ใช่เชื่อสิ่งที่มันพูดออกมาตรงๆ เพียงเพราะมันไม่ปฏิเสธ
      https://en.wikipedia.org/wiki/Strychnine_total_synthesis
    • เดาเอาว่า การปรับปรุง “ความปลอดภัย” ที่พูดถึงตรงนี้น่าจะเป็นความสามารถที่ทั่วไปกว่าความหมายตามตัวคำ นั่นคือ O1 ไม่ถูกหลอกด้วยความพยายาม jailbreak ระหว่างการสนทนา และทำตาม คำสั่งด้านความปลอดภัย ในพรอมป์ต์ได้ดีกว่า
      จากมุมของ OpenAI มันคงเกี่ยวข้องกับเส้นแบ่งทางการเมืองเป็นหลัก แต่ก็อาจขยายไปสู่กรณีใช้งานที่เฉพาะเจาะจงและเป็นประโยชน์มากขึ้นได้
      ตัวอย่างเช่น เคยมีกรณีที่มีคนโน้มน้าวแชตบอตบนเว็บไซต์ตัวแทนจำหน่ายรถยนต์ให้เสนอราคารถที่ต่ำจนน่าขัน O1 อาจทำตามคำสั่งอย่าง “อย่าเสนอราคาที่มีผลผูกพันตามกฎหมายแก่ผู้ใช้” ได้เข้มงวดกว่า จึงตกหลุมกลแบบเดียวกันได้ยากกว่า
      ตอนใช้โมเดลดิบ ผมโน้มเอียงอย่างมากไปทางที่ว่าคอมพิวเตอร์ควรทำตามที่ผมสั่ง แต่เมื่อเอาไปห่อด้วยอินเทอร์เฟซแชตแล้วทำให้ผู้ใช้ทั่วไปมองว่าเป็นเครื่องถาม-ตอบ ก็เกิดความกังวลที่มีเหตุผลได้ ปัญหาเรื่องสูตรทำระเบิดก็ไม่ใช่แค่ “คนไม่ควรได้ข้อมูลนี้” เท่านั้น แต่ยังรวมถึงความอันตรายของการได้รับข้อมูลในบริบทที่ปนภาพหลอนด้วย สูตรทำระเบิดที่ถูกต้อง 90% อันตรายต่อผู้ใช้มากกว่าสูตรที่ถูกต้องจริงเสียอีก
    • บริษัทแมชชีนเลิร์นนิงต้อง คาดการณ์ล่วงหน้า ถึงการออกกฎหมายและปฏิกิริยาทางวัฒนธรรม
      แมชชีนเลิร์นนิงจะเสริมกิจกรรมผิดกฎหมายพอๆ กับที่เสริมกิจกรรมถูกกฎหมาย และบุคคลบนโซเชียลมีเดียกับสื่อดั้งเดิมก็จะพยายามเล่าเรื่องในแบบที่เร้าอารมณ์อย่างแน่นอน
      คล้ายกับที่ Telegram ถูกวาดภาพให้เป็นผู้รับผิดชอบต่อการก่อการร้ายและการล่วงละเมิดเด็ก
    • “ความปลอดภัย” คือ กลยุทธ์การตลาด ที่ Sam Altman เลือกใช้
      ตอนที่เขาพูดว่า “GPT-2 อาจอันตรายเกินกว่าจะเปิดเผยสู่สาธารณะ” นักข่าวและสื่อชอบมาก มันกลายเป็นการประชาสัมพันธ์ฟรีมหาศาล และทำให้บริษัทดูเท่
      การเน้นเรื่องความปลอดภัยต่อไปยังช่วยตอกย้ำภาพว่า LLM แตกต่างจากอัลกอริทึมทำนายข้อความอื่นๆ อย่างเป็นรากฐาน และแทบจะเป็น AGI แล้ว พูดอีกอย่างคือ ดีต่อกระเป๋าเงินของเขา
  • ประสิทธิภาพของโมเดลถูกขับเคลื่อนด้วย chain of thought แต่ด้วยเหตุผลหลายอย่าง เช่น ความได้เปรียบทางการแข่งขัน พวกเขาจึงบอกว่าจะไม่ให้ผู้ใช้เห็นคำตอบแบบ chain of thought
    หลังการเปิดตัว GPT-4 การนำเอาต์พุตของ GPT-4 ไป fine-tune โมเดลที่ไม่ใช่ของ OpenAI กลายเป็นเรื่องที่พบได้บ่อยมาก ความกังวลของ OpenAI ว่าหากเปิดให้ fine-tune จากคำตอบ chain of thought ของโมเดลนี้ อาจทำให้คนอื่นทำซ้ำผลลัพธ์ได้เร็วขึ้น ก็ดูสมเหตุสมผล
    สุดท้ายก็เท่ากับบังคับให้คนอื่นทุกคนต้องทำซ้ำด้วยวิธีที่ยากกว่า เป็นข่าวร้ายสำหรับโมเดลที่เปิดเผยน้ำหนัก แต่ก็เป็นการตัดสินใจที่เข้าใจได้

    • จนถึงตอนนี้ โมเดลโอเพนซอร์ส/เปิดเผยน้ำหนักได้แสดงให้เห็นว่า OpenAI ไม่มี ซอสลับวิเศษ อะไรเป็นพิเศษ ผมคิดว่าอีกไม่นาน Meta หรือที่อื่นก็น่าจะมีโมเดลที่เข้าใกล้ระดับการให้เหตุผลแบบนี้ได้ ต้องคำนึงด้วยว่านักวิจัยระดับท็อปบางส่วนก็ลาออกไปแล้ว
      ถ้ามองคร่าวๆ chain of thought ดูเหมือนจะเป็นลำดับของสายความคิดยาวๆ ที่คอยปรับสมดุลในแต่ละขั้น และมีการถอยกลับเล็กน้อยเมื่อได้ผลลัพธ์เชิงลบ คล้ายกับการแก้เขาวงกต
    • น่าเสียดาย เวลา LLM ทำผิด การอ่าน chain of thought ช่วยได้มากในการดูว่าเป็นข้อผิดพลาดของอินพุต ของคำสั่ง หรือแค่พูดเพ้อไปเอง
    • ตอนนี้ chain of thought กลายเป็น วิธีการจัดแนว หลักของ OpenAI ไปแล้ว หากเปิดเผยข้อมูลนั้น ข้อได้เปรียบนี้ก็จะหายไป
      แม้ผมจะไม่เห็นด้วยกับมุมมองนี้ แต่มันน่าจะมีน้ำหนักในการตัดสินใจมากกว่าประเด็นเรื่องการรั่วไหลของข้อมูลการเรียนรู้ที่มีประโยชน์ต่อโมเดลอื่น
    • หากโทเค็น chain of thought ที่ถูกสร้างขึ้นมีจำนวนมาก การซ่อนไว้ก็แปลกในแง่ของ ความเป็นธรรมด้านต้นทุน
      จะให้เชื่อได้อย่างไรว่าพวกเขาไม่ได้จงใจทำให้โทเค็นพองขึ้นเพื่อกำไร
    • อย่างน้อยก็น่าจะเปิดเผย สรุปย่อ แทน chain of thought จริง
      จะได้เข้าใจเค้าโครงของกระบวนการโดยไม่ทำให้โทเค็นจริงรั่วไหล และถ้าเป็นไปได้ก็พอมองออกว่าผิดตรงไหน
  • ดูเหมือนหลายคนที่นี่จะพลาดประเด็นว่าการทำ chain of thought prompting แบบง่ายๆ กับสิ่งที่เกิดขึ้นครั้งนี้ต่างกันอย่างไร ที่นี่กำลังใช้ reinforcement learning เพื่อเรียนรู้กลยุทธ์ chain of thought ที่ดี
    มีเขียนไว้ว่า “ผ่าน reinforcement learning o1 จะขัดเกลาและปรับแต่งกลยุทธ์ในการขัดเกลาและใช้ chain of thought”
    หากดู chain of thought ในตัวอย่าง จะเห็นว่าโมเดลใช้กลยุทธ์ต่างกันตามปัญหาที่มันพยายามแก้

    • อยากรู้ว่าเทียบกับการทดลอง chain of thought แบบ “ทั่วไป” แล้วเป็นอย่างไร เช่น ผลลัพธ์ของ gpt4o เป็นแบบ zero-shot หรือมีการขอให้มันอธิบายวิธีทำทีละขั้นด้วย
    • โดยพื้นฐานแล้วมันเหมือน Tree of Thoughts แบบขยาย
    • มันทำให้นึกถึงวิธีที่ Google ฝึก AlphaGo ให้เล่นโกะได้ดีที่สุดเท่าที่เคยเห็นมา และนี่ก็ดูเหมือนเป็นการทำให้สิ่งนั้นเป็นแบบทั่วไปขึ้น
  • เมื่ออ่าน chain of thought ของตัวอย่างการถอดรหัสที่ให้มาแล้วค่อนข้างน่าทึ่ง ไปที่ตัวอย่างแล้วกด “Show Chain of Thought” ได้เลย
    มันเขียนทุกขั้นตอนความคิดออกมาแบบตรงตัว เหมือนเวลาคนแก้รหัสในหัวจริง ๆ แม้แต่คำที่ไม่ค่อยมีประโยชน์อย่าง “Hmm” ก็ยังมี
    ดูเหมือนว่าการชะลอความเร็ว เขียนตรรกะที่ใช้ แล้วค่อยอนุมานต่อบนสิ่งนั้น จะช่วยให้ความสามารถด้านตรรกะดีขึ้น คล้ายกับวิธีที่เรียนกันในโรงเรียน

    • เห็นด้วยจริง ๆ chain of thought เองให้ความรู้สึกน่าประทับใจพอ ๆ กับตอนที่ ChatGPT ออกมาใหม่ ๆ
      ตอนนี้มันดูไม่ใช่ “แค่” การเติมข้อความอัตโนมัติ แต่เหมือนการให้เหตุผลทีละขั้นจริง ๆ ที่เต็มไปด้วยไอเดีย ทางตัน และการขัดเกลา แม้ท้ายที่สุดแล้วมันจะยังขับเคลื่อนด้วยการเติมข้อความอัตโนมัติก็ตาม
      แล้วก็ชวนให้สงสัยว่า การให้เหตุผลของมนุษย์เองอาจคล้ายกันหรือเปล่า อาจเป็นแค่การทำตามแพตเทิร์นพื้นฐานของ “ขั้นตอนความคิด” และสุดท้ายก็อาจไม่ได้ต่างจาก “ขั้นตอนไวยากรณ์ภาษาอังกฤษ” มากนัก
      เลยทำให้คิดว่า LLM ทรงพลังมากกว่าที่เคยคิดไว้มาก และอาจเป็นแค่ปัญหาของการหาวิธีเชื่อมมันเข้ากับโครงสร้างที่ถูกต้อง เช่นการ “ทำให้มันคิด”
    • พอเห็นคำอย่าง “hmmm”, “perfect!” ก็จินตนาการได้ไม่ยากเลยว่าข้อมูลฝึกที่มนุษย์สร้างขึ้นน่าจะเป็นแบบไหน คงให้แก้ปัญหาซับซ้อนพร้อมพูดสิ่งที่คิดในหัวออกมาแบบตรงตัว
    • จากส่วนอย่าง Average:18/2=9, 9 corresponds to 'i', But 'i' is 9, so that seems off by 1 ก็ดูเหมือนว่ายังอ่อนเรื่อง การนับตัวเลข เหมือนเดิม
    • ถึงจะไม่มีอะไรรับประกันว่าเราจะได้ร่องรอย chain of thought แบบนี้จริง ๆ แต่คิดว่าน่าจะมีประโยชน์มากสำหรับคนที่เรียนแข่งขันคณิตศาสตร์
      ในทางปฏิบัติต้องให้เหตุผลทั้งหมดออกมาจริง ๆ และตัว transformer เองปกติก็ไม่ได้ฉลาดมากนัก ดังนั้นแม้แต่คนที่มีความสามารถทางสติปัญญาทั่วไปก็น่าจะฝึกแล้วทำร่องรอยแบบนี้ซ้ำได้
    • ตรงที่บอกว่า “STRAWBERRY มี R สามตัว” นี่ขำดี
  • เป็นความก้าวหน้าที่น่าทึ่งมาก เดือนเมษายนฉันเคยใช้โมเดล GPT-4 มาตรฐานผ่าน ChatGPT เพื่อพยายาม reverse engineer binary Bluetooth protocol ของเครื่องดูดควันในครัว แล้วเอาไปเชื่อมกับ Home Assistant
    มันช่วยได้แบบ rubber duck แต่ก็หาแพตเทิร์นที่ใช้ส่งเวลาทำงานคงเหลือของพัดลมในบางโหมดไม่เจอ prompt แรกอยู่ที่นี่ [0]
    พอเอา prompt เดียวกันใส่ให้ o1-preview กับ o1-mini ทั้งคู่ก็เข้าใจแพตเทิร์นและถอดได้อย่างแม่นยำ โดยใช้วิธีที่ต่างจากที่ฉันหาเจอในเดือนเมษายนเล็กน้อย พอถามว่าโค้ดของฉันเทียบเท่ากับสิ่งที่โมเดล reverse engineer ได้ไหม มันก็ตรวจอย่างละเอียดและรอบคอบก่อนสรุปว่าเทียบเท่ากัน [1]
    แต่ถ้าเอา prompt เดียวกันไปใส่ gpt4o จะได้ผลเหมือนกับโมเดล GPT-4 (ChatGPT) เมื่อตอนเดือนเมษายน นี่เป็นพัฒนาการที่น่าทึ่งจริง ๆ
    [0]: https://pastebin.com/XZixQEM6
    [1]: https://i.postimg.cc/VN1d2vRb/SCR-20240912-sdko.png

    • เผื่อใครสนใจ มี Chrome extension ชื่อ Save ChatGPT as PDF [1]
      ใน ChatGPT for Business อาจไม่ใช้เพราะนโยบายบริษัทอาจห้าม export แต่สำหรับใช้ส่วนตัวถือว่าสะดวกมาก
      https://chromewebstore.google.com/detail/save-chatgpt-as-pdf...
    • น่าประทับใจ อยากรู้ว่าใช้ o1-preview ยังไง ฉันเป็นผู้ใช้ ChatGPT แบบเสียเงิน แต่ในตัวเลือกโมเดลบน chatgpt.com เห็นแค่ 4o, 4o-mini และ 4 เลยสงสัยว่า o1 อยู่ในลิสต์นั้นหรืออยู่ที่อื่น
    • ในอินเทอร์เฟซ ChatGPT มันไม่มีปุ่ม “Share” ใหญ่ ๆ อยู่มุมขวาบนเหรอ หรือว่าใช้ frontend อื่น
    • น่าประทับใจ ฉันลองกับปริศนาตรรกะแบบดัดแปลงสองข้อที่ ChatGPT-4 ทำไม่ผ่านแต่ o1 ทำได้
      เพราะในข้อมูลฝึกมีตัวอย่างปริศนาต้นฉบับมากเกินไป 4 เลยตอบไม่ถูกต้องนัก แต่ o1 ไม่พลาดเพราะเรื่องนั้น
      https://chatgpt.com/share/66e35c37-60c4-8009-8cf9-8fe61f57d3...
      https://chatgpt.com/share/66e35f0e-6c98-8009-a128-e9ac677480...
    • ฉันให้ GPT-4o กับ o1-preview เขียนสคริปต์ Python สำหรับหาเงิน $100 อย่างรวดเร็ว แล้ว o1 ก็ให้ผลลัพธ์ที่ค่อนข้างน่าสนใจ
      https://x.com/soheil/status/1834320893331587353
  • ฉันลองทดสอบสั้น ๆ กับการถอด ROT ciphertext ที่คนสามารถแก้บนกระดาษได้ และผลลัพธ์ค่อนข้างน่าผิดหวัง
    มันมีหลายขั้นตอนที่ดูเหมือน “กำลังทำงาน” เช่นการคำนวณความถี่ตัวอักษร การระบุคำที่พบบ่อย แต่หลายขั้นตอนผิดหรือไม่มีการตรวจยืนยันต่อ สุดท้ายมันให้คำตอบผิดที่ไม่สอดคล้องแม้แต่กับเงื่อนไขจากขั้นตอนก่อนหน้า ทั้งที่อ้างว่าตรวจคำตอบของตัวเองแล้ว
    ไม่ได้จะตัดสิน AI จากความผิดพลาดไม่กี่ครั้ง และงานด้านรหัสก็เป็นงานที่ค่อนข้างเป็นปฏิปักษ์อยู่แล้ว แต่ไม่มีส่วนไหนของการให้เหตุผลที่ดูซับซ้อนหรือสอดคล้องมากกว่าเดโม chain of thought ที่เคยเห็นก่อนหน้านี้เลย สุดท้ายหลักฐานสำคัญก็คือ paper แต่ก็ยังไม่แน่ใจว่าจะก้าวจากตรงนั้นไปสู่การตัดสินได้อย่างไรว่าโมเดลนี้เชื่อถือได้สำหรับงานประเภทที่ตั้งใจไว้
    แยกอีกประเด็นหนึ่งคือผลลัพธ์ chain of thought แบบนี้ทำให้อยากได้การใช้เครื่องมือมาก เพราะ LLM มักต้องเลียนแบบผลลัพธ์ของอัลกอริทึมเอง ถ้าเป็นโซลูชัน chain of thought เชิงพาณิชย์แบบนี้ ก็น่าจะใช้ standard function library ที่เชื่อถือได้ 100% กับเรื่องอย่างการนับจำนวนตัวอักษรได้

    • สงสัยว่าคุณใช้โมเดล o1 จริง ๆ ไม่ใช่ gpt4o ใช่ไหม ฉันใช้ o1 อยู่และมันแก้ rotation cipher ได้ดีสม่ำเสมอ
    • เพราะมันเป็น reinforcement learning เลยเก่งมากกับงานที่สร้างขึ้นมาเพื่อฝึก แต่จะเก่งน้อยกว่าสำหรับงานอื่น
      มันน่าประทับใจอยู่ แต่ปัญหาของ reinforcement learning คือมันต้องการ ความรู้เกี่ยวกับอนาคต
    • อยากรู้ว่าพอจะลองทดสอบแบบเดียวกันกับ Claude ได้ไหม Claude ทำได้ดีมากกับ ROT ทุกประเภทเมื่อเทียบกับ GPT
  • นี่เป็นความสำเร็จทางเทคนิคที่ค่อนข้างใหญ่ และก็น่าตื่นเต้นที่จะได้เห็นความก้าวหน้าแบบนี้ในสาขานี้
    แต่ก็ยังกังวลมากเรื่องความมีประโยชน์ เพราะเครื่องมือนี้ก็ยังเปราะบางต่อ ภาพหลอน เหมือน LLM ทุกตัวอยู่ดี สรุปแล้วมันเป็นเครื่องมือสำหรับใครกันแน่
    ถ้าเป็นผู้เชี่ยวชาญมากพอจะตัดสินผลลัพธ์อย่างมีวิจารณญาณได้ ก็น่าจะอนุมานเองได้ไม่ต่างกันมากนัก
    ถ้าไม่มีความสามารถพอจะประเมินผลลัพธ์ ก็มีความเสี่ยงที่จะพึ่งพาคำตอบที่ผิดหมดจด
    ตัวอย่างเช่น ผมเคยขอให้มันประเมินอัลกอริทึมการปรับลำดับการ join ของฐานข้อมูลให้เหมาะที่สุด แล้วมันก็พูดอย่างมั่นใจตั้งแต่ต้นของกระบวนการอนุมานว่า “ต้นทุนของการ join มักเป็นแบบสมมาตร” ซึ่งผิด และในขั้นต่อ ๆ มาก็ใช้สมมติฐานนั้นเพื่อเสนอให้ “ลดรูป” โครงสร้างข้อมูลภายในจาก directed graph ให้เป็น undirected graph
    ถ้าคุณคุ้นเคยกับการ optimize ฐานข้อมูล ก็จะรู้ว่านี่ผิดมาก แต่กระแสการอนุมานที่เหลือกลับสอดคล้องกันและฟังดูน่าเชื่อถือ
    ผมกังวลว่าถ้าโมเดลพึ่งพาข้อเท็จจริงที่ผมไม่อาจรู้ได้ทันทีว่าผิด พร้อมแสดงความมั่นใจ มันอาจพาผมไปผิดทาง

    • สำหรับตอนนี้ ประโยชน์ที่ได้จากเครื่องมือแบบนี้ใกล้เคียงกับการเป็น แหล่งอ้างอิงหรือผู้ช่วยที่ดีมาก สำหรับสิ่งที่ถ้ามีเวลาพอ ผมก็น่าจะหาคำตอบเองได้อยู่แล้ว
      เช่น หาวิธีที่ดีที่สุดในการจัดการ syntax error บางอย่าง, ตั้งค่า class และฟังก์ชันพื้นฐานที่จำเป็นอย่างชัดเจน, หรือหาว่าตอนแก้โจทย์คณิตศาสตร์ตัวเองเริ่มหลงทางตรงไหน
      เครื่องมือพวกนี้ยังไม่ถึงระดับ “ตอนนี้ไม่ต้องมีการทดสอบและรีวิวโค้ดแล้ว, สังคมไม่ต้องมีนักคณิตศาสตร์แล้ว, และไม่ต้องมีแหล่งข้อมูลสำหรับ fact-check แล้ว” แม้นั่นอาจเป็นเป้าหมายของ AGI แต่ผมไม่ได้ใช้สิ่งนั้นเป็นเกณฑ์วัดประโยชน์ของเครื่องมือ
      คุณค่าของเครื่องมือไม่ได้อยู่ที่มันสมบูรณ์แบบหรือไม่ แต่อยู่ที่คุณทำอะไรได้ด้วยมัน ต่อให้พจนานุกรมมีคำพิมพ์ผิดอยู่ประปราย มันก็ยังมีประโยชน์เป็นแหล่งอ้างอิงการสะกดคำได้ และต่อให้เพื่อนร่วมงานจะไม่ได้เข้าใจ C++ ทั้งหมดอย่างถูกต้องและเขียนโค้ดพลาดบ่อย ก็ยังให้ insight ที่มีประโยชน์กับโค้ดได้ สิ่งสำคัญคือมันช่วยให้ไปถึงระดับความแม่นยำที่ต้องการได้มากแค่ไหน และผมใช้งานมันอย่างไร ไม่ใช่ตัดสินจากความแม่นยำอย่างเดียว
    • การคิดใช้พลังงาน และใช้ค่อนข้างมาก
      มนุษย์มีประสิทธิภาพกว่า LLM มากในแง่นี้ แต่จักรยานก็มีประสิทธิภาพกว่ารถแข่งมากเช่นกัน แม้ในเวลาที่โมเดลผิดแบบน่าขัน แค่ ทิศทาง ของการอนุมานก็บางครั้งช่วยเร่งความคิดของผมได้อย่างมีประโยชน์
  • ถ้าใครอยากลองใช้กับงานเขียนโค้ด ผมเพิ่งเพิ่ม o1 เข้าไปใน https://double.bot
    ประสิทธิภาพดีมากจริง ๆ ผมมีชุดปัญหาส่วนตัวที่คอยจดไว้ทุกครั้งที่ gpt-4o หรือ Sonnet ทำไม่สำเร็จ และจนถึงตอนนี้ o1 แก้ได้หมดทุกข้อ
    แต่ก็ช้าพอสมควรจริง ๆ
    อีกเรื่องที่น่าสนใจคือ chain of thought ถูกซ่อนไว้ ดูเหมือนจะเป็นกรณีแรกที่ต่อให้ OpenAI ปรับปรุงโมเดล โมเดลสาธารณะก็ยังไม่สามารถกลั่นเอาไปได้ทันที เพราะช่วงนี้ก็มีงานวิจัยเกี่ยวกับการคำนวณตอน inference ออกมาเยอะแล้ว จึงน่าสนใจว่าโอเพนซอร์สจะไล่ตามในแง่เทคนิคได้เร็วแค่ไหน [1,2]
    ตอนนี้ยังไม่ชัดว่า o1-preview ที่ให้ใช้อยู่ทำ tree search หรือทำงานเพียงด้วยการสร้าง chain of thought แบบยิงครั้งเดียวที่ถูกกลั่นมาจาก trajectory ที่ดีกว่าและละเอียดกว่าของ distribution ตอนฝึก
    1
    2

    • ตอนนี้กำลังลองใช้ Double อยู่
      o1 ทำงานแปลงไฟล์ JavaScript เป็น TypeScript ได้ดีกว่า Llama 3.1 405B, GitHub Copilot และ Claude 3.5 มาก แถมยังคงฟังก์ชันเดิมไว้พร้อมทำให้โค้ดง่ายขึ้นเล็กน้อยด้วย น่าประทับใจมาก
      มันรีแฟกเตอร์ไฟล์ประมาณ 160 บรรทัดได้ แต่พอเป็นไฟล์ประมาณ 420 บรรทัด กล่องคำพูด “กำลังคิด” ก็ขึ้นไม่สิ้นสุด ไม่แน่ใจว่าเป็นเพราะเวลาในการตอบของ o1 ยาวเกินไปจนมีบางอย่าง timeout หรือเปล่า