> ฉันเมื่อวานนี้: Open Source LLM จะเอาชนะ GPT-4 ในอีกไม่กี่เดือนข้างหน้าสำหรับการสร้างโค้ด ฉันตอนนี้: วันนี้จริงๆเมื่อวานนี้ Meta open source code Llama ซึ่งเป็นโมเดลพื้นฐานที่เชี่ยวชาญด้านการสร้างโค้ดนั้นให้บริการฟรีสำหรับการวิจัยและเชิงพาณิชย์มีสามเวอร์ชันพารามิเตอร์ของซีรีส์ Code Llama จำนวนพารามิเตอร์คือ 7B, 13B และ 34B และรองรับภาษาการเขียนโปรแกรมหลายภาษา รวมถึง Python, C++, Java, PHP, Type (Java), C# และ Bashเวอร์ชันของ Code Llama ที่ Meta จัดทำ ได้แก่:* Code Llama โค้ดโมเดลพื้นฐาน* Code Llama-Python ซึ่งเป็นเวอร์ชัน Python ที่ได้รับการปรับแต่งอย่างละเอียด* Code Llama-Instruct ซึ่งเป็นคำสั่งภาษาธรรมชาติเวอร์ชันที่ได้รับการปรับแต่งอย่างละเอียดในแง่ของผลกระทบ Code Llama เวอร์ชันต่างๆ มีอัตราการผ่านการสร้าง (pass@1) บนชุดข้อมูล Human และ MBPP ที่เกินกว่า GPT-3.5นอกจากนี้ pass@1 ของเวอร์ชัน 34B "Unnatural" ของ Code Llama บนชุดข้อมูล Human นั้นใกล้เคียงกับ GPT-4 (62.2% เทียบกับ 67.0%) อย่างไรก็ตาม Meta ไม่ได้เปิดตัวเวอร์ชันนี้ แต่ได้รับการปรับปรุงประสิทธิภาพที่สำคัญผ่านการฝึกอบรมด้วยข้อมูลที่เข้ารหัสคุณภาพสูงจำนวนเล็กน้อย**แหล่งที่มา:** หลังจากผ่านไปหนึ่งวัน นักวิจัยบางคนก็ท้าทาย GPT-4 พวกเขามาจาก Phind (องค์กรที่มุ่งสร้างเครื่องมือค้นหา AI สำหรับนักพัฒนา) ซึ่งเอาชนะ GPT-4** ในการประเมินโดยมนุษย์ด้วย **โค้ด Llama-34B ที่ปรับแต่งอย่างละเอียดMichael Royzen ผู้ร่วมก่อตั้ง Phind กล่าวว่า "นี่เป็นเพียงการทดลองเบื้องต้นที่มุ่งสร้าง (และเหนือกว่า) ผลลัพธ์ "Unnatural Code Llama" ใน Meta paper ในอนาคต เราจะมีผลงานผู้เชี่ยวชาญของโมเดล CodeLlama ต่างๆ ที่ฉันคิดว่าจะสามารถแข่งขันได้ในเวิร์กโฟลว์ในโลกแห่งความเป็นจริง " ทั้งสองรุ่นเป็นแบบโอเพ่นซอร์ส: นักวิจัยได้เผยแพร่โมเดลทั้งสองนี้บน Huggingface และทุกคนสามารถเข้าไปดูโมเดลเหล่านี้ได้* Phind-CodeLlama-34B-v1:* Phind-CodeLlama-34B-Python-v1:ต่อไปเรามาดูกันว่าการวิจัยนี้นำไปใช้อย่างไร## ** ปรับแต่งโค้ด Llama-34B เพื่อเอาชนะ GPT-4**มาดูผลลัพธ์กันก่อน การศึกษานี้ได้ปรับแต่ง Code Llama-34B และ Code Llama-34B-Python ด้วยชุดข้อมูลภายในของ Phind และได้รับโมเดลสองรุ่น ได้แก่ Phind-CodeLlama-34B-v1 และ Phind-CodeLlama-34B-Python-v1 ตามลำดับโมเดลที่ได้รับใหม่ทั้งสองรุ่นมีอัตราการผ่าน 67.6% และ 69.5% ตามลำดับบน Humanสำหรับการเปรียบเทียบ CodeLlama-34B pass@1 คือ 48.8%; CodeLlama-34B-Python pass@1 คือ 53.7%และ GPT-4 pass@1 บน Human อยู่ที่ 67% (ข้อมูลที่เผยแพร่โดย OpenAI ใน "รายงานทางเทคนิค GPT-4" ที่เผยแพร่ในเดือนมีนาคมปีนี้)**แหล่งที่มา:** **แหล่งที่มา:** เมื่อพูดถึงการปรับแต่งอย่างละเอียด ชุดข้อมูลถือเป็นสิ่งที่จำเป็น และการศึกษานี้ได้ทำการศึกษา Code Llama-34B และ Code Llama-34B-Python ที่ปรับแต่งอย่างละเอียดบนชุดข้อมูลที่เป็นกรรมสิทธิ์ซึ่งมีปัญหาและวิธีแก้ปัญหาการเขียนโปรแกรมคุณภาพสูงประมาณ 80,000 รายการแทนที่จะใช้ตัวอย่างการเติมโค้ดให้สมบูรณ์ ชุดข้อมูลนี้ใช้คู่คำสั่ง-คำตอบ ซึ่งแตกต่างจากโครงสร้างข้อมูลมนุษย์ จากนั้น การศึกษาได้ฝึกโมเดล Phind เป็นเวลาสองยุค โดยมีตัวอย่างทั้งหมดประมาณ 160,000 ตัวอย่าง นักวิจัยกล่าวว่าไม่ได้ใช้เทคโนโลยี LoRA ในการฝึกอบรม แต่ใช้การปรับแต่งแบบละเอียดในท้องถิ่นนอกจากนี้ การวิจัยยังนำเทคโนโลยี DeepSpeed ZeRO 3 และ Flash Attention 2 มาใช้ โดยพวกเขาใช้เวลาสามชั่วโมงกับ GPU A100-80GB จำนวน 32 ตัว เพื่อฝึกฝนโมเดลเหล่านี้ด้วยความยาวลำดับที่ 4,096 โทเค็นนอกจากนี้ การศึกษายังได้ใช้วิธีการกำจัดการปนเปื้อนของ OpenAI กับชุดข้อมูลเพื่อทำให้ผลลัพธ์ของแบบจำลองมีประสิทธิภาพมากขึ้นดังที่เราทุกคนทราบกันดีว่า แม้แต่ GPT-4 ที่ทรงพลังมากก็ยังต้องเผชิญกับภาวะที่กลืนไม่เข้าคายไม่ออกของมลภาวะของข้อมูล ในแง่คนธรรมดา โมเดลที่ได้รับการฝึกอบรมอาจได้รับการฝึกอบรมเกี่ยวกับข้อมูลการประเมินปัญหานี้ยุ่งยากมากสำหรับ LLM เช่น ในกระบวนการประเมินประสิทธิภาพของแบบจำลองเพื่อที่จะทำการประเมินที่น่าเชื่อถือทางวิทยาศาสตร์ผู้วิจัยจะต้องตรวจสอบว่าปัญหาที่ใช้ในการประเมินอยู่ในข้อมูลการฝึกของแบบจำลองหรือไม่ หากเป็นเช่นนั้น โมเดลจะสามารถจดจำคำถามเหล่านี้ได้ และเมื่อประเมินโมเดล โมเดลจะทำงานได้ดีกว่ากับคำถามเฉพาะเหล่านี้อย่างเห็นได้ชัดเหมือนคนรู้ข้อสอบก่อนสอบอยู่แล้วเพื่อที่จะแก้ไขปัญหานี้ OpenAI ได้เปิดเผยว่า GPT-4 ประเมินมลพิษของข้อมูลอย่างไรในเอกสารทางเทคนิค GPT-4 สาธารณะ "รายงานทางเทคนิค GPT-4" พวกเขาเปิดเผยต่อสาธารณะกลยุทธ์ในการหาปริมาณและประเมินมลภาวะของข้อมูลนี้โดยเฉพาะอย่างยิ่ง OpenAI ใช้การจับคู่สตริงย่อยเพื่อวัดการปนเปื้อนข้ามระหว่างชุดข้อมูลการประเมินและข้อมูลก่อนการฝึกอบรม ข้อมูลการประเมินและการฝึกอบรมได้รับการประมวลผลโดยการลบช่องว่างและสัญลักษณ์ทั้งหมดออก เหลือเพียงอักขระ (รวมถึงตัวเลข)สำหรับตัวอย่างการประเมินแต่ละรายการ OpenAI จะสุ่มเลือกสตริงย่อยความยาว 50 อักขระสามรายการ (หรือใช้ตัวอย่างทั้งหมดหากมีอักขระน้อยกว่า 50 ตัว) การจับคู่จะถูกกำหนดหากสตริงย่อยการประเมินตัวอย่างใดๆ ในสามรายการเป็นสตริงย่อยของตัวอย่างการฝึกที่ประมวลผลสิ่งนี้จะสร้างรายการตัวอย่างที่ไม่บริสุทธิ์ ซึ่ง OpenAI จะละทิ้งและรันใหม่เพื่อให้ได้คะแนนที่ไม่บริสุทธิ์ แต่วิธีการกรองนี้มีข้อจำกัดบางประการ การจับคู่สตริงย่อยอาจทำให้เกิดผลลบลวง (หากมีความแตกต่างเล็กน้อยระหว่างข้อมูลการประเมินและการฝึกอบรม) รวมถึงผลบวกลวง ดังนั้น OpenAI จึงใช้ข้อมูลเพียงบางส่วนในตัวอย่างการประเมิน โดยใช้เฉพาะคำถาม บริบท หรือข้อมูลที่เทียบเท่า แต่ไม่สนใจคำตอบ คำตอบ หรือข้อมูลที่เทียบเท่า ในบางกรณี ตัวเลือกแบบเลือกตอบก็ถูกยกเว้นเช่นกัน การยกเว้นเหล่านี้อาจทำให้เกิดผลบวกลวงเพิ่มขึ้นในส่วนนี้ ผู้อ่านที่สนใจสามารถดูข้อมูลเพิ่มเติมในบทความนี้ได้ที่อยู่กระดาษ:อย่างไรก็ตาม มีข้อโต้แย้งบางประการเกี่ยวกับคะแนนมนุษย์ที่ Phind ใช้ในการเปรียบเทียบ GPT-4 บางคนบอกว่าคะแนนทดสอบล่าสุดของ GPT-4 สูงถึง 85% แล้ว แต่ Phind ตอบว่าการวิจัยที่เกี่ยวข้องซึ่งได้คะแนนนี้ไม่ได้ดำเนินการวิจัยมลพิษ และเป็นไปไม่ได้ที่จะระบุได้ว่า GPT-4 เห็นข้อมูลการทดสอบของมนุษย์เมื่อทำการทดสอบรอบใหม่หรือไม่ เมื่อพิจารณาจากงานวิจัยล่าสุดเกี่ยวกับ "GPT-4 กลายเป็นคนโง่" การใช้ข้อมูลในรายงานทางเทคนิคต้นฉบับจะปลอดภัยกว่า อย่างไรก็ตาม เมื่อพิจารณาถึงความซับซ้อนของการประเมินแบบจำลองขนาดใหญ่ ผลการประเมินเหล่านี้สามารถสะท้อนความสามารถที่แท้จริงของแบบจำลองได้หรือไม่นั้นยังคงเป็นประเด็นที่ถกเถียงกันอยู่ คุณสามารถดาวน์โหลดแบบจำลองและสัมผัสประสบการณ์ได้ด้วยตัวเอง**ลิงค์อ้างอิง:**
หนึ่งวันหลังจากการเปิดตัว ความสามารถในการเขียนโค้ดของ Code Llama ได้รับการปรับปรุงอย่างก้าวกระโดด และ Human_ เวอร์ชันที่ได้รับการปรับแต่งก็ได้คะแนนสูงกว่า GPT-4
เมื่อวานนี้ Meta open source code Llama ซึ่งเป็นโมเดลพื้นฐานที่เชี่ยวชาญด้านการสร้างโค้ดนั้นให้บริการฟรีสำหรับการวิจัยและเชิงพาณิชย์
มีสามเวอร์ชันพารามิเตอร์ของซีรีส์ Code Llama จำนวนพารามิเตอร์คือ 7B, 13B และ 34B และรองรับภาษาการเขียนโปรแกรมหลายภาษา รวมถึง Python, C++, Java, PHP, Type (Java), C# และ Bash
เวอร์ชันของ Code Llama ที่ Meta จัดทำ ได้แก่:
ในแง่ของผลกระทบ Code Llama เวอร์ชันต่างๆ มีอัตราการผ่านการสร้าง (pass@1) บนชุดข้อมูล Human และ MBPP ที่เกินกว่า GPT-3.5
นอกจากนี้ pass@1 ของเวอร์ชัน 34B "Unnatural" ของ Code Llama บนชุดข้อมูล Human นั้นใกล้เคียงกับ GPT-4 (62.2% เทียบกับ 67.0%) อย่างไรก็ตาม Meta ไม่ได้เปิดตัวเวอร์ชันนี้ แต่ได้รับการปรับปรุงประสิทธิภาพที่สำคัญผ่านการฝึกอบรมด้วยข้อมูลที่เข้ารหัสคุณภาพสูงจำนวนเล็กน้อย
แหล่งที่มา:
Michael Royzen ผู้ร่วมก่อตั้ง Phind กล่าวว่า "นี่เป็นเพียงการทดลองเบื้องต้นที่มุ่งสร้าง (และเหนือกว่า) ผลลัพธ์ "Unnatural Code Llama" ใน Meta paper ในอนาคต เราจะมีผลงานผู้เชี่ยวชาญของโมเดล CodeLlama ต่างๆ ที่ฉันคิดว่าจะสามารถแข่งขันได้ในเวิร์กโฟลว์ในโลกแห่งความเป็นจริง "
ต่อไปเรามาดูกันว่าการวิจัยนี้นำไปใช้อย่างไร
** ปรับแต่งโค้ด Llama-34B เพื่อเอาชนะ GPT-4**
มาดูผลลัพธ์กันก่อน การศึกษานี้ได้ปรับแต่ง Code Llama-34B และ Code Llama-34B-Python ด้วยชุดข้อมูลภายในของ Phind และได้รับโมเดลสองรุ่น ได้แก่ Phind-CodeLlama-34B-v1 และ Phind-CodeLlama-34B-Python-v1 ตามลำดับ
โมเดลที่ได้รับใหม่ทั้งสองรุ่นมีอัตราการผ่าน 67.6% และ 69.5% ตามลำดับบน Human
สำหรับการเปรียบเทียบ CodeLlama-34B pass@1 คือ 48.8%; CodeLlama-34B-Python pass@1 คือ 53.7%
และ GPT-4 pass@1 บน Human อยู่ที่ 67% (ข้อมูลที่เผยแพร่โดย OpenAI ใน "รายงานทางเทคนิค GPT-4" ที่เผยแพร่ในเดือนมีนาคมปีนี้)
แหล่งที่มา:
แทนที่จะใช้ตัวอย่างการเติมโค้ดให้สมบูรณ์ ชุดข้อมูลนี้ใช้คู่คำสั่ง-คำตอบ ซึ่งแตกต่างจากโครงสร้างข้อมูลมนุษย์ จากนั้น การศึกษาได้ฝึกโมเดล Phind เป็นเวลาสองยุค โดยมีตัวอย่างทั้งหมดประมาณ 160,000 ตัวอย่าง นักวิจัยกล่าวว่าไม่ได้ใช้เทคโนโลยี LoRA ในการฝึกอบรม แต่ใช้การปรับแต่งแบบละเอียดในท้องถิ่น
นอกจากนี้ การวิจัยยังนำเทคโนโลยี DeepSpeed ZeRO 3 และ Flash Attention 2 มาใช้ โดยพวกเขาใช้เวลาสามชั่วโมงกับ GPU A100-80GB จำนวน 32 ตัว เพื่อฝึกฝนโมเดลเหล่านี้ด้วยความยาวลำดับที่ 4,096 โทเค็น
นอกจากนี้ การศึกษายังได้ใช้วิธีการกำจัดการปนเปื้อนของ OpenAI กับชุดข้อมูลเพื่อทำให้ผลลัพธ์ของแบบจำลองมีประสิทธิภาพมากขึ้น
ดังที่เราทุกคนทราบกันดีว่า แม้แต่ GPT-4 ที่ทรงพลังมากก็ยังต้องเผชิญกับภาวะที่กลืนไม่เข้าคายไม่ออกของมลภาวะของข้อมูล ในแง่คนธรรมดา โมเดลที่ได้รับการฝึกอบรมอาจได้รับการฝึกอบรมเกี่ยวกับข้อมูลการประเมิน
ปัญหานี้ยุ่งยากมากสำหรับ LLM เช่น ในกระบวนการประเมินประสิทธิภาพของแบบจำลองเพื่อที่จะทำการประเมินที่น่าเชื่อถือทางวิทยาศาสตร์ผู้วิจัยจะต้องตรวจสอบว่าปัญหาที่ใช้ในการประเมินอยู่ในข้อมูลการฝึกของแบบจำลองหรือไม่ หากเป็นเช่นนั้น โมเดลจะสามารถจดจำคำถามเหล่านี้ได้ และเมื่อประเมินโมเดล โมเดลจะทำงานได้ดีกว่ากับคำถามเฉพาะเหล่านี้อย่างเห็นได้ชัด
เหมือนคนรู้ข้อสอบก่อนสอบอยู่แล้ว
เพื่อที่จะแก้ไขปัญหานี้ OpenAI ได้เปิดเผยว่า GPT-4 ประเมินมลพิษของข้อมูลอย่างไรในเอกสารทางเทคนิค GPT-4 สาธารณะ "รายงานทางเทคนิค GPT-4" พวกเขาเปิดเผยต่อสาธารณะ
กลยุทธ์ในการหาปริมาณและประเมินมลภาวะของข้อมูลนี้
โดยเฉพาะอย่างยิ่ง OpenAI ใช้การจับคู่สตริงย่อยเพื่อวัดการปนเปื้อนข้ามระหว่างชุดข้อมูลการประเมินและข้อมูลก่อนการฝึกอบรม ข้อมูลการประเมินและการฝึกอบรมได้รับการประมวลผลโดยการลบช่องว่างและสัญลักษณ์ทั้งหมดออก เหลือเพียงอักขระ (รวมถึงตัวเลข)
สำหรับตัวอย่างการประเมินแต่ละรายการ OpenAI จะสุ่มเลือกสตริงย่อยความยาว 50 อักขระสามรายการ (หรือใช้ตัวอย่างทั้งหมดหากมีอักขระน้อยกว่า 50 ตัว) การจับคู่จะถูกกำหนดหากสตริงย่อยการประเมินตัวอย่างใดๆ ในสามรายการเป็นสตริงย่อยของตัวอย่างการฝึกที่ประมวลผล
สิ่งนี้จะสร้างรายการตัวอย่างที่ไม่บริสุทธิ์ ซึ่ง OpenAI จะละทิ้งและรันใหม่เพื่อให้ได้คะแนนที่ไม่บริสุทธิ์ แต่วิธีการกรองนี้มีข้อจำกัดบางประการ การจับคู่สตริงย่อยอาจทำให้เกิดผลลบลวง (หากมีความแตกต่างเล็กน้อยระหว่างข้อมูลการประเมินและการฝึกอบรม) รวมถึงผลบวกลวง ดังนั้น OpenAI จึงใช้ข้อมูลเพียงบางส่วนในตัวอย่างการประเมิน โดยใช้เฉพาะคำถาม บริบท หรือข้อมูลที่เทียบเท่า แต่ไม่สนใจคำตอบ คำตอบ หรือข้อมูลที่เทียบเท่า ในบางกรณี ตัวเลือกแบบเลือกตอบก็ถูกยกเว้นเช่นกัน การยกเว้นเหล่านี้อาจทำให้เกิดผลบวกลวงเพิ่มขึ้น
ในส่วนนี้ ผู้อ่านที่สนใจสามารถดูข้อมูลเพิ่มเติมในบทความนี้ได้
ที่อยู่กระดาษ:
อย่างไรก็ตาม มีข้อโต้แย้งบางประการเกี่ยวกับคะแนนมนุษย์ที่ Phind ใช้ในการเปรียบเทียบ GPT-4 บางคนบอกว่าคะแนนทดสอบล่าสุดของ GPT-4 สูงถึง 85% แล้ว แต่ Phind ตอบว่าการวิจัยที่เกี่ยวข้องซึ่งได้คะแนนนี้ไม่ได้ดำเนินการวิจัยมลพิษ และเป็นไปไม่ได้ที่จะระบุได้ว่า GPT-4 เห็นข้อมูลการทดสอบของมนุษย์เมื่อทำการทดสอบรอบใหม่หรือไม่ เมื่อพิจารณาจากงานวิจัยล่าสุดเกี่ยวกับ "GPT-4 กลายเป็นคนโง่" การใช้ข้อมูลในรายงานทางเทคนิคต้นฉบับจะปลอดภัยกว่า
ลิงค์อ้างอิง: