ข้อมูลเบื้องต้นเกี่ยวกับการปรับแต่งโมเดล

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

หน้านี้มีคำแนะนำเกี่ยวกับการปรับแต่งโมเดลข้อความที่อยู่เบื้องหลังบริการข้อความ Gemini API

วิธีการทำงานของการปรับแต่งโมเดล

เป้าหมายของการปรับแต่งโมเดลคือปรับปรุงประสิทธิภาพของโมเดลสำหรับงานที่เฉพาะเจาะจงของคุณ การปรับแต่งโมเดลทำงานโดยมอบชุดข้อมูลการฝึกที่มีตัวอย่างมากมายของงานให้โมเดล สำหรับงานเฉพาะกลุ่ม คุณสามารถปรับปรุงประสิทธิภาพของโมเดลได้อย่างมากโดยการปรับแต่งโมเดลจากตัวอย่างจำนวนหนึ่ง

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

เมื่อคุณเรียกใช้งานการปรับแต่ง โมเดลจะเรียนรู้พารามิเตอร์เพิ่มเติมที่จะช่วยเข้ารหัสข้อมูลที่จำเป็นเพื่อทำงานที่ต้องการหรือเรียนรู้พฤติกรรมที่ต้องการ แล้วระบบจะใช้พารามิเตอร์เหล่านี้ในเวลาที่อนุมานได้ เอาต์พุตของงานการปรับแต่งคือโมเดลใหม่ ซึ่งเป็นการรวมพารามิเตอร์ที่เรียนรู้ใหม่และโมเดลเดิมเข้าด้วยกันอย่างมีประสิทธิภาพ

รุ่นที่รองรับ

โมเดลพื้นฐานต่อไปนี้รองรับการปรับแต่งโมเดล รองรับเฉพาะการเติมข้อความแบบเลี้ยวเดียวเท่านั้น

  • Gemini 1.0 Pro
  • text-bison-001

เวิร์กโฟลว์สำหรับการปรับแต่งโมเดล

เวิร์กโฟลว์การปรับแต่งโมเดลมีดังนี้

  1. เตรียมชุดข้อมูล
  2. นําเข้าชุดข้อมูลหากใช้ Google AI Studio
  3. เริ่มงานการปรับแต่ง

หลังจากปรับแต่งโมเดลเสร็จแล้ว ชื่อของโมเดลที่ปรับแต่งจะปรากฏขึ้น และคุณยังเลือกใน Google AI Studio เป็นโมเดลที่จะใช้เมื่อสร้างข้อความแจ้งใหม่ได้ด้วย

เตรียมชุดข้อมูล

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

รูปแบบ

ตัวอย่างที่รวมอยู่ในชุดข้อมูลควรตรงกับการเข้าชมเวอร์ชันที่ใช้งานจริงที่คาดไว้ หากชุดข้อมูลมีการจัดรูปแบบ คีย์เวิร์ด คำสั่ง หรือข้อมูลเฉพาะ ข้อมูลที่ใช้งานจริงควรจัดรูปแบบในลักษณะเดียวกันและยังมีวิธีการเดียวกันอยู่

เช่น หากตัวอย่างในชุดข้อมูลประกอบด้วย "question:" และ "context:" การเข้าชมเวอร์ชันที่ใช้งานจริงก็ควรจัดรูปแบบให้รวม "question:" และ "context:" ในลำดับเดียวกับที่ปรากฏในตัวอย่างชุดข้อมูลด้วย หากคุณยกเว้นบริบท โมเดลจะไม่รู้จักรูปแบบนี้ แม้ว่าคำถามจริงจะอยู่ในตัวอย่างในชุดข้อมูลก็ตาม

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

ขนาดข้อมูลการฝึก

คุณปรับแต่งโมเดลได้ด้วยตัวอย่างเพียง 20 รายการ และข้อมูลเพิ่มเติมจะช่วยปรับปรุงคุณภาพของคำตอบได้ คุณควรกำหนดเป้าหมายระหว่าง 100 ถึง 500 ตัวอย่าง ทั้งนี้ขึ้นอยู่กับแอปพลิเคชันของคุณ ตารางต่อไปนี้แสดงขนาดชุดข้อมูลที่แนะนำสำหรับการปรับแต่งโมเดลข้อความสำหรับงานทั่วไปต่างๆ

งาน จำนวนตัวอย่างในชุดข้อมูล
การจำแนกประเภท 100+
การสรุป 100-500+
ค้นหาเอกสาร 100+

อัปโหลดชุดข้อมูลการปรับแต่ง

ระบบจะส่งข้อมูลในบรรทัดโดยใช้ API หรือผ่านไฟล์ที่อัปโหลดใน Google AI Studio

ใช้ปุ่มนำเข้าเพื่อนำเข้าข้อมูลจากไฟล์ หรือเลือกข้อความแจ้งแบบมีโครงสร้างที่มีตัวอย่างเพื่อนำเข้าเป็นชุดข้อมูลการปรับแต่ง

ไลบรารีของไคลเอ็นต์

หากต้องการใช้ไลบรารีของไคลเอ็นต์ ให้ระบุไฟล์ข้อมูลในการเรียก createTunedModel ไฟล์ต้องมีขนาดไม่เกิน 4 MB ดูการเริ่มต้นใช้งาน Python อย่างรวดเร็วเพื่อเริ่มต้นใช้งาน

ม้วนกระดาษ

หากต้องการเรียกใช้ REST API โดยใช้ Curl ให้ระบุตัวอย่างการฝึกในรูปแบบ JSON ไปยังอาร์กิวเมนต์ training_data ดูการเริ่มต้นใช้งานอย่างรวดเร็วด้วย Curl เพื่อเริ่มต้นใช้งาน

การตั้งค่าการปรับแต่งขั้นสูง

เมื่อสร้างงานการปรับแต่ง คุณสามารถระบุการตั้งค่าขั้นสูงต่อไปนี้ได้

  • Epoch - การผ่านการฝึกอบรมเต็มรูปแบบสำหรับชุดการฝึกทั้งหมด โดยได้รับการประมวลผลตัวอย่างแต่ละรายการเพียงครั้งเดียว
  • ขนาดกลุ่ม - ชุดตัวอย่างที่ใช้ในการฝึก 1 รายการ ขนาดกลุ่มจะกำหนดจำนวนตัวอย่างในกลุ่ม
  • อัตราการเรียนรู้ - จำนวนจุดลอยตัวที่บอกอัลกอริทึมว่าจะปรับพารามิเตอร์โมเดลในการทำซ้ำแต่ละครั้งให้มีประสิทธิภาพเพียงใด เช่น อัตราการเรียนรู้ 0.3 จะปรับน้ำหนักและความอคติที่มีประสิทธิภาพมากกว่าอัตราการเรียนรู้ที่ 0.1 ถึง 3 เท่า อัตราการเรียนรู้สูงและต่ำมีข้อดีข้อเสียเฉพาะและควรปรับเปลี่ยนตามกรณีการใช้งาน
  • ตัวคูณอัตราการเรียนรู้ - ตัวคูณอัตราจะแก้ไขอัตราการเรียนรู้เดิมของโมเดล ค่า 1 จะใช้อัตราการเรียนรู้เดิมของโมเดล ค่าที่มากกว่า 1 จะเพิ่มอัตราการเรียนรู้และค่าระหว่าง 1 ถึง 0 จะทำให้อัตราการเรียนรู้ลดลง

ตารางต่อไปนี้แสดงการกำหนดค่าที่แนะนำสำหรับการปรับแต่งโมเดลพื้นฐาน

ไฮเปอร์พารามิเตอร์ ค่าเริ่มต้น การปรับที่แนะนำ
ช่วงเวลาสำคัญในอดีต 5 หากการสูญเสียเริ่มเป็น Plateau ก่อน 5 Epoch ให้ใช้ค่าที่น้อยกว่านี้
หากการสูญเสียมาบรรจบกันและดูเหมือนจะไม่หยุดนิ่ง ให้ใช้มูลค่าที่สูงขึ้น
ขนาดกลุ่ม 4
อัตราการเรียนรู้ 0.001 ใช้ค่าที่น้อยกว่าสําหรับชุดข้อมูลที่เล็กลง

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

เส้นโค้งการสูญเสีย

ตรวจสอบสถานะงานการปรับแต่ง

คุณตรวจสอบสถานะของงานการปรับแต่งได้ใน UI ของ Google AI Studio ในแท็บ คลังของฉัน หรือใช้พร็อพเพอร์ตี้ metadata ของโมเดลที่มีการปรับแต่งใน Gemini API

แก้ไขข้อผิดพลาด

ส่วนนี้ประกอบด้วยเคล็ดลับเกี่ยวกับวิธีแก้ไขข้อผิดพลาดที่อาจพบขณะสร้างโมเดลที่ปรับแต่ง

การตรวจสอบสิทธิ์

การปรับแต่งโดยใช้ API และไลบรารีของไคลเอ็นต์ต้องมีการตรวจสอบสิทธิ์ผู้ใช้ การใช้คีย์ API เพียงอย่างเดียวนั้นไม่เพียงพอ หากพบข้อผิดพลาด 'PermissionDenied: 403 Request had insufficient authentication scopes' คุณต้องตั้งค่าการตรวจสอบสิทธิ์ผู้ใช้

หากต้องการกำหนดค่าข้อมูลเข้าสู่ระบบ OAuth สำหรับ Python โปรดดูบทแนะนำการตั้งค่า OAuth

โมเดลที่ยกเลิก

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

ขั้นตอนถัดไป