Puedes usar la configuración de seguridad para ajustar la probabilidad de recibir respuestas que se puedan considerar dañinas. De forma predeterminada, la configuración de seguridad bloquea el contenido con una probabilidad media o alta de no ser seguro en todas las dimensiones.
Gemini Ir a la configuración de seguridad de Imagen Ir a la configuración de seguridad de
Configuración de seguridad para modelos Gemini
Obtén más información sobre la configuración de seguridad de los modelos Gemini en la documentación de Google Cloud.
Swift
SafetySettings
se configura cuando creas una instancia de GenerativeModel
.
Ejemplo con un parámetro de configuración de seguridad:
// ...
let model = vertex.generativeModel(
modelName: "GEMINI_MODEL_NAME",
safetySettings: [
SafetySetting(harmCategory: .harassment, threshold: .blockOnlyHigh)
]
)
// ...
Ejemplo con varios parámetros de configuración de seguridad:
// ...
let harassmentSafety = SafetySetting(harmCategory: .harassment, threshold: .blockOnlyHigh)
let hateSpeechSafety = SafetySetting(harmCategory: .hateSpeech, threshold: .blockMediumAndAbove)
let model = vertex.generativeModel(
modelName: "GEMINI_MODEL_NAME",
safetySettings: [harassmentSafety, hateSpeechSafety]
)
// ...
Kotlin
SafetySettings
se configura cuando creas una instancia de GenerativeModel
.
Ejemplo con un parámetro de configuración de seguridad:
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)
)
)
// ...
Ejemplo con varios parámetros de configuración de seguridad:
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
SafetySettings
se configura cuando creas una instancia de GenerativeModel
.
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);
// ...
Ejemplo con varios parámetros de configuración de seguridad:
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);
// ...
Web
SafetySettings
se configura cuando creas una instancia de GenerativeModel
.
Ejemplo con un parámetro de configuración de seguridad:
import { HarmBlockThreshold, HarmCategory, getGenerativeModel } from "firebase/vertexai";
// ...
const safetySettings = [
{
category: HarmCategory.HARM_CATEGORY_HARASSMENT,
threshold: HarmBlockThreshold.BLOCK_ONLY_HIGH,
},
];
const model = getGenerativeModel(vertex, { model: "GEMINI_MODEL_NAME", safetySettings });
// ...
Ejemplo con varios parámetros de configuración de seguridad:
import { HarmBlockThreshold, HarmCategory, getGenerativeModel } from "firebase/vertexai";
// ...
const safetySettings = [
{
category: HarmCategory.HARM_CATEGORY_HARASSMENT,
threshold: HarmBlockThreshold.BLOCK_ONLY_HIGH,
},
{
category: HarmCategory.HARM_CATEGORY_HATE_SPEECH,
threshold: HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
},
];
const model = getGenerativeModel(vertex, { model: "GEMINI_MODEL_NAME", safetySettings });
// ...
Dart
SafetySettings
se configura cuando creas una instancia de GenerativeModel
.
Ejemplo con un parámetro de configuración de seguridad:
// ...
final safetySettings = [
SafetySetting(HarmCategory.harassment, HarmBlockThreshold.high)
];
final model = FirebaseVertexAI.instance.generativeModel(
model: 'GEMINI_MODEL_NAME',
safetySettings: safetySettings,
);
// ...
Ejemplo con varios parámetros de configuración de seguridad:
// ...
final safetySettings = [
SafetySetting(HarmCategory.harassment, HarmBlockThreshold.high),
SafetySetting(HarmCategory.hateSpeech, HarmBlockThreshold.high),
];
final model = FirebaseVertexAI.instance.generativeModel(
model: 'GEMINI_MODEL_NAME',
safetySettings: safetySettings,
);
// ...
Configuración de seguridad para modelos Imagen
Obtén información sobre todos los parámetros de configuración de seguridad admitidos y sus valores disponibles para los modelos Imagen en la documentación de Google Cloud.
Swift
ImagenSafetySettings
se configura cuando creas una instancia de ImagenModel
.
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create an `ImagenModel` instance
let model = vertex.imagenModel(
modelName: "IMAGEN_MODEL_NAME",
// Configure image generation safety settings for the model
safetySettings: ImagenSafetySettings(
safetyFilterLevel: .blockLowAndAbove,
personFilterLevel: .allowAdult
)
)
// ...
Kotlin
ImagenSafetySettings
se configura cuando creas una instancia de ImagenModel
.
// Create an `ImagenModel` instance
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
ImagenSafetySettings
se configura cuando creas una instancia de ImagenModel
.
// Create an `ImagenModel` instance
ImagenModel imagenModel =
FirebaseVertexAI.getInstance().imagenModel(
/* modelName */ "IMAGEN_MODEL_NAME",
/* imageGenerationConfig */ null);
ImagenModelFutures model = ImagenModelFutures.from(imagenModel);
// ...
Web
ImagenSafetySettings
se configura cuando creas una instancia de ImagenModel
.
// Create an `ImagenModel` instance
const imagenModel = getImagenModel(
vertexAI,
{
model: "IMAGEN_MODEL_NAME",
// Configure image generation safety settings for the model
safetySettings: {
safetyFilterLevel: ImagenSafetyFilterLevel.BLOCK_LOW_AND_ABOVE,
personFilterLevel: ImagenPersonFilterLevel.ALLOW_ADULT,
}
}
);
// ...
Dart
ImagenSafetySettings
se configura cuando creas una instancia de ImagenModel
.
// Create an `ImagenModel` instance
var model = FirebaseVertexAI.instance.imagenModel(
model: 'IMAGEN_MODEL_NAME',
// Configure image generation safety settings for the model
safetySettings: ImagenSafetySettings(
ImagenSafetyFilterLevel.blockLowAndAbove,
ImagenPersonFilterLevel.allowAdult,
),
);
// ...
Otras opciones para controlar la generación de contenido
- Obtén más información sobre el diseño de instrucciones para influir en el modelo y generar resultados específicos para tus necesidades.
- Configura los parámetros del modelo para controlar cómo este genera una respuesta. En el caso de los modelos Gemini, estos parámetros incluyen la cantidad máxima de tokens de salida, la temperatura, Top-K y Top-P. En el caso de los modelos Imagen, estos incluyen la relación de aspecto, la generación de personas, la marca de agua, etcétera.
- Establece instrucciones del sistema para dirigir el comportamiento del modelo. Esta función es como un "preámbulo" que agregas antes de que el modelo se exponga a otras instrucciones del usuario final.
- Pasa un esquema de respuesta junto con la instrucción para especificar un esquema de salida específico. Esta función se usa con mayor frecuencia cuando se genera un resultado JSON, pero también se puede usar para tareas de clasificación (como cuando deseas que el modelo use etiquetas específicas).