É possível usar as configurações de segurança para ajustar a probabilidade de receber respostas que possam ser consideradas nocivas. Por padrão, as configurações de segurança bloqueiam conteúdo com probabilidade média e/ou alta de não ser seguro em todas as dimensões.
Gemini Acessar as configurações de segurança do Imagen Acessar as configurações de segurança do
Configurações de segurança para modelos Gemini
Saiba mais sobre as configurações de segurança para modelos Gemini na documentação do Google Cloud.
Swift
Você configura o
SafetySettings
ao criar uma instância de GenerativeModel
.
Exemplo com uma configuração de segurança:
// ...
let model = vertex.generativeModel(
modelName: "GEMINI_MODEL_NAME",
safetySettings: [
SafetySetting(harmCategory: .harassment, threshold: .blockOnlyHigh)
]
)
// ...
Exemplo com várias configurações de segurança:
// ...
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
Você configura o
SafetySettings
ao criar uma instância de GenerativeModel
.
Exemplo com uma configuração de segurança:
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)
)
)
// ...
Exemplo com várias configurações de segurança:
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
Você configura o
SafetySettings
ao criar uma instância 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);
// ...
Exemplo com várias configurações de segurança:
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
Você configura o
SafetySettings
ao criar uma instância de GenerativeModel
.
Exemplo com uma configuração de segurança:
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 });
// ...
Exemplo com várias configurações de segurança:
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
Você configura o
SafetySettings
ao criar uma instância GenerativeModel
.
Exemplo com uma configuração de segurança:
// ...
final safetySettings = [
SafetySetting(HarmCategory.harassment, HarmBlockThreshold.high)
];
final model = FirebaseVertexAI.instance.generativeModel(
model: 'GEMINI_MODEL_NAME',
safetySettings: safetySettings,
);
// ...
Exemplo com várias configurações de segurança:
// ...
final safetySettings = [
SafetySetting(HarmCategory.harassment, HarmBlockThreshold.high),
SafetySetting(HarmCategory.hateSpeech, HarmBlockThreshold.high),
];
final model = FirebaseVertexAI.instance.generativeModel(
model: 'GEMINI_MODEL_NAME',
safetySettings: safetySettings,
);
// ...
Configurações de segurança para modelos Imagen
Saiba mais sobre todas as configurações de segurança compatíveis e os valores disponíveis para modelos Imagen na documentação do Google Cloud.
Swift
Você configura o
ImagenSafetySettings
ao criar uma instância 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
Você configura o
ImagenSafetySettings
ao criar uma instância 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
Você configura o
ImagenSafetySettings
ao criar uma instância ImagenModel
.
// Create an `ImagenModel` instance
ImagenModel imagenModel =
FirebaseVertexAI.getInstance().imagenModel(
/* modelName */ "IMAGEN_MODEL_NAME",
/* imageGenerationConfig */ null);
ImagenModelFutures model = ImagenModelFutures.from(imagenModel);
// ...
Web
Você configura o
ImagenSafetySettings
ao criar uma instância 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
Você configura
ImagenSafetySettings
ao criar uma instância 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,
),
);
// ...
Outras opções para controlar a geração de conteúdo
- Saiba mais sobre o design de comando para influenciar o modelo a gerar resultados específicos para suas necessidades.
- Configure os parâmetros do modelo para controlar como o modelo gera uma resposta. Para modelos Gemini, esses parâmetros incluem tokens de saída máximos, temperatura, topK e topP. Para modelos Imagen, isso inclui proporção, geração de pessoas, marca d'água etc.
- Defina instruções do sistema para orientar o comportamento do modelo. Esse recurso é como um "preâmbulo" que você adiciona antes que o modelo seja exposto a outras instruções do usuário final.
- Transmita um esquema de resposta com o comando para especificar um esquema de saída específico. Esse recurso é usado com mais frequência ao gerar saída JSON, mas também pode ser usado para tarefas de classificação, como quando você quer que o modelo use rótulos ou tags específicos.