استخدام إعدادات النموذج للتحكّم في الردود

في كل طلب يتم إرساله إلى نموذج، يمكنك إرسال إعدادات النموذج للتحكّم في طريقة إنشاء النموذج للردّ. يوفّر كل نموذج خيارات إعداد مختلفة.

يمكنك أيضًا تجربة الطلبات وإعدادات النماذج باستخدام 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

قيمة منطقية تتيح فهم الطوابع الزمنية لملفات الإدخال الصوتية فقط

لا ينطبق ذلك إلا عند استخدام طلبات generateContent أو generateContentStream وكان نوع الإدخال ملفًا صوتيًا فقط.

false
عدد المرشّحين
candidateCount

يحدّد عدد أشكال الردّ المطلوب عرضها في كل طلب، يتم تحصيل رسوم منك مقابل الرموز المميّزة الناتجة لجميع المرشّحين، ولكن يتم تحصيل الرسوم منك مرة واحدة فقط مقابل الرموز المميّزة للإدخال.

القيم المتوافقة: 1 - 8 (ضمنًا)

لا ينطبق ذلك إلا عند استخدام generateContent و أحدث نماذج Gemini. لا تتوافق نماذج Live API وgenerateContentStream مع هذه الميزة.

1
عقوبة التكرار
frequencyPenalty
تتحكّم هذه المَعلمة في احتمالية تضمين الرموز المميّزة التي تظهر بشكل متكرّر في الردّ الذي تم إنشاؤه.
تفرض القيم الموجبة عقوبات على الرموز المميّزة التي تظهر بشكل متكرّر في المحتوى الذي تم إنشاؤه، ما يقلّل من احتمالية تكرار المحتوى.
---
الحدّ الأقصى للرموز المميّزة الناتجة
maxOutputTokens
يحدّد الحدّ الأقصى لعدد الرموز المميّزة التي يمكن إنشاؤها في الردّ. ---
عقوبة التضمين
presencePenalty
تتحكّم هذه المَعلمة في احتمالية تضمين الرموز المميّزة التي تظهر في الردّ الذي تم إنشاؤه.
تفرض القيم الموجبة عقوبات على الرموز المميّزة التي تظهر في المحتوى الذي تم إنشاؤه، ما يزيد من احتمالية إنشاء محتوى أكثر تنوّعًا.
---
تسلسلات الإيقاف
stopSequences

تحدّد هذه المَعلمة قائمة بالسلاسل التي تطلب من النموذج التوقّف عن إنشاء المحتوى إذا تم العثور على إحدى السلاسل في الردّ.

لا ينطبق ذلك إلا عند استخدام إعدادات GenerativeModel configuration.

---
درجة العشوائية
temperature
تتحكّم هذه المَعلمة في درجة العشوائية في الردّ.
تؤدي درجات العشوائية المنخفضة إلى ردود أكثر حتمية، وتؤدي درجات العشوائية المرتفعة إلى ردود أكثر تنوّعًا أو إبداعًا.
حسب النموذج
أعلى K
topK
يحدّ هذا الخيار عدد الكلمات ذات الاحتمالية الأعلى التي يتم استخدامها في المحتوى الذي تم إنشاؤه.
إذا كانت قيمة "أعلى 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
وصف لما تريد استبعاده في الصور التي تم إنشاؤها

لا تتوافق imagen-3.0-generate-002 مع هذه المَعلمة بعد.

---
عدد النتائج
numberOfImages
عدد الصور التي تم إنشاؤها والتي يتم عرضها لكل طلب القيمة التلقائية هي صورة واحدة
نسبة العرض إلى الارتفاع
aspectRatio
نسبة عرض الصور التي تم إنشاؤها إلى ارتفاعها القيمة التلقائية هي مربّع (1:1)
تنسيق الصورة
imageFormat
خيارات الإخراج، مثل تنسيق الصورة (نوع MIME) ومستوى ضغط الصور التي تم إنشاؤها نوع MIME التلقائي هو PNG
مستوى الضغط التلقائي هو 75 (إذا تم ضبط نوع MIME على JPEG)
العلامة المائية
addWatermark
ما إذا كان سيتم إضافة علامة مائية رقمية غير مرئية (تُعرف باسم SynthID) إلى الصور التي تم إنشاؤها القيمة التلقائية هي true
إنشاء صور للأشخاص
personGeneration
ما إذا كان سيتم السماح للنموذج بإنشاء صور للأشخاص تعتمد القيمة التلقائية على النموذج
تضمين سمات الأمان
includeSafetyAttributes
ما إذا كان سيتم تفعيل نتائج الذكاء الاصطناعي المسؤول المقرّبة لقائمة سمات الأمان في الردود على الإدخالات والإخراجات غير المفلترة

فئات سمات الأمان: "Death, Harm & Tragedy", "Firearms & Weapons", "Hate", "Health", "Illicit Drugs", "Politics", "Porn", "Religion & Belief", "Toxic", "Violence", "Vulgarity", "War & Conflict".

القيمة التلقائية هي false



خيارات أخرى للتحكّم في إنشاء المحتوى