في كل طلب يتم إرساله إلى نموذج، يمكنك إرسال إعدادات النموذج للتحكّم في طريقة إنشاء النموذج للردّ. يتيح كل نموذج خيارات إعداد مختلفة، مثل ضبط 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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
let config = GenerationConfig(
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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
val config = generationConfig {
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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
const generationConfig = {
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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
final generationConfig = GenerationConfig(
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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
var generationConfig = new GenerationConfig(
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 = Voice("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(new Voice("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.وصف المَعلمات
الجدول التالي هو نظرة عامة عالية المستوى على المَعلمات المتاحة. لا تنطبق بعض المَعلمات إلا على طُرز معيّنة.
| المَعلمة | الوصف | القيود | القيمة التلقائية |
|---|---|---|---|
الطابع الزمني للمحتوى الصوتيaudioTimestamp
|
يتيح فهم الطوابع الزمنية لملفات الإدخال الصوتية فقط. |
قيمة منطقية
لا ينطبق هذا الخيار إلا عند استخدام إعداد |
false
|
الحد الأقصى لعدد الرموز المميزة للناتجmaxOutputTokens
|
تحدّد هذه السمة الحد الأقصى لعدد الرموز المميّزة التي يمكن إنشاؤها في الرد. | --- | --- |
تسلسلات الإيقافstopSequences
|
تحدّد هذه السمة قائمة بالسلاسل التي توجّه النموذج إلى التوقّف عن إنشاء المحتوى إذا تم العثور على إحدى السلاسل في الرد. |
لا ينطبق هذا الإعداد إلا عند استخدام إعدادات لا ينطبق ذلك على نماذج الصور ("Nano Banana") أو نماذج تحويل النص إلى كلام. |
--- |
| الإعدادات المتخصّصة | |||
جارٍ التفكيرthinkingConfig
|
تتحكّم هذه المَعلمة في "عملية التفكير" التي تتبعها النماذج عند إنشاء رد.
|
القيم المسموح بها: يمكنك الاطّلاع على مستندات التفكير لا ينطبق ذلك على نماذج تحويل النص إلى كلام.
Firebase AI Logic لا تتيح بعد ضبط |
حسب الطراز |
طُرق الردّresponseModalities
|
تحدّد هذه السمة نوع الإخراج (مثل النص أو الصوت أو الصور). | لا ينطبق هذا الحقل (وهو إلزامي) إلا عند استخدام Gemini نماذج الصور (نماذج "Nano Banana") ونماذج تحويل النص إلى كلام Live API والنماذج. | --- |
خصائص الصورimageConfig
|
تحدّد هذه السمة نسبة العرض إلى الارتفاع ودرجة الدقة للصور التي يتم إنشاؤها. |
القيم المسموح بها: يمكنك الاطّلاع على ضبط إعدادات إنشاء الصور ينطبق ذلك فقط عند استخدام Gemini نماذج الصور (نماذج "Nano Banana"). |
نسبة العرض إلى الارتفاع 1:1 (مربّع) دقة 1024x1024 |
الكلام (الصوت)speechConfig
|
تحدّد هذه السمة الصوت المستخدَم لإخراج الصوت. |
لا ينطبق هذا الإعداد إلا عند استخدام نماذج تحويل النص إلى كلام ونماذج Live API. هذه السمة مطلوبة لنماذج تحويل النص إلى كلام. |
Puck
|
خيارات أخرى للتحكّم في إنشاء المحتوى
- مزيد من المعلومات حول تصميم الطلبات للتأثير في النموذج كي يقدّم نتائج مخصّصة لاحتياجاتك
- استخدِم إعدادات الأمان لضبط احتمالية تلقّي ردود قد تُعتبر ضارة، بما في ذلك كلام يحض على الكراهية والمحتوى الجنسي الفاضح.
- اضبط تعليمات النظام لتوجيه سلوك النموذج. هذه الميزة تشبه المقدمة التي تضيفها قبل أن يتلقّى النموذج أي تعليمات أخرى من المستخدم النهائي.
- مرِّر مخطط الردود مع الطلب لتحديد مخطط ناتج معيّن. تُستخدَم هذه الميزة بشكل شائع عند إنشاء نتائج بتنسيق JSON، ولكن يمكن استخدامها أيضًا في مهام التصنيف (مثل عندما تريد أن يستخدم النموذج تصنيفات أو علامات معيّنة).