في كل طلب يتم إرساله إلى نموذج، يمكنك إرسال إعدادات ضبط النموذج للتحكّم في طريقة إنشاء النموذج للردّ. يتيح كل نموذج خيارات إعداد مختلفة، مثل ضبط maxOutputTokens أو إعدادات متخصصة للتفكير أو طرق الرد أو الصور أو الكلام.
في معظم حالات الاستخدام عند الوصول إلى نموذج Gemini، يمكنك ضبط النموذج باستخدام GenerationConfig. ومع ذلك، إذا كنت بصدد إعداد نموذج
Gemini Live API، عليك استخدام LiveGenerationConfig.
توضّح هذه الصفحة كيفية إعداد عملية الضبط لنماذج Gemini وتقدّم وصفًا لكل مَعلمة.
الانتقال إلى إعدادات Gemini الانتقال إلى إعدادات Gemini Live API
GenerationConfig لطُرز Gemini
|
انقر على مقدّم خدمة Gemini API لعرض المحتوى والرمز الخاصين بمقدّم الخدمة على هذه الصفحة. |
يمكنك ضبط GenerationConfig لمعظم نماذج Gemini، بما في ذلك النماذج ذات الاستخدام العام ونماذج إنشاء الصور (نماذج "Nano Banana") ونماذج تحويل النص إلى كلام (TTS).
يتم الاحتفاظ بالإعدادات طوال مدة تشغيل مثيل GenerativeModel. إذا أردت استخدام إعدادات مختلفة، يمكنك إنشاء واستخدام مثيل جديد
بإعدادات مختلفة.
Swift
اضبط قيم المَعلمات في
GenerationConfig
كجزء من إنشاء مثيل GenerativeModel.
import FirebaseAILogic
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
let config = GenerationConfig(
candidateCount: 1,
maxOutputTokens: 200,
stopSequences: ["red"]
)
// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
modelName: "GEMINI_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
اضبط قيم المَعلمات في
GenerationConfig
كجزء من إنشاء مثيل GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
val config = generationConfig {
candidateCount = 1
maxOutputTokens = 200
stopSequences = listOf("red")
}
// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
modelName = "GEMINI_MODEL_NAME",
generationConfig = config
)
// ...
Java
اضبط قيم المَعلمات في
GenerationConfig
كجزء من إنشاء مثيل GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.candidateCount = 1;
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
GenerationConfig config = configBuilder.build();
// Specify the config as part of creating the `GenerativeModel` instance.
GenerativeModelFutures model = GenerativeModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"GEMINI_MODEL_NAME",
config
);
);
// ...
Web
اضبط قيم المَعلمات في
GenerationConfig
كجزء من إنشاء مثيل GenerativeModel.
// ...
// Initialize the Gemini Developer API backend service.
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
const generationConfig = {
candidate_count: 1,
maxOutputTokens: 200,
stopSequences: ["red"],
};
// Specify the config as part of creating the `GenerativeModel` instance.
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME", generationConfig });
// ...
Dart
اضبط قيم المَعلمات في
GenerationConfig
كجزء من إنشاء مثيل GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
final generationConfig = GenerationConfig(
candidateCount: 1,
maxOutputTokens: 200,
stopSequences: ["red"],
);
// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
final model = FirebaseAI.googleAI().generativeModel(
model: 'GEMINI_MODEL_NAME',
config: generationConfig,
);
// ...
Unity
اضبط قيم المَعلمات في
GenerationConfig
كجزء من إنشاء مثيل GenerativeModel.
// ...
// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
var generationConfig = new GenerationConfig(
candidateCount: 1,
maxOutputTokens: 200,
stopSequences: new string[] { "red" }
);
// Initialize the Gemini Developer API backend service.
// Specify the config as part of creating the `GenerativeModel` instance.
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
var model = ai.GetGenerativeModel(
modelName: "GEMINI_MODEL_NAME",
generationConfig: generationConfig
);
يمكنك الاطّلاع على وصف لكل مَعلمة في القسم التالي من هذه الصفحة.
يمكنك تجربة الطلبات وإعدادات النماذج باستخدام Google AI Studio.LiveGenerationConfig لطُرز Gemini Live API
|
انقر على مقدّم خدمة Gemini API لعرض المحتوى والرمز الخاصين بمقدّم الخدمة على هذه الصفحة. |
اضبط LiveGenerationConfig فقط عند استخدام نماذج Gemini Live API.
يتم الاحتفاظ بالإعدادات طوال مدة تشغيل مثيل LiveModel. إذا أردت استخدام إعدادات مختلفة، يمكنك إنشاء واستخدام مثيل جديد
بإعدادات مختلفة.
Swift
اضبط قيم المَعلمات في
liveGenerationConfig
أثناء عملية تهيئة مثيل LiveModel:
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here).
let config = LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: [.audio],
speech: SpeechConfig(voiceName: "Fenrir"),
)
// Specify the config as part of creating the `liveModel` instance.
let liveModel = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
اضبط قيم المَعلمات في
LiveGenerationConfig
كجزء من إنشاء مثيل LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here).
val config = liveGenerationConfig {
maxOutputTokens = 200
responseModality = ResponseModality.AUDIO
speechConfig = SpeechConfig(voice = Voices.FENRIR)
}
// Specify the config as part of creating the `LiveModel` instance.
val liveModel = Firebase.ai(backend = GenerativeBackend.agentPlatform()).liveModel(
modelName = "GEMINI_LIVE_MODEL_NAME",
generationConfig = config
)
// ...
Java
اضبط قيم المَعلمات في
LiveGenerationConfig
كجزء من إنشاء مثيل LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here).
LiveGenerationConfig.Builder configBuilder = new LiveGenerationConfig.Builder();
configBuilder.setMaxOutputTokens(200);
configBuilder.setResponseModality(ResponseModality.AUDIO);
configBuilder.setSpeechConfig(new SpeechConfig(Voices.FENRIR));
LiveGenerationConfig config = configBuilder.build();
// Specify the config as part of creating the `LiveModel` instance.
LiveGenerativeModel lm = FirebaseAI.getInstance(GenerativeBackend.googleAI()).liveModel(
"GEMINI_LIVE_MODEL_NAME",
config
);
// ...
Web
اضبط قيم المَعلمات في
LiveGenerationConfig
أثناء عملية تهيئة مثيل LiveGenerativeModel:
// ...
// Initialize the Gemini Developer API backend service.
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `LiveGenerationConfig` (example values shown here).
const liveGenerationConfig = {
maxOutputTokens: 200,
responseModalities: [ResponseModality.AUDIO],
speechConfig: {
voiceConfig: {
prebuiltVoiceConfig: { voiceName: "Fenrir" },
},
},
};
// Specify the config as part of creating the `LiveGenerativeModel` instance.
const liveModel = getLiveGenerativeModel(ai, {
model: "GEMINI_LIVE_MODEL_NAME",
liveGenerationConfig,
});
// ...
Dart
اضبط قيم المَعلمات في
LiveGenerationConfig
كجزء من إنشاء مثيل LiveGenerativeModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here).
final config = LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: [ResponseModalities.audio],
speechConfig: SpeechConfig(voiceName: 'Fenrir'),
);
// Specify the config as part of creating the `liveGenerativeModel` instance.
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
model: 'GEMINI_LIVE_MODEL_NAME',
liveGenerationConfig: config,
);
// ...
Unity
اضبط قيم المَعلمات في
LiveGenerationConfig
كجزء من إنشاء مثيل LiveModel.
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here).
var config = new LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: new[] { ResponseModality.Audio },
speechConfig: SpeechConfig.UsePrebuiltVoice("Fenrir")
);
// Specify the config as part of creating the `LiveModel` instance.
var liveModel = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetLiveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
liveGenerationConfig: config
);
// ...
يمكنك الاطّلاع على وصف لكل مَعلمة في القسم التالي من هذه الصفحة.
يمكنك تجربة الطلبات وإعدادات النماذج باستخدام Google AI Studio.وصف المَعلمات
الجدول التالي هو نظرة عامة عالية المستوى على المَعلمات المتاحة. لا تنطبق بعض المَعلمات إلا على طُرز معيّنة.
يُرجى العِلم أنّه تم إيقاف درجة العشوائية وأعلى K كلمة محتملة وأعلى احتمال تراكمي، وتتجاهلها أحدث طُرز Gemini.
| المَعلمة | الوصف | القيود | القيمة التلقائية |
|---|---|---|---|
الطابع الزمني للصوتaudioTimestamp
|
تتيح فهم الطوابع الزمنية لملفات الإدخال الصوتية فقط. |
قيمة منطقية
لا ينطبق ذلك إلا عند استخدام إعداد |
false
|
عدد المرشحينcandidateCount
|
تحدّد هذه السمة عدد صيغ الردود المطلوب عرضها. في كل طلب، يتم تحصيل رسوم منك مقابل الرموز المميزة للناتج من جميع المرشحين، ولكن يتم تحصيل الرسوم منك مرة واحدة فقط مقابل الرموز المميزة للإدخال. |
القيم المسموح بها:
لا ينطبق ذلك إلا عند استخدام
لا ينطبق ذلك عند استخدام نماذج |
1
|
أقصى عدد لرموز الناتج المميّزةmaxOutputTokens
|
تحدّد هذه السمة الحد الأقصى لعدد الرموز المميّزة التي يمكن إنشاؤها في الرد. | --- | --- |
عقوبة التكرارfrequencyPenalty
|
تتحكّم في احتمال تضمين الرموز المميزة التي تظهر بشكل متكرر في الرد الذي تم إنشاؤه. تؤدي القيم الموجبة إلى فرض عقوبة على الرموز المميزة التي تظهر بشكل متكرّر في المحتوى الذي تم إنشاؤه، ما يقلّل من احتمال تكرار المحتوى. |
لا ينطبق ذلك على نماذج تحويل النص إلى كلام. | --- |
عقوبة عدم الحضورpresencePenalty
|
تتحكّم هذه السمة في احتمال تضمين رموز مميّزة تظهر في الردّ الذي تم إنشاؤه. تؤدي القيم الموجبة إلى فرض عقوبة على الرموز المميزة التي تظهر في المحتوى الذي تم إنشاؤه، ما يزيد من احتمالية إنشاء محتوى أكثر تنوعًا. |
لا ينطبق ذلك على نماذج تحويل النص إلى كلام. | --- |
إيقاف التسلسلاتstopSequences
|
تحدّد هذه السمة قائمة بالسلاسل التي تطلب من النموذج التوقّف عن إنشاء المحتوى إذا صادف إحدى السلاسل في الردّ. |
لا ينطبق هذا الخيار إلا عند استخدام إعدادات لا ينطبق ذلك على نماذج تحويل النص إلى كلام. |
--- |
| الإعدادات المتخصّصة | |||
التفكيرthinkingConfig
|
تتحكّم هذه المَعلمة في "عملية التفكير" التي تتبعها النماذج عند إنشاء رد.
|
القيم المسموح بها: يمكنك الاطّلاع على مستندات التفكير لا ينطبق ذلك على نماذج تحويل النص إلى كلام.
Firebase AI Logic لا تتيح بعد ضبط
|
حسب الطراز |
طُرق الردّresponseModalities
|
تحدّد هذه السمة نوع الناتج (مثل النص أو الصوت أو الصور). | لا ينطبق هذا الشرط (وهو إلزامي) إلا عند استخدام Gemini نماذج الصور (نماذج "Nano Banana")، ونماذج تحويل النص إلى كلام، ونماذج Live API. | --- |
خصائص الصورimageConfig
|
تحدّد هذه السمة نسبة العرض إلى الارتفاع ودرجة الدقة للصور التي يتم إنشاؤها. |
القيم المسموح بها: راجِع مقالة ضبط إعدادات إنشاء الصور ينطبق ذلك فقط عند استخدام Gemini نماذج الصور (نماذج "Nano Banana"). |
نسبة العرض إلى الارتفاع 1:1 (مربّع) درجة الدقة 1024x1024 |
الكلام (الصوت)speechConfig
|
تحدّد هذه السمة الصوت المستخدَم لإخراج الصوت. |
لا ينطبق هذا الإعداد إلا عند استخدام نماذج تحويل النص إلى كلام ونماذج Live API. مطلوب لنماذج تحويل النص إلى كلام. |
Puck
|
خيارات أخرى للتحكّم في إنشاء المحتوى
- مزيد من المعلومات حول تصميم الطلبات لتتمكّن من التأثير في النموذج لإنشاء نتائج تتوافق مع احتياجاتك
- استخدِم إعدادات الأمان لتعديل احتمالية تلقّي ردود قد تُعتبر ضارة، بما في ذلك كلام يحض على الكراهية والمحتوى الجنسي الفاضح.
- اضبط تعليمات النظام لتوجيه سلوك النموذج. هذه الميزة تشبه المقدمة التي تضيفها قبل أن يتلقّى النموذج أي تعليمات أخرى من المستخدم النهائي.
- مرِّر مخطط الردود مع الطلب لتحديد مخطط ناتج معيّن. تُستخدَم هذه الميزة بشكل شائع الاستخدام عند إنشاء مخرجات بتنسيق JSON، ولكن يمكن استخدامها أيضًا في مهام التصنيف (مثل عندما تريد أن يستخدم النموذج تصنيفات أو علامات معيّنة).