در هر فراخوانی یک مدل، میتوانید پیکربندی مدل را برای کنترل نحوهی تولید پاسخ توسط مدل ارسال کنید. هر مدل گزینههای پیکربندی متفاوتی ارائه میدهد.
همچنین میتوانید با استفاده از Google AI Studio با دستورات و پیکربندیهای مدل آزمایش کنید.پرش به گزینههای پیکربندی پرش به گزینههای پیکربندی ایمیجن
پیکربندی مدلهای Gemini
برای مشاهده محتوا و کد مخصوص ارائهدهنده در این صفحه، روی ارائهدهنده API Gemini خود کلیک کنید. |
این بخش به شما نشان میدهد که چگونه یک پیکربندی برای استفاده با مدلهای Gemini راهاندازی کنید و توضیحی در مورد هر پارامتر ارائه میدهد.
پیکربندی مدل ( Gemini ) را تنظیم کنید
پیکربندی برای موارد استفاده عمومی
این پیکربندی در طول عمر نمونه حفظ میشود. اگر میخواهید از پیکربندی متفاوتی استفاده کنید، یک نمونه GenerativeModel جدید با آن پیکربندی ایجاد کنید.
سویفت
مقادیر پارامترها را در GenerationConfig به عنوان بخشی از ایجاد یک نمونه GenerativeModel تنظیم کنید.
g: config
)
// ...
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 تنظیم کنید.
= config
)
// ...
// ...
// 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 تنظیم کنید.
nConfig });
// ...
// ...
// 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 تنظیم کنید.
onfig,
);
// ...
// ...
// 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,
);
// ...
وحدت
مقادیر پارامترها را در GenerationConfig به عنوان بخشی از ایجاد یک نمونه GenerativeModel تنظیم کنید.
generationConfig
);
// ...
// 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 جدید با آن پیکربندی ایجاد کنید.
سویفت
مقادیر پارامترها را در liveGenerationConfig هنگام مقداردهی اولیه نمونه LiveGenerativeModel تنظیم کنید:
g: config
)
// ...
import FirebaseAILogic
// ...
// 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"),
)
// Initialize the Vertex AI Gemini API backend service
// Specify the config as part of creating the `LiveGenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
modelName: "GEMINI_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
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
modelName = "GEMINI_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.setResponseModalities(ResponseModality.AUDIO);
configBuilder.setSpeechConfig(new SpeechConfig(Voices.FENRIR));
configBuilder.setTemperature(0.9f);
configBuilder.setTopK(16);
configBuilder.setTopP(0.1f);
LiveGenerationConfig config = configBuilder.build();
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
LiveModelFutures model = LiveModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"GEMINI_MODEL_NAME",
config
);
);
// ...
Web
مقادیر پارامترها را در LiveGenerationConfig هنگام مقداردهی اولیه نمونه LiveGenerativeModel تنظیم کنید:
generationConfig,
});
// ...
// ...
// 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 generationConfig = {
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 model = getLiveGenerativeModel(ai, {
model: "GEMINI_MODEL_NAME",
generationConfig,
});
// ...
Dart
مقادیر پارامترها را در LiveGenerationConfig به عنوان بخشی از ایجاد یک نمونه LiveModel تنظیم کنید.
fig,
);
// ...
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
final generationConfig = LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: [ResponseModalities.audio],
speechConfig: SpeechConfig(voiceName: 'Fenrir'),
temperature: 0.9,
topP: 0.1,
topK: 16,
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
final model = FirebaseAI.googleAI().liveGenerativeModel(
model: 'GEMINI_MODEL_NAME',
config: generationConfig,
);
// ...
وحدت
مقادیر پارامترها را در LiveGenerationConfig به عنوان بخشی از ایجاد یک نمونه LiveModel تنظیم کنید.
GenerationConfig
);
// ...
// Set parameter values in a `LiveGenerationConfig` (example values shown here)
var liveGenerationConfig = new LiveGenerationConfig(
maxOutputTokens: 200,
responseModalities: new [] { ResponseModality.Audio },
speechConfig: SpeechConfig.UsePrebuiltVoice("Fenrir"),
temperature: 0.9f,
topK: 16,
topP: 0.1f
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `LiveModel` instance
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
var model = ai.GetLiveModel(
modelName: "GEMINI_MODEL_NAME",
liveGenerationConfig: liveGenerationConfig
);
میتوانید توضیحات مربوط به هر پارامتر را در بخش بعدی این صفحه بیابید.
شرح پارامترها ( جمینی )
در اینجا، در صورت لزوم، مروری کلی بر پارامترهای موجود ارائه شده است.میتوانید لیست جامعی از پارامترها و مقادیر آنها را در مستندات Gemini Developer API بیابید.
| پارامتر | توضیحات | مقدار پیشفرض |
|---|---|---|
مهر زمانی صوتیaudioTimestamp | یک مقدار بولی که امکان درک مهر زمانی را برای فایلهای ورودی فقط صوتی فراهم میکند. فقط هنگام استفاده از فراخوانیهای | false |
تعداد کاندیداهاcandidateCount | تعداد تغییرات پاسخ برای بازگشت را مشخص میکند. برای هر درخواست، هزینه توکنهای خروجی همه کاندیداها از شما دریافت میشود، اما برای توکنهای ورودی فقط یک بار هزینه دریافت میشود. مقادیر پشتیبانی شده: فقط هنگام استفاده از | 1 |
جریمه فرکانسfrequencyPenalty | احتمال گنجاندن توکنهایی که مکرراً در پاسخ تولید شده ظاهر میشوند را کنترل میکند. مقادیر مثبت، توکنهایی را که مکرراً در محتوای تولید شده ظاهر میشوند، جریمه میکنند و احتمال تکرار محتوا را کاهش میدهند. | --- |
حداکثر توکنهای خروجیmaxOutputTokens | حداکثر تعداد توکنهایی که میتوانند در پاسخ تولید شوند را مشخص میکند. | --- |
جریمه حضورpresencePenalty | احتمال گنجاندن توکنهایی که از قبل در پاسخ تولید شده ظاهر شدهاند را کنترل میکند. مقادیر مثبت، توکنهایی را که از قبل در محتوای تولید شده ظاهر میشوند، جریمه میکنند و احتمال تولید محتوای متنوعتر را افزایش میدهند. | --- |
توالیهای توقفstopSequences | لیستی از رشتهها را مشخص میکند که به مدل میگوید در صورت مواجهه با یکی از رشتهها در پاسخ، تولید محتوا را متوقف کند. فقط هنگام استفاده از پیکربندی | --- |
دماtemperature | میزان تصادفی بودن پاسخ را کنترل میکند. دماهای پایینتر منجر به پاسخهای قطعیتر و دماهای بالاتر منجر به پاسخهای متنوعتر یا خلاقانهتر میشوند. | بستگی به مدل دارد |
تاپ-کیtopK | تعداد کلمات با بالاترین احتمال استفاده شده در محتوای تولید شده را محدود میکند. مقدار top-K برابر با 1 به این معنی است که توکن انتخاب شده بعدی باید محتملترین در میان تمام توکنهای موجود در واژگان مدل باشد، در حالی که مقدار top-K برابر با n به این معنی است که توکن بعدی باید از میان n توکن محتملتر انتخاب شود (همه بر اساس دمای تنظیم شده). | بستگی به مدل دارد |
تاپ-پیtopP | تنوع محتوای تولید شده را کنترل میکند. توکنها از محتملترین (به K بالا در بالا مراجعه کنید) تا کماحتمالترین انتخاب میشوند تا زمانی که مجموع احتمالات آنها برابر با مقدار P بالا شود. | بستگی به مدل دارد |
روش پاسخresponseModality | نوع خروجی استریم شده را هنگام استفاده از Live API یا خروجی چندوجهی بومی توسط یک مدل Gemini ، به عنوان مثال متن، صدا یا تصاویر، مشخص میکند. فقط هنگام استفاده از Live API و پیکربندی | --- |
گفتار (صدا)speechConfig | صدای مورد استفاده برای خروجی صدای پخش شده هنگام استفاده از Live API را مشخص میکند. فقط هنگام استفاده از Live API و پیکربندی | Puck |
پیکربندی مدلهای Imagen
برای مشاهده محتوا و کد مخصوص ارائهدهنده در این صفحه، روی ارائهدهنده Imagen API خود کلیک کنید. |
این بخش به شما نشان میدهد که چگونه یک پیکربندی برای استفاده با مدلهای Imagen تنظیم کنید و توضیحی در مورد هر پارامتر ارائه میدهد.
پیکربندی مدل را تنظیم کنید ( Imagen )
این پیکربندی در طول عمر نمونه حفظ میشود. اگر میخواهید از پیکربندی متفاوتی استفاده کنید، یک نمونه ImagenModel جدید با آن پیکربندی ایجاد کنید.
سویفت
مقادیر پارامترها را در ImagenGenerationConfig به عنوان بخشی از ایجاد یک نمونه ImagenModel تنظیم کنید.
g: config
)
// ...
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 تنظیم کنید.
= config
)
// ...
// ...
// 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 تنظیم کنید.
nConfig });
// ...
// ...
// 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 تنظیم کنید.
fig,
);
// ...
// ...
// 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,
);
// ...
وحدت
مقادیر پارامترها را در ImagenGenerationConfig به عنوان بخشی از ایجاد یک نمونه ImagenModel تنظیم کنید.
: config
);
// ...
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 | نسبت عرض به ارتفاع تصاویر تولید شده | پیشفرض مربع (۱:۱) است |
قالب تصویرimageFormat | گزینههای خروجی، مانند فرمت تصویر (نوع MIME) و سطح فشردهسازی تصاویر تولید شده | نوع MIME پیشفرض PNG است فشردهسازی پیشفرض ۷۵ است (اگر نوع MIME روی JPEG تنظیم شده باشد) |
واترمارکaddWatermark | آیا یک واترمارک دیجیتال نامرئی (به نام SynthID ) به تصاویر تولید شده اضافه شود یا خیر | پیشفرض true است |
نسل شخصpersonGeneration | آیا اجازه تولید مثل افراد توسط مدل داده شود یا خیر | پیشفرض به مدل بستگی دارد |
شامل ویژگیهای ایمنیincludeSafetyAttributes | آیا نمرات هوش مصنوعی مسئول گرد شده برای لیستی از ویژگیهای ایمنی در پاسخها برای ورودی و خروجی فیلتر نشده فعال شود؟ دستههای ویژگیهای ایمنی: | پیشفرض false است |
گزینههای دیگر برای کنترل تولید محتوا
- درباره طراحی سریع بیشتر بیاموزید تا بتوانید مدل را طوری تحت تأثیر قرار دهید که خروجی خاص نیازهای شما را تولید کند.
- از تنظیمات ایمنی برای تنظیم احتمال دریافت پاسخهایی که ممکن است مضر تلقی شوند، از جمله سخنان نفرتپراکن و محتوای صریح جنسی، استفاده کنید.
- دستورالعملهای سیستم را برای هدایت رفتار مدل تنظیم کنید. این ویژگی مانند مقدمهای است که قبل از اینکه مدل در معرض هرگونه دستورالعمل دیگری از کاربر نهایی قرار گیرد، اضافه میکنید.
- یک طرحواره پاسخ را به همراه اعلان ارسال کنید تا یک طرحواره خروجی خاص مشخص شود. این ویژگی معمولاً هنگام تولید خروجی JSON استفاده میشود، اما میتواند برای وظایف طبقهبندی نیز مورد استفاده قرار گیرد (مانند زمانی که میخواهید مدل از برچسبها یا تگهای خاصی استفاده کند).