การปรับแต่งด้วย Gemini API

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

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

วิธีการทำงานของการปรับแต่ง

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

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

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

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

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

รูปแบบ

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

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

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

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

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

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

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

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

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

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

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

cURL

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

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

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

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

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

ไฮเปอร์พารามิเตอร์ ค่าเริ่มต้น การปรับที่แนะนำ
ช่วงเวลาสำคัญในอดีต 5

หากการสูญเสียเริ่มต้นเป็นที่ราบสูงก่อน 5 Epoch ให้ใช้ค่าที่น้อยกว่า

หากความสูญเสียกำลังบรรจบกันและดูเหมือนว่าจะไม่เป็นที่ราบสูง ให้ใช้ค่าที่สูงกว่า

ขนาดกลุ่ม 4
อัตราการเรียนรู้ 0.001 ใช้ค่าที่น้อยกว่าสำหรับชุดข้อมูลที่เล็กลง

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

แผนภูมิเส้นแสดงเส้นโค้งการสูญเสียสำหรับโมเดล เส้นกราฟเพิ่มสูงขึ้นระหว่าง Epoch แรกกับ Epoch ที่ 2 จากนั้นค่อยๆ ลดลงจนเกือบ 0 ส่วนระดับออกหลังจาก 3 Epoch

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

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

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

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

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

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

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

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

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

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