瞭解並使用安全性設定


您可以使用安全性設定,調整收到可能有害回覆的可能性。根據預設,安全設定會封鎖所有維度中屬於中等和/或高機率有害的內容。

跳至Gemini安全設定 跳至Imagen安全設定

Gemini 型號的安全設定

如要進一步瞭解安全設定,請參閱 Google Cloud 說明文件。

您可以在模型初始化期間設定 SafetySettings。以下列舉幾個基本範例。

以下說明如何設定安全設定:

Kotlin

import com.google.firebase.vertexai.type.HarmBlockThreshold
import com.google.firebase.vertexai.type.HarmCategory
import com.google.firebase.vertexai.type.SafetySetting

val generativeModel = Firebase.vertexAI.generativeModel(
    modelName = "GEMINI_MODEL_NAME",
    safetySettings = listOf(
        SafetySetting(HarmCategory.HARASSMENT, HarmBlockThreshold.ONLY_HIGH)
    )
)

// ...

Java

SafetySetting harassmentSafety = new SafetySetting(HarmCategory.HARASSMENT,
    HarmBlockThreshold.ONLY_HIGH);

GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
    "GEMINI_MODEL_NAME",
    /* generationConfig is optional */ null,
    Collections.singletonList(harassmentSafety)
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// ...

你也可以設定多個安全設定:

Kotlin

import com.google.firebase.vertexai.type.HarmBlockThreshold
import com.google.firebase.vertexai.type.HarmCategory
import com.google.firebase.vertexai.type.SafetySetting

val harassmentSafety = SafetySetting(HarmCategory.HARASSMENT, HarmBlockThreshold.ONLY_HIGH)

val hateSpeechSafety = SafetySetting(HarmCategory.HATE_SPEECH, HarmBlockThreshold.MEDIUM_AND_ABOVE)

val generativeModel = Firebase.vertexAI.generativeModel(
    modelName = "GEMINI_MODEL_NAME",
    safetySettings = listOf(harassmentSafety, hateSpeechSafety)
)

// ...

Java

SafetySetting harassmentSafety = new SafetySetting(HarmCategory.HARASSMENT,
    HarmBlockThreshold.ONLY_HIGH);

SafetySetting hateSpeechSafety = new SafetySetting(HarmCategory.HATE_SPEECH,
    HarmBlockThreshold.MEDIUM_AND_ABOVE);

GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
    "GEMINI_MODEL_NAME",
    /* generationConfig is optional */ null,
    List.of(harassmentSafety, hateSpeechSafety)
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// ...

Imagen 型號的安全設定

瞭解 Imagen 型號支援的安全設定和可用值

Kotlin

val imagenModel = Firebase.vertexAI.imagenModel(
  modelName = "IMAGEN_MODEL_NAME",
  // Configure image generation safety settings for the model
  safetySettings = ImagenSafetySettings(
    safetyFilterLevel = ImagenSafetyFilterLevel.BLOCK_LOW_AND_ABOVE,
    personFilterLevel = ImagenPersonFilterLevel.BLOCK_ALL
  )
)

// ...

Java

ImagenModel imagenModel =
    FirebaseVertexAI.getInstance().imagenModel(
            /* modelName */ "IMAGEN_MODEL_NAME",
            /* imageGenerationConfig */ null);
ImagenModelFutures model = ImagenModelFutures.from(imagenModel);

// ...

其他控管內容產生方式的選項

  • 進一步瞭解提示設計,以便您影響模型,讓模型產生符合您需求的輸出內容。
  • 設定模型參數,控管模型產生回覆的方式。對於 Gemini 模型,這些參數包括輸出符記數量上限、溫度、topK 和 topP。對於 Imagen 模型,這些參數包括顯示比例、人物生成、浮水印等。
  • 設定系統指示,引導模型的行為。這項功能就像是「前言」,可在模型向使用者提供任何進一步指示之前新增。
  • 請傳遞回應結構定義和提示,以便指定特定輸出結構定義。這項功能最常用於產生 JSON 輸出內容,但也可以用於分類工作 (例如希望模型使用特定標籤或標記時)。