قد لا تؤدي استراتيجيات تصميم الطلبات، مثل الطلبات التي تتطلب عددًا قليلاً من اللقطات، إلى تحقيق النتائج التي تحتاج إليها في بعض الأحيان. التحسين الدقيق هو عملية يمكنها تحسين أداء النموذج في مهام معيّنة أو مساعدة النموذج على الالتزام بمتطلبات محددة لنتائجه عندما تكون التعليمات غير كافية ولديك مجموعة من الأمثلة التي توضّح النتائج التي تريدها.
تقدّم هذه الصفحة نظرة عامة مفاهيمية على تحسين نموذج النص الذي يستند إليه خدمة النصوص في Gemini API. عندما تكون مستعدًا لبدء عملية الضبط، جرِّب قراءة الدليل التعليمي للضبط الدقيق. إذا كنت ترغب في مقدّمة أكثر عمومية حول تخصيص النماذج اللغوية الكبيرة لحالات استخدام معيّنة خارج النماذج اللغوية الكبيرة: الضبط الدقيق والتقطير وهندسة الطلبات في دورة تدريبية مُكثَّفة عن تعلُّم الآلة.
آلية عمل الضبط الدقيق
يهدف الضبط الدقيق إلى تحسين أداء النموذج بشكلٍ أكبر لأداء مهمة معيّنة. يعمل الضبط الدقيق عن طريق تزويد النموذج بتدريب مجموعة البيانات التي تحتوي على العديد من الأمثلة الخاصة بالمهمة. بالنسبة للمهام المتخصصة، يمكنك الحصول على حدوث تحسينات ملحوظة في أداء النموذج من خلال ضبط النموذج على عدد من الأمثلة. يُشار أحيانًا إلى هذا النوع من توليف النموذج باسم الضبط الدقيق الخاضع للإشراف، لتمييزه عن الأنواع الأخرى من الضبط الدقيق.
يجب أن تكون بيانات التدريب منظَّمة على شكل أمثلة تتضمّن مدخلات طلبات ومخرجات ردود متوقّعة. يمكنك أيضًا ضبط النماذج باستخدام أمثلة على البيانات مباشرةً في Google AI Studio. والهدف من ذلك هو تعليم النموذج تقليد السلوك المطلوب أو المهمة المطلوبة، وذلك من خلال تقديم العديد من الأمثلة التي توضّح هذا السلوك أو المهمة.
عند تنفيذ مهمة توليف، يتعلم النموذج معلمات إضافية تساعده ترميز المعلومات الضرورية لأداء المهمة المطلوبة أو معرفة ما تريد السلوك. ويمكن بعد ذلك استخدام هذه المعاملات في وقت الاستنتاج. ناتج عملية الضبط الجديدة، وهو نموذج جديد، وهو مزيج فعّال من الفوائد المعاملات التي تم تعلمها والنموذج الأصلي.
إعداد مجموعة البيانات
وقبل أن تتمكن من بدء الضبط، ستحتاج إلى مجموعة بيانات لضبط النموذج بها. لتحقيق أفضل أداء، يجب أن تكون الأمثلة في مجموعة البيانات عالية الجودة ومتنوعة وممثلة للمدخلات والمخرجات الفعلية.
التنسيق
يجب أن تتطابق الأمثلة المضمنة في مجموعة البيانات الخاصة بك مع الإنتاج المتوقع حركة المرور. فإذا كانت مجموعة البيانات لديك تتضمن تنسيقًا أو كلمات رئيسية أو تعليمات يجب تنسيق بيانات الإنتاج بنفس الطريقة تحتوي على التعليمات نفسها.
على سبيل المثال، إذا كانت الأمثلة في مجموعة البيانات تتضمّن "question:"
و
"context:"
، يجب أيضًا تنسيق زيارات الإصدار العلني لتتضمّن
"question:"
و"context:"
بالترتيب نفسه الذي تظهر به في مثال
مجموعة البيانات. في حال استبعاد السياق، لن يتمكّن النموذج من التعرّف على النمط،
حتى إذا كان السؤال نفسه مضمّنًا في مثال في مجموعة البيانات.
وكمثال آخر، إليك بيانات التدريب على لغة بايثون لأحد التطبيقات التي ينشئ الرقم التالي في تسلسل:
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+ |
تحميل مجموعة بيانات التوليف
يتم تمرير البيانات مضمّنة باستخدام واجهة برمجة التطبيقات أو من خلال ملفات تم تحميلها في Google. AI Studio
لاستخدام مكتبة العميل، قدِّم ملف البيانات في طلب createTunedModel
.
الحد الأقصى لحجم الملف هو 4 ميغابايت. اطّلِع على البدء السريع في تحسين الأداء باستخدام Python لبدء استخدام هذه الميزة.
لاستدعاء واجهة برمجة تطبيقات REST باستخدام cURL، قدِّم أمثلة تدريب بتنسيق JSON إلى
الوسيطة training_data
. يمكنك الاطّلاع على
توليف ميزة "البدء السريع" باستخدام أداة cURL
لبدء استخدامها
إعدادات التوليف المتقدمة
عند إنشاء مهمة توليف، يمكنك تحديد الإعدادات المتقدمة التالية:
- العهود: هي دورة تدريبية كاملة على مجموعة التدريب بأكملها بحيث تتم معالجة كل مثال مرة واحدة.
- حجم المجموعة: مجموعة الأمثلة المستخدمة في تكرار تدريب واحد. يحدِّد حجم الحزمة عدد النماذج في الحزمة.
- معدّل التعلّم: هو رقم من نقطة عائمة يوضّح للخوارزمية مستوى بشدة لضبط معلَمات النموذج في كل تكرار. على سبيل المثال، سيؤدي معدّل التعلّم الذي يبلغ 0.3 إلى تعديل الأوزان والانحيازات بفعالية أكبر ثلاث مرات مقارنةً بمعدّل التعلّم الذي يبلغ 0.1. إنّ معدّلات التعلّم العالية والمنخفضة لها مفاضلات فريدة ويجب تعديلها استنادًا إلى حالة الاستخدام.
- مُضاعِف معدّل التعلّم: يعدِّل مُضاعِف المعدّل قيمة معدل التعلم الأصلي. عند ضبط القيمة على 1، يتم استخدام معدّل التعلّم الأصلي لل النموذج. تزيد القيم التي تزيد عن 1 من معدّل التعلّم، بينما تُقلّل القيم التي تتراوح بين 1 و0 من معدّل التعلّم.
الإعدادات المقترَحة
يعرض الجدول التالي التهيئات الموصى بها لضبط نموذج الأساس:
معلَمة فائقة | القيمة التلقائية | التعديلات المقترَحة |
---|---|---|
الفترة | 5 |
إذا بدأ مقدار الخسارة في الثبات قبل 5 دورات تدريبية، استخدِم قيمة أصغر. إذا كان الخسارة تقارب بعضها ولا يبدو أنّها تصل إلى مستوى ثابت، استخدِم قيمة أعلى. |
حجم الدفعة | 4 | |
معدّل التعلّم | 0.001 | استخدم قيمة أصغر لمجموعات البيانات الأصغر. |
ويوضح منحنى الخسارة مدى انحراف توقع النموذج عن النموذج
والتنبؤات في أمثلة التدريب بعد كل حقبة. من الناحية المثالية، تريد إيقاف
التدريب عند أدنى نقطة في المنحنى قبل الهبوط مباشرة. على سبيل المثال،
يعرض الرسم البياني أدناه منحنى الخسارة في مرحلة مستقرة تقريبًا من الدورة التدريبية 4 إلى 6، ما يعني
أنّه يمكنك ضبط المَعلمة Epoch
على 4 وسيظلّ الأداء كما هو.
التحقق من حالة مهمة التوليف
يمكنك التحقّق من حالة وظيفة الضبط في Google AI Studio ضمن
علامة التبويب مكتبتي أو استخدام السمة metadata
للنموذج الذي تم ضبطه في
Gemini API
تحديد الأخطاء وتصحيحها
يتضمّن هذا القسم نصائح حول كيفية إصلاح الأخطاء التي قد تواجهها أثناء بإنشاء نموذجك الذي تم ضبطه.
المصادقة
يتطلب الضبط باستخدام واجهة برمجة التطبيقات ومكتبة العملاء المصادقة. يمكنك إعداد المصادقة باستخدام مفتاح واجهة برمجة التطبيقات (إجراء يُنصح به) أو باستخدام بيانات اعتماد OAuth . للاطلاع على مستندات حول إعداد مفتاح واجهة برمجة التطبيقات، راجع إعداد مفتاح واجهة برمجة التطبيقات
إذا ظهر لك خطأ 'PermissionDenied: 403 Request had insufficient authentication
scopes'
، قد تحتاج إلى إعداد مصادقة المستخدم باستخدام بيانات اعتماد OAuth
. لضبط بيانات اعتماد OAuth للغة Python، يُرجى الانتقال إلى
الدليل التعليمي لإعداد OAuth.
النماذج المُلغاة
يمكنك إلغاء مهمة الضبط الدقيق في أي وقت قبل انتهاء المهمة. ومع ذلك، كان أداء الاستنتاج للنموذج المُلغى غير متوقع، خاصةً إذا يتم إلغاء مهمة الضبط في وقت مبكر من التدريب. إذا ألغيت العملية لأنّك تريد إيقاف التدريب في حقبة سابقة، عليك إنشاء مهمة تحسين جديدة وضبط الحقبة على قيمة أقل.
حدود النماذج التي تم ضبطها
ملاحظة: تخضع النماذج التي تم ضبطها للقيود التالية:
- الحدّ الأقصى المسموح به لإدخال نموذج Gemini 1.5 Flash الذي تم ضبطه هو 40,000 حرف.
- لا يمكن استخدام وضع JSON مع النماذج التي تم ضبطها.
- لا يتوفّر إدخال سوى النصوص.
الخطوات التالية
يمكنك البدء بالاطّلاع على الأدلة التعليمية التالية حول التحسين: