กลยุทธ์การออกแบบพรอมต์ เช่น พรอมต์ แบบน้อยๆ อาจไม่สร้าง ผลลัพธ์ที่คุณต้องการ การปรับแต่งแบบละเอียดเป็นกระบวนการที่ปรับปรุงประสิทธิภาพของโมเดลในงานที่เฉพาะเจาะจง หรือช่วยให้โมเดลเป็นไปตามข้อกำหนดเอาต์พุตที่เฉพาะเจาะจงได้ เมื่อวิธีการไม่เพียงพอและคุณมีชุดตัวอย่างที่แสดงถึงเอาต์พุตที่ต้องการ
หน้านี้จะแสดงภาพรวมเชิงแนวคิดของการปรับแต่งรูปแบบข้อความเบื้องหลัง บริการข้อความของ Gemini API เมื่อพร้อมที่จะเริ่มปรับแต่ง ให้ลอง บทแนะนำการปรับแต่ง หากต้องการดูข้อมูลเบื้องต้นทั่วไปเกี่ยวกับการปรับแต่ง LLM สําหรับ Use Case ที่เฉพาะเจาะจง โปรดดูหัวข้อ LLM: การปรับแต่ง การปรับแต่ง และการสร้างพรอมต์ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง
วิธีการทำงานของการปรับแต่ง
เป้าหมายของการปรับแต่งแบบละเอียดคือเพื่อปรับปรุงประสิทธิภาพของโมเดลสำหรับงานเฉพาะของคุณให้ดียิ่งขึ้น การปรับแต่งจะทํางานโดยการให้ชุดข้อมูลการฝึกที่มีตัวอย่างงานจำนวนมากแก่โมเดล สำหรับงานเฉพาะกลุ่ม คุณจะได้รับ ปรับปรุงประสิทธิภาพของโมเดลได้อย่างมากด้วยการปรับแต่งโมเดลจาก จำนวนตัวอย่าง การปรับแต่งโมเดลประเภทนี้บางครั้งเรียกว่า การปรับแต่งภายใต้การควบคุมดูแล เพื่อให้แตกต่างจากการปรับแต่งประเภทอื่นๆ
ข้อมูลการฝึกควรมีโครงสร้างเป็นตัวอย่างที่มีอินพุตและพรอมต์ เอาต์พุตคำตอบที่คาดหวัง นอกจากนี้ คุณยังปรับแต่งโมเดลโดยใช้ข้อมูลตัวอย่างใน Google AI Studio โดยตรงได้ด้วย เป้าหมายคือสอนให้โมเดลเลียนแบบลักษณะการทำงานหรืองานที่ต้องการให้ทำ โดยการให้ตัวอย่างจำนวนมากที่แสดงลักษณะการทำงานหรืองานนั้น
เมื่อคุณเรียกใช้งานการปรับแต่ง โมเดลจะเรียนรู้พารามิเตอร์เพิ่มเติมที่ช่วยได้ เข้ารหัสข้อมูลที่จำเป็นเพื่อทำงานที่ต้องการ หรือเรียนรู้ พฤติกรรมของคุณ จากนั้นจึงใช้พารามิเตอร์เหล่านี้ได้เมื่อถึงเวลาอนุมาน เอาต์พุตของ งานการปรับแต่งเป็นโมเดลใหม่ ซึ่งเป็นการผสมผสานระหว่าง พารามิเตอร์ที่เรียนรู้ และรูปแบบดั้งเดิม
เตรียมชุดข้อมูล
ก่อนเริ่มการปรับแต่ง คุณต้องมีชุดข้อมูลสำหรับปรับแต่งโมเดล สำหรับ ประสิทธิภาพดีที่สุด ตัวอย่างในชุดข้อมูลควรมีคุณภาพสูง มีความหลากหลาย และแสดงถึงอินพุตและเอาต์พุตจริง
รูปแบบ
ตัวอย่างที่รวมอยู่ในชุดข้อมูลควรตรงกับเวอร์ชันที่ใช้งานจริงที่คาดไว้ การเข้าชม หากชุดข้อมูลมีการจัดรูปแบบ คีย์เวิร์ด วิธีการ หรือข้อมูลเฉพาะเจาะจง ข้อมูลเวอร์ชันที่ใช้งานจริงควรมีการจัดรูปแบบในลักษณะเดียวกันและมีวิธีการเดียวกัน
เช่น หากตัวอย่างในชุดข้อมูลมี "question:"
และ
"context:"
การรับส่งข้อมูลที่ใช้งานจริงควรจัดรูปแบบให้รวม
"question:"
และ "context:"
ในลำดับเดียวกันกับที่ปรากฏในชุดข้อมูล
ตัวอย่าง ถ้าคุณยกเว้นบริบท โมเดลจะไม่สามารถจดจำรูปแบบ
แม้ว่าคำถามนั้นจะอยู่ในตัวอย่างในชุดข้อมูลก็ตาม
อีกตัวอย่างหนึ่งคือข้อมูลการฝึก Python สําหรับแอปพลิเคชันที่สร้างขึ้นเพื่อแสดงตัวเลขถัดไปตามลําดับ
training_data = [
{"text_input": "1", "output": "2"},
{"text_input": "3", "output": "4"},
{"text_input": "-3", "output": "-2"},
{"text_input": "twenty two", "output": "twenty three"},
{"text_input": "two hundred", "output": "two hundred one"},
{"text_input": "ninety nine", "output": "one hundred"},
{"text_input": "8", "output": "9"},
{"text_input": "-98", "output": "-97"},
{"text_input": "1,000", "output": "1,001"},
{"text_input": "10,100,000", "output": "10,100,001"},
{"text_input": "thirteen", "output": "fourteen"},
{"text_input": "eighty", "output": "eighty one"},
{"text_input": "one", "output": "two"},
{"text_input": "three", "output": "four"},
{"text_input": "seven", "output": "eight"},
]
การเพิ่มพรอมต์หรือคำนำหน้าในแต่ละตัวอย่างในชุดข้อมูลยังช่วยปรับปรุงประสิทธิภาพของโมเดลที่ปรับแต่งได้อีกด้วย โปรดทราบว่าหากข้อความแจ้งหรือคำนำคือ ในชุดข้อมูลของคุณ นอกจากนี้ยังควรรวมอยู่ในพรอมต์เพื่อปรับแต่ง โมเดลในเวลาที่อนุมาน
ข้อจำกัด
หมายเหตุ: ชุดข้อมูลที่ปรับแต่งสำหรับ Gemini 1.5 Flash จะมีสิ่งต่อไปนี้ ข้อจำกัด:
- ขนาดอินพุตสูงสุดต่อตัวอย่างคือ 40,000 อักขระ
- ขนาดสูงสุดของเอาต์พุตต่อตัวอย่างคือ 5,000 อักขระ
ขนาดข้อมูลการฝึก
คุณปรับแต่งโมเดลได้โดยใช้ตัวอย่างเพียง 20 รายการ ข้อมูลเพิ่มเติม โดยทั่วไปจะช่วยปรับปรุงคุณภาพของคำตอบ คุณควรกำหนดเป้าหมายระหว่าง 100 และตัวอย่าง 500 รายการ ขึ้นอยู่กับแอปพลิเคชันของคุณ ตารางต่อไปนี้แสดงขนาดชุดข้อมูลที่แนะนําสำหรับการปรับแต่งโมเดลข้อความแบบละเอียดสําหรับงานทั่วไปต่างๆ
งาน | จํานวนตัวอย่างในชุดข้อมูล |
---|---|
การจัดประเภท | 100+ |
การสรุป | 100-500+ |
ค้นหาเอกสาร | 100+ |
อัปโหลดชุดข้อมูลการปรับ
ระบบจะส่งข้อมูลในบรรทัดโดยใช้ API หรือผ่านไฟล์ที่อัปโหลดใน Google AI Studio
หากต้องการใช้ไลบรารีไคลเอ็นต์ ให้ระบุไฟล์ข้อมูลในการเรียกใช้ createTunedModel
ไฟล์ต้องมีขนาดไม่เกิน 4 MB ดูการเริ่มต้นใช้งานแบบละเอียดด้วย Python เพื่อเริ่มต้นใช้งาน
หากต้องการเรียก REST API โดยใช้ cURL ให้ระบุตัวอย่างการฝึกในรูปแบบ JSON ให้กับอาร์กิวเมนต์ training_data
ดูการเริ่มต้นใช้งานการปรับแต่งด้วย cURL เพื่อเริ่มต้นใช้งาน
การตั้งค่าการปรับแต่งขั้นสูง
เมื่อสร้างงานการปรับ คุณระบุการตั้งค่าขั้นสูงต่อไปนี้ได้
- Epoch: การฝึกอบรมเต็มรูปแบบจะผ่านชุดการฝึกทั้งหมด ซึ่งแต่ละชุด ได้รับการประมวลผลแล้ว 1 ครั้ง
- ขนาดกลุ่ม: ชุดตัวอย่างที่ใช้ในการปรับปรุงการฝึก 1 รายการ ขนาดกลุ่มจะกำหนดจำนวนตัวอย่างในกลุ่ม
- อัตราการเรียนรู้: จํานวนทศนิยมที่บอกอัลกอริทึมว่าจะปรับพารามิเตอร์ของโมเดลในการวนซ้ำแต่ละครั้งมากน้อยเพียงใด เช่น อัตราการเรียนรู้ 0.3 จะปรับน้ำหนักและค่ากําหนดให้มีประสิทธิภาพมากกว่าอัตราการเรียนรู้ 0.1 ถึง 3 เท่า อัตราการเรียนรู้สูงและต่ำมีข้อดีข้อเสียที่แตกต่างกันไป และควรปรับตาม Use Case ของคุณ
- ตัวคูณอัตราการเรียนรู้: ตัวคูณอัตราจะแก้ไขรูปแบบของโมเดล อัตราการเรียนรู้เดิม ค่า 1 ใช้อัตราการเรียนรู้เดิมของ โมเดล ค่าที่มากกว่า 1 จะเพิ่มอัตราการเรียนรู้และค่าระหว่าง 1 และลดอัตราการเรียนรู้เป็น 0
การกำหนดค่าที่แนะนำ
ตารางต่อไปนี้แสดงการกําหนดค่าที่แนะนําสําหรับการปรับแต่งรูปแบบพื้นฐาน
ไฮเปอร์พารามิเตอร์ | ค่าเริ่มต้น | การปรับที่แนะนำ |
---|---|---|
Epoch | 5 |
หากการสูญเสียเริ่มต้นเป็นที่ราบสูงก่อน 5 Epoch ให้ใช้ค่าที่น้อยกว่า หากความสูญเสียกำลังบรรจบกันและดูเหมือนว่าจะไม่เป็นที่ราบสูง ให้ใช้ค่าที่สูงขึ้น |
ขนาดกลุ่ม | 4 | |
อัตราการเรียนรู้ | 0.001 | ใช้ค่าที่น้อยลงสำหรับชุดข้อมูลขนาดเล็ก |
เส้นโค้งการสูญเสียแสดงให้เห็นว่าการคาดการณ์ของโมเดลเบี่ยงเบนไปจากอุดมคติมากน้อยเพียงใด
การคาดการณ์ในตัวอย่างการฝึกหลังจากแต่ละ Epoch คุณควรหยุดการฝึกอบรมเมื่อถึงจุดต่ำสุดของเส้นโค้งก่อนที่เส้นโค้งจะคงที่ ตัวอย่างเช่น
กราฟด้านล่างแสดงกราฟ Loss Curve ที่ราบสูงที่ประมาณ 4-6 ซึ่งหมายความว่า
คุณสามารถตั้งค่าพารามิเตอร์ Epoch
เป็น 4 โดยยังคงได้รับประสิทธิภาพเท่าเดิม
ตรวจสอบสถานะงานการปรับแต่ง
คุณสามารถตรวจสอบสถานะงานปรับแต่งได้ใน Google AI Studio ในส่วน
แท็บคลังของฉัน หรือใช้พร็อพเพอร์ตี้ metadata
ของโมเดลที่ปรับแต่งใน
Gemini API
แก้ไขข้อผิดพลาด
ส่วนนี้มีเคล็ดลับเกี่ยวกับวิธีแก้ไขข้อผิดพลาดที่อาจพบขณะสร้างรูปแบบที่ปรับแต่ง
การตรวจสอบสิทธิ์
การปรับแต่งโดยใช้ API และไลบรารีของไคลเอ็นต์ต้องมีการตรวจสอบสิทธิ์ คุณสามารถตั้งค่าการตรวจสอบสิทธิ์โดยใช้คีย์ API (แนะนำ) หรือใช้ข้อมูลเข้าสู่ระบบ OAuth ดูเอกสารประกอบเกี่ยวกับการตั้งค่าคีย์ API ได้ที่ ตั้งค่าคีย์ API
หากคุณเห็นข้อผิดพลาด 'PermissionDenied: 403 Request had insufficient authentication
scopes'
คุณอาจต้องตั้งค่าการตรวจสอบสิทธิ์ผู้ใช้โดยใช้ OAuth
ข้อมูลเข้าสู่ระบบ หากต้องการกำหนดค่าข้อมูลเข้าสู่ระบบ OAuth สำหรับ Python โปรดไปที่
บทแนะนำการตั้งค่า OAuth
โมเดลที่ยกเลิก
คุณยกเลิกงานปรับแต่งได้ทุกเมื่อก่อนที่งานจะเสร็จสิ้น อย่างไรก็ตาม ประสิทธิภาพการอนุมานของโมเดลที่ยกเลิกนั้นคาดการณ์ไม่ได้ โดยเฉพาะอย่างยิ่งหาก ระบบจะยกเลิกการปรับแต่งงานในช่วงต้นของการฝึก หากคุณยกเลิกเนื่องจากต้องการหยุดการฝึกอบรมในยุคก่อนหน้า คุณควรสร้างงานการปรับแต่งใหม่และตั้งค่ายุคเป็นค่าที่ต่ำลง
ข้อจำกัดของโมเดลที่ปรับแต่ง
หมายเหตุ: โมเดลที่ปรับแต่งมีข้อจำกัดต่อไปนี้
- ขีดจำกัดอินพุตของโมเดล Flash ของ Gemini 1.5 ที่ปรับแต่งคืออักขระ 40,000 ตัว
- โมเดลที่ปรับแต่งแล้วไม่รองรับโหมด JSON
- รองรับเฉพาะการป้อนข้อความเท่านั้น
ขั้นตอนถัดไป
เริ่มต้นใช้งานบทแนะนำการปรับแต่ง