في كل طلب يتم إرساله إلى نموذج، يمكنك إرسال إعدادات النموذج للتحكّم في طريقة إنشاء النموذج للردّ. يوفّر كل نموذج خيارات إعداد مختلفة.
يمكنك أيضًا تجربة الطلبات وإعدادات النماذج باستخدام Google AI Studio.الانتقال إلى خيارات إعداد Gemini الانتقال إلى خيارات إعداد Imagen (تم إيقاف هذه الميزة نهائيًا)
إعداد نماذج Gemini
|
انقر على موفّر Gemini API لعرض المحتوى والرمز البرمجي الخاصَّين بالموفّر على هذه الصفحة. |
يوضّح لك هذا القسم كيفية إعداد إعدادات لاستخدامها مع Gemini النماذج ويقدّم وصفًا لكل مَعلمة.
إعداد نموذج (Gemini)
إعداد حالات الاستخدام العامة في Gemini
يتم الاحتفاظ بالإعدادات طوال فترة بقاء المثال. إذا أردت استخدام إعدادات مختلفة، يمكنك إنشاء مثال جديد من 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.
let config = GenerationConfig(
candidateCount: 1,
temperature: 0.9,
topP: 0.1,
topK: 16,
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.
val config = generationConfig {
candidateCount = 1
maxOutputTokens = 200
stopSequences = listOf("red")
temperature = 0.9f
topK = 16
topP = 0.1f
}
// 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.
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.candidateCount = 1;
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;
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.
const generationConfig = {
candidate_count: 1,
maxOutputTokens: 200,
stopSequences: ["red"],
temperature: 0.9,
topP: 0.1,
topK: 16,
};
// 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.
final generationConfig = GenerationConfig(
candidateCount: 1,
maxOutputTokens: 200,
stopSequences: ["red"],
temperature: 0.9,
topP: 0.1,
topK: 16,
);
// 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.
var generationConfig = new GenerationConfig(
candidateCount: 1,
maxOutputTokens: 200,
stopSequences: new string[] { "red" },
temperature: 0.9f,
topK: 16,
topP: 0.1f
);
// 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
);
يمكنك الاطّلاع على وصف لكل مَعلمة في القسم التالي من هذه الصفحة.
إعداد Gemini Live API
يتم الاحتفاظ بالإعدادات طوال فترة بقاء المثال. إذا أردت استخدام إعدادات مختلفة، يمكنك إنشاء مثال جديد من LiveModel باستخدام هذه الإعدادات.
Swift
يمكنك ضبط قيم المَعلمات في الـ
liveGenerationConfig
أثناء تهيئة مثال الـLiveModel:
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
let config = LiveGenerationConfig(
temperature: 0.9,
topP: 0.1,
topK: 16,
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)
temperature = 0.9f
topK = 16
topP = 0.1f
}
// Specify the config as part of creating the `LiveModel` instance
val liveModel = Firebase.ai(backend = GenerativeBackend.googleAI()).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));
configBuilder.setTemperature(0.9f);
configBuilder.setTopK(16);
configBuilder.setTopP(0.1f);
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:
// ...
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" },
},
},
temperature: 0.9,
topP: 0.1,
topK: 16,
};
// 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'),
temperature: 0.9,
topP: 0.1,
topK: 16,
);
// 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"),
temperature: 0.9f,
topK: 16,
topP: 0.1f
);
// 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
);
// ...
يمكنك الاطّلاع على وصف لكل مَعلمة في القسم التالي من هذه الصفحة.
وصف المَعلمات (Gemini)
في ما يلي نظرة عامة على مستوى عالٍ على المَعلمات المتاحة، حسب الاقتضاء. يمكنك الاطّلاع على قائمة شاملة بالمَعلمات وقيمها في مستندات Gemini Developer API.
| المَعلمة | الوصف | القيمة التلقائية |
|---|---|---|
الطابع الزمني الصوتيaudioTimestamp
|
قيمة منطقية تتيح فهم الطوابع الزمنية لملفات الإدخال الصوتية فقط لا ينطبق ذلك إلا عند استخدام طلبات |
false |
عدد المرشّحينcandidateCount
|
يحدّد عدد أشكال الردّ المطلوب عرضها في كل طلب، يتم تحصيل رسوم منك مقابل الرموز المميّزة الناتجة لجميع المرشّحين، ولكن يتم تحصيل الرسوم منك مرة واحدة فقط مقابل الرموز المميّزة للإدخال. القيم المتوافقة: لا ينطبق ذلك إلا عند استخدام |
1 |
عقوبة التكرارfrequencyPenalty
|
تتحكّم هذه المَعلمة في احتمالية تضمين الرموز المميّزة التي تظهر بشكل متكرّر في
الردّ الذي تم إنشاؤه. تفرض القيم الموجبة عقوبات على الرموز المميّزة التي تظهر بشكل متكرّر في المحتوى الذي تم إنشاؤه، ما يقلّل من احتمالية تكرار المحتوى. |
--- |
الحدّ الأقصى للرموز المميّزة الناتجةmaxOutputTokens
|
يحدّد الحدّ الأقصى لعدد الرموز المميّزة التي يمكن إنشاؤها في الردّ. | --- |
عقوبة التضمينpresencePenalty
|
تتحكّم هذه المَعلمة في احتمالية تضمين الرموز المميّزة التي تظهر في
الردّ الذي تم إنشاؤه. تفرض القيم الموجبة عقوبات على الرموز المميّزة التي تظهر في المحتوى الذي تم إنشاؤه، ما يزيد من احتمالية إنشاء محتوى أكثر تنوّعًا. |
--- |
تسلسلات الإيقافstopSequences
|
تحدّد هذه المَعلمة قائمة بالسلاسل التي تطلب من النموذج التوقّف عن إنشاء المحتوى إذا تم العثور على إحدى السلاسل في الردّ. لا ينطبق ذلك إلا عند استخدام إعدادات
|
--- |
درجة العشوائيةtemperature
|
تتحكّم هذه المَعلمة في درجة العشوائية في الردّ. تؤدي درجات العشوائية المنخفضة إلى ردود أكثر حتمية، وتؤدي درجات العشوائية المرتفعة إلى ردود أكثر تنوّعًا أو إبداعًا. |
حسب النموذج |
أعلى KtopK
|
يحدّ هذا الخيار عدد الكلمات ذات الاحتمالية الأعلى التي يتم استخدامها في المحتوى الذي تم إنشاؤه. إذا كانت قيمة "أعلى K" هي 1، يعني ذلك أنّ الرمز المميّز التالي الذي يتم اختياره يجب أن يكون
الأكثر احتمالية بين جميع الرموز المميّزة في مفردات النموذج،
بينما إذا كانت قيمة "أعلى K" هي n، يعني ذلك أنّه يجب اختيار الرمز المميّز التالي
من بين الرموز المميّزة n الأكثر احتمالية (كل ذلك استنادًا إلى درجة العشوائية التي تم ضبطها).
|
حسب النموذج |
أعلى احتمال تراكميtopP
|
تتحكّم هذه المَعلمة في تنوّع المحتوى الذي تم إنشاؤه. يتم اختيار الرموز المميّزة من الأكثر احتمالية (راجِع أعلى K أعلاه) إلى الأقل احتمالية إلى أن يساوي مجموع احتمالاتها قيمة "أعلى احتمال تراكمي". |
حسب النموذج |
نمط الردّresponseModality
|
يحدّد هذا الخيار نوع الإخراج الذي يتم بثّه عند استخدام الـ Live API أو الإخراج المتعدّد الوسائط الأصلي من خلال نموذج الـ Gemini، مثل النصوص أو الصوت أو الصور. لا ينطبق ذلك إلا عند استخدام نماذج Live API، أو عند استخدام نموذج Gemini قادر على إخراج متعدّد الوسائط. |
--- |
الكلام (الصوت)speechConfig
|
يحدّد هذا الخيار الصوت المستخدَم للإخراج الصوتي الذي يتم بثّه عند استخدام الـ Live API. لا ينطبق ذلك إلا عند استخدام نماذج Live API. |
Puck |
إعداد نماذج Imagen
|
انقر على موفّر Imagen API لعرض المحتوى الخاصّ بالموفّر والرمز البرمجي على هذه الصفحة. |
يوضّح لك هذا القسم كيفية إعداد نموذج لاستخدامه مع Imagen نماذج ويقدّم وصفًا لكل مَعلمة.
إعداد نموذج (Imagen)
يتم الاحتفاظ بالإعدادات طوال فترة بقاء المثال. إذا أردت استخدام إعدادات مختلفة، يمكنك إنشاء مثال جديد من ImagenModel باستخدام هذه الإعدادات.
Swift
يمكنك ضبط قيم المَعلمات في
ImagenGenerationConfig
كجزء من إنشاء مثال ImagenModel.
import FirebaseAILogic
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
let config = ImagenGenerationConfig(
negativePrompt: "frogs",
numberOfImages: 2,
aspectRatio: .landscape16x9,
imageFormat: .jpeg(compressionQuality: 100),
addWatermark: false
)
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).imagenModel(
modelName: "IMAGEN_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
يمكنك ضبط قيم المَعلمات في
ImagenGenerationConfig
كجزء من إنشاء مثال ImagenModel.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
val config = ImagenGenerationConfig {
negativePrompt = "frogs",
numberOfImages = 2,
aspectRatio = ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat = ImagenImageFormat.jpeg(compressionQuality = 100),
addWatermark = false
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
modelName = "IMAGEN_MODEL_NAME",
generationConfig = config
)
// ...
Java
يمكنك ضبط قيم المَعلمات في
ImagenGenerationConfig
كجزء من إنشاء مثال ImagenModel.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
ImagenGenerationConfig config = new ImagenGenerationConfig.Builder()
.setNegativePrompt("frogs")
.setNumberOfImages(2)
.setAspectRatio(ImagenAspectRatio.LANDSCAPE_16x9)
.setImageFormat(ImagenImageFormat.jpeg(100))
.setAddWatermark(false)
.build();
// Specify the config as part of creating the `ImagenModel` instance
ImagenModelFutures model = ImagenModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.imagenModel(
"IMAGEN_MODEL_NAME",
config
);
);
// ...
Web
يمكنك ضبط قيم المَعلمات في
ImagenGenerationConfig
كجزء من إنشاء مثال ImagenModel.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
const generationConfig = {
negativePrompt: "frogs",
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat: ImagenImageFormat.jpeg(100),
addWatermark: false
};
// Specify the config as part of creating the `ImagenModel` instance
const model = getImagenModel(ai, { model: "IMAGEN_MODEL_NAME", generationConfig });
// ...
Dart
يمكنك ضبط قيم المَعلمات في
ImagenGenerationConfig
كجزء من إنشاء مثال ImagenModel.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
final generationConfig = ImagenGenerationConfig(
negativePrompt: 'frogs',
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.landscape16x9,
imageFormat: ImagenImageFormat.jpeg(compressionQuality: 100)
addWatermark: false
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
final model = FirebaseAI.googleAI().imagenModel(
model: 'IMAGEN_MODEL_NAME',
config: generationConfig,
);
// ...
Unity
يمكنك ضبط قيم المَعلمات في
ImagenGenerationConfig
كجزء من إنشاء مثال ImagenModel.
using Firebase.AI;
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
var config = new ImagenGenerationConfig(
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.Landscape16x9,
imageFormat: ImagenImageFormat.Jpeg(100)
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
var model = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetImagenModel(
modelName: "imagen-4.0-generate-001",
generationConfig: config
);
// ...
يمكنك الاطّلاع على وصف لكل مَعلمة في القسم التالي من هذه الصفحة.
وصف المَعلمات (Imagen)
في ما يلي نظرة عامة على مستوى عالٍ على المَعلمات المتاحة، حسب الاقتضاء. يمكنك الاطّلاع على قائمة شاملة بالمَعلمات وقيمها في Google Cloud المستندات.
| المَعلمة | الوصف | القيمة التلقائية |
|---|---|---|
الطلب السلبي
negativePrompt
|
وصف لما تريد استبعاده في الصور التي تم إنشاؤها
لا تتوافق
|
--- |
عدد النتائج
numberOfImages
|
عدد الصور التي تم إنشاؤها والتي يتم عرضها لكل طلب | القيمة التلقائية هي صورة واحدة |
نسبة العرض إلى الارتفاع
aspectRatio
|
نسبة عرض الصور التي تم إنشاؤها إلى ارتفاعها | القيمة التلقائية هي مربّع (1:1) |
تنسيق الصورة
imageFormat
|
خيارات الإخراج، مثل تنسيق الصورة (نوع MIME) ومستوى ضغط الصور التي تم إنشاؤها | نوع MIME التلقائي هو PNG مستوى الضغط التلقائي هو 75 (إذا تم ضبط نوع MIME على JPEG) |
العلامة المائية
addWatermark
|
ما إذا كان سيتم إضافة علامة مائية رقمية غير مرئية (تُعرف باسم SynthID) إلى الصور التي تم إنشاؤها | القيمة التلقائية هي true
|
إنشاء صور للأشخاص
personGeneration
|
ما إذا كان سيتم السماح للنموذج بإنشاء صور للأشخاص | تعتمد القيمة التلقائية على النموذج |
تضمين سمات الأمان
includeSafetyAttributes
|
ما إذا كان سيتم تفعيل نتائج الذكاء الاصطناعي المسؤول المقرّبة لقائمة سمات الأمان
في الردود على الإدخالات والإخراجات غير المفلترة فئات سمات الأمان:
|
القيمة التلقائية هي false |
خيارات أخرى للتحكّم في إنشاء المحتوى
- مزيد من المعلومات حول تصميم الطلبات لتتمكّن من التأثير في النموذج لإنشاء إخراج محدّد يناسب احتياجاتك
- استخدام إعدادات الأمان لضبط احتمالية الحصول على ردود قد تُعتبر ضارة، بما في ذلك كلام يحض على الكراهية والمحتوى الجنسي الفاضح.
- ضبط تعليمات النظام لتوجيه سلوك النموذج تشبه هذه الميزة مقدمة تضيفها قبل أن يتعرّض النموذج لأي تعليمات أخرى من المستخدم النهائي.
- إرسال مخطط الردّ مع الطلب لتحديد مخطط إخراج معيّن يتم استخدام هذه الميزة بشكل شائع عند إنشاء إخراج JSON، ولكن يمكن استخدامها أيضًا لمهام التصنيف (مثل عندما تريد أن يستخدم النموذج تصنيفات أو علامات معيّنة).