Gemini API: Guía Completa sobre Configuración de Seguridad (safetySettings)
Análisis profundo del mecanismo safetySettings de Gemini API, incluyendo las cuatro categorías principales de daños, los cinco niveles de umbral de configuración, y el funcionamiento real de BLOCK_NONE. Esta guía te ayudará a configurar correctamente el filtrado de contenido para modelos de generación de imágenes.
Cuando usas la API de generación de imágenes de Gemini (como gemini-2.0-flash-exp-image-generation o gemini-3-pro-image-preview), probablemente hayas visto código de configuración como este:
"safetySettings": [
{"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_NONE"},
{"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_NONE"},
{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"},
{"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_NONE"}
]
¿Qué significa exactamente esta configuración? ¿Realmente BLOCK_NONE permite que el modelo genere cualquier contenido? Este artículo te explicará en detalle cómo funciona la configuración de seguridad de Gemini API y cómo usarla correctamente.
Valor central: Después de leer este artículo, entenderás las cuatro categorías principales de daños de Gemini, los cinco niveles de umbrales de configuración, y el funcionamiento real y limitaciones de BLOCK_NONE.
Puntos Clave de la Configuración de Seguridad de Gemini
| Punto Clave | Descripción | Importancia |
|---|---|---|
| Cuatro Categorías de Daños | Acoso, discurso de odio, contenido explícito, contenido peligroso | Dimensiones ajustables del filtrado de contenido |
| Cinco Niveles de Umbrales | OFF, BLOCK_NONE, BLOCK_FEW, BLOCK_SOME, BLOCK_MOST | Controlan la sensibilidad del filtrado |
| Significado de BLOCK_NONE | Desactiva el filtrado probabilístico de esa categoría, pero no evita protecciones centrales | La configuración ajustable más permisiva |
| Protecciones No Ajustables | Seguridad infantil y otros daños críticos siempre bloqueados | Protección codificada, imposible de desactivar |
Filosofía de Diseño de la Configuración de Seguridad
La configuración de seguridad de Gemini API utiliza un mecanismo de protección en capas:
- Capa ajustable: Los desarrolladores pueden ajustar los umbrales de filtrado de las cuatro categorías según el escenario de aplicación
- Capa no ajustable: Para daños críticos como la seguridad infantil, el sistema siempre bloquea sin posibilidad de eludirse mediante ninguna configuración
Esto significa que, incluso si configuras todas las categorías en BLOCK_NONE, el modelo seguirá rechazando generar contenido que involucre seguridad infantil y otras violaciones críticas.
Las Cuatro Categorías de Daños
Gemini API clasifica el contenido potencialmente dañino en cuatro categorías principales:
1. HARM_CATEGORY_HARASSMENT (Acoso)
Definición: Contenido que busca intimidar, acosar o amenazar a individuos o grupos.
Ejemplos de lo que detecta:
- Amenazas directas o indirectas
- Hostigamiento dirigido a personas específicas
- Contenido de intimidación sistemática
- Acoso basado en características personales
Caso práctico: Si intentas generar una imagen con el prompt "persona siendo acosada en redes sociales", el sistema lo evaluará bajo esta categoría.
2. HARM_CATEGORY_HATE_SPEECH (Discurso de Odio)
Definición: Contenido que promueve o incita odio contra grupos basándose en atributos como raza, religión, género, orientación sexual, etc.
Ejemplos de lo que detecta:
- Lenguaje despectivo hacia grupos protegidos
- Promoción de ideologías de odio
- Estereotipos negativos dañinos
- Contenido discriminatorio
Diferencia clave: Mientras que el acoso se dirige a individuos específicos, el discurso de odio se dirige a grupos completos.
3. HARM_CATEGORY_SEXUALLY_EXPLICIT (Contenido Sexualmente Explícito)
Definición: Contenido con descripciones o representaciones de actos sexuales o desnudez.
Qué cubre:
- Desnudez explícita
- Actos sexuales
- Contenido con intención erótica
- Material pornográfico
Nota importante: Esta categoría es ajustable, pero contenido que involucre menores está siempre bloqueado independientemente de la configuración.
4. HARM_CATEGORY_DANGEROUS_CONTENT (Contenido Peligroso)
Definición: Contenido que podría facilitar daño físico grave o actividades ilegales.
Ejemplos de lo que detecta:
- Instrucciones para fabricar armas o explosivos
- Promoción de autolesiones
- Contenido que glorifica la violencia
- Información para actividades ilegales peligrosas
Alcance amplio: Esta es la categoría más amplia e incluye cualquier contenido que pueda resultar en daño físico real.
Los Cinco Niveles de Umbrales
Gemini API ofrece cinco niveles de sensibilidad para cada categoría:
Tabla Comparativa de Umbrales
| Nivel | Nombre | Comportamiento | Cuándo usar |
|---|---|---|---|
| 🟢 Nivel 1 | BLOCK_NONE |
Bloquea solo contenido de alta probabilidad | Aplicaciones creativas con supervisión humana |
| 🟢 Nivel 2 | BLOCK_FEW |
Bloquea contenido de media-alta probabilidad | Aplicaciones profesionales con contexto específico |
| 🟡 Nivel 3 | BLOCK_SOME |
Bloquea contenido de probabilidad media | Balance entre creatividad y seguridad (predeterminado) |
| 🟠 Nivel 4 | BLOCK_MOST |
Bloquea desde baja probabilidad | Aplicaciones de cara al público |
| 🔴 Nivel 5 | OFF o sin configurar |
Configuración más estricta del sistema | Entornos ultra-sensibles |
Visualización del Funcionamiento de Umbrales
Contenido Generado → Evaluación de Probabilidad → Comparación con Umbral → Decisión
Ejemplo con SEXUALLY_EXPLICIT:
Prompt: "persona en la playa"
│
├─ Probabilidad evaluada: BAJA (20%)
│
├─ BLOCK_NONE (bloquea >80%): ✅ PASA
├─ BLOCK_FEW (bloquea >60%): ✅ PASA
├─ BLOCK_SOME (bloquea >40%): ✅ PASA
├─ BLOCK_MOST (bloquea >20%): ❌ BLOQUEADO
└─ OFF (bloquea todo sospechoso): ❌ BLOQUEADO
BLOCK_NONE: Lo Que Realmente Hace
Existe un malentendido común sobre BLOCK_NONE:
❌ Concepto erróneo: "BLOCK_NONE permite generar cualquier contenido"
✅ Realidad: "BLOCK_NONE desactiva el filtrado probabilístico para esa categoría específica, pero las protecciones centrales permanecen activas"
Qué significa en la práctica:
{
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
"threshold": "BLOCK_NONE"
}
Esto le dice al sistema:
- "No bloquees contenido basándote en probabilidades bajas o medias de contenido sexual"
- "Pero aún aplica reglas absolutas (como protección infantil)"
- "Solo bloquea cuando estés muy seguro de que viola políticas"
Ejemplo Práctico de Configuración
// Configuración permisiva para herramienta de diseño artístico
const safetySettings = [
{
category: "HARM_CATEGORY_HARASSMENT",
threshold: "BLOCK_FEW" // Permite arte dramático sin amenazas reales
},
{
category: "HARM_CATEGORY_HATE_SPEECH",
threshold: "BLOCK_MOST" // Estricto con discurso de odio
},
{
category: "HARM_CATEGORY_SEXUALLY_EXPLICIT",
threshold: "BLOCK_NONE" // Permite arte con desnudez
},
{
category: "HARM_CATEGORY_DANGEROUS_CONTENT",
threshold: "BLOCK_SOME" // Balance para escenas de acción
}
];
Protecciones No Ajustables (La Línea Roja)
Independientemente de cómo configures safetySettings, Gemini tiene líneas rojas absolutas que nunca se pueden cruzar:
🔴 Siempre Bloqueado (No Ajustable)
-
Child Safety and Exploitation Material (CSAM)
- Cualquier representación de menores en contextos sexuales
- Absolutamente bloqueado sin excepciones
- No se puede configurar con ningún umbral
-
Violencia Extrema Contra Niños
- Representaciones gráficas de daño a menores
- Bloqueado a nivel del sistema
-
Actividades Ilegales Específicas
- Tráfico de personas
- Explotación infantil
- Contenido ilegal en múltiples jurisdicciones
Por Qué Existen Estas Protecciones
Google diseñó Gemini con protecciones de múltiples capas porque:
- Responsabilidad Legal: Cumplimiento con leyes internacionales
- Principios Éticos: Algunos daños son objetivamente inaceptables
- Prevención de Abuso: Evitar uso malicioso de la tecnología
- Confianza del Usuario: Mantener la confianza en sistemas de IA
Qué Sucede Cuando Se Activa la Protección No Ajustable
// Este prompt SIEMPRE será bloqueado
const response = await model.generateContent({
prompt: "prompt que viola protección infantil",
safetySettings: [
{category: "HARM_CATEGORY_SEXUALLY_EXPLICIT", threshold: "BLOCK_NONE"}
]
});
// Respuesta del sistema:
{
"error": {
"code": 400,
"message": "Request contains prohibited content",
"status": "INVALID_ARGUMENT"
},
"blockReason": "SAFETY" // No especifica la categoría exacta por seguridad
}
Observa que: El sistema no te dirá exactamente qué regla no ajustable violaste, solo que el contenido está prohibido.
Mejores Prácticas de Configuración
1. Comienza Conservador, Ajusta Gradualmente
// ❌ Mal: Empezar demasiado permisivo
const badConfig = [
{category: "HARM_CATEGORY_HARASSMENT", threshold: "BLOCK_NONE"},
{category: "HARM_CATEGORY_HATE_SPEECH", threshold: "BLOCK_NONE"},
{category: "HARM_CATEGORY_SEXUALLY_EXPLICIT", threshold: "BLOCK_NONE"},
{category: "HARM_CATEGORY_DANGEROUS_CONTENT", threshold: "BLOCK_NONE"}
];
// ✅ Bien: Empezar conservador, relajar según sea necesario
const goodConfig = [
{category: "HARM_CATEGORY_HARASSMENT", threshold: "BLOCK_SOME"},
{category: "HARM_CATEGORY_HATE_SPEECH", threshold: "BLOCK_MOST"},
{category: "HARM_CATEGORY_SEXUALLY_EXPLICIT", threshold: "BLOCK_SOME"},
{category: "HARM_CATEGORY_DANGEROUS_CONTENT", threshold: "BLOCK_SOME"}
];
2. Ajusta Por Caso de Uso
// Aplicación educativa médica
const medicalAppConfig = [
{
category: "HARM_CATEGORY_SEXUALLY_EXPLICIT",
threshold: "BLOCK_FEW" // Permite anatomía médica
},
{
category: "HARM_CATEGORY_DANGEROUS_CONTENT",
threshold: "BLOCK_SOME" // Permite procedimientos médicos
}
];
// Aplicación de redes sociales públicas
const socialMediaConfig = [
{
category: "HARM_CATEGORY_HARASSMENT",
threshold: "BLOCK_MOST" // Muy estricto
},
{
category: "HARM_CATEGORY_HATE_SPEECH",
threshold: "BLOCK_MOST" // Muy estricto
}
];
3. Implementa Logging y Monitoreo
async function generateWithLogging(prompt, safetySettings) {
try {
const response = await model.generateContent({
prompt,
safetySettings
});
// Registra advertencias de seguridad incluso si no bloqueó
if (response.safetyRatings) {
console.log('Safety ratings:', response.safetyRatings);
// Alertar si alguna categoría está en MEDIUM o HIGH
const concerns = response.safetyRatings.filter(
r => r.probability !== 'NEGLIGIBLE' && r.probability !== 'LOW'
);
if (concerns.length > 0) {
logSafetyEvent({
prompt,
concerns,
timestamp: new Date()
});
}
}
return response;
} catch (error) {
if (error.message.includes('SAFETY')) {
logSafetyBlock({
prompt,
error: error.message,
timestamp: new Date()
});
}
throw error;
}
}
4. Añade Revisión Humana Para Contenido Sensible
async function generateWithReview(prompt, safetySettings) {
const response = await generateWithLogging(prompt, safetySettings);
// Si alguna categoría muestra preocupación, marca para revisión
const needsReview = response.safetyRatings?.some(
r => r.probability === 'MEDIUM' || r.probability === 'HIGH'
);
if (needsReview) {
await queueForHumanReview({
prompt,
generatedContent: response.text,
safetyRatings: response.safetyRatings
});
}
return response;
}
Errores Comunes y Cómo Evitarlos
Error #1: Asumir que BLOCK_NONE lo Permite Todo
// ❌ Concepto erróneo
"Si configuro BLOCK_NONE, puedo generar contenido ilegal"
// ✅ Realidad
"BLOCK_NONE solo relaja el filtrado probabilístico.
Las protecciones centrales permanecen activas."
Error #2: No Revisar los Safety Ratings
// ❌ Ignorar las calificaciones de seguridad
const response = await model.generateContent({prompt, safetySettings});
return response.text; // Podría contener advertencias
// ✅ Verificar siempre las calificaciones
const response = await model.generateContent({prompt, safetySettings});
if (response.safetyRatings) {
const highRisk = response.safetyRatings.filter(
r => r.probability === 'HIGH'
);
if (highRisk.length > 0) {
console.warn('Contenido de alto riesgo generado:', highRisk);
}
}
return response.text;
Error #3: Usar la Misma Configuración Para Todos los Casos de Uso
// ❌ Configuración única para todo
const oneConfigToRuleThemAll = [
{category: "HARM_CATEGORY_HARASSMENT", threshold: "BLOCK_NONE"},
// ... usar esto en todas partes
];
// ✅ Configuraciones específicas por contexto
const configs = {
artisticTool: [/* configuración permisiva */],
publicForum: [/* configuración estricta */],
medicalApp: [/* configuración contextual */]
};
Error #4: No Manejar Respuestas Bloqueadas
// ❌ Sin manejo de errores
const image = await generateImage(prompt, safetySettings);
// ✅ Manejo adecuado de errores
try {
const image = await generateImage(prompt, safetySettings);
return image;
} catch (error) {
if (error.code === 400 && error.message.includes('prohibited')) {
// Proporcionar feedback al usuario
return {
error: true,
message: 'El contenido solicitado viola políticas de seguridad',
suggestion: 'Intenta reformular tu prompt evitando temas sensibles'
};
}
throw error;
}
Configuración Recomendada Por Escenario
Herramienta de Arte/Diseño Profesional
const artisticToolSettings = [
{
category: "HARM_CATEGORY_HARASSMENT",
threshold: "BLOCK_FEW" // Arte dramático OK
},
{
category: "HARM_CATEGORY_HATE_SPEECH",
threshold: "BLOCK_MOST" // Estricto
},
{
category: "HARM_CATEGORY_SEXUALLY_EXPLICIT",
threshold: "BLOCK_NONE" // Permite desnudez artística
},
{
category: "HARM_CATEGORY_DANGEROUS_CONTENT",
threshold: "BLOCK_SOME" // Escenas de acción OK
}
];
Aplicación Educativa
const educationalSettings = [
{
category: "HARM_CATEGORY_HARASSMENT",
threshold: "BLOCK_MOST"
},
{
category: "HARM_CATEGORY_HATE_SPEECH",
threshold: "BLOCK_MOST"
},
{
category: "HARM_CATEGORY_SEXUALLY_EXPLICIT",
threshold: "BLOCK_FEW" // Educación médica/biológica
},
{
category: "HARM_CATEGORY_DANGEROUS_CONTENT",
threshold: "BLOCK_SOME" // Educación en seguridad
}
];
Plataforma de Redes Sociales
const socialMediaSettings = [
{
category: "HARM_CATEGORY_HARASSMENT",
threshold: "BLOCK_MOST" // Muy estricto
},
{
category: "HARM_CATEGORY_HATE_SPEECH",
threshold: "BLOCK_MOST" // Muy estricto
},
{
category: "HARM_CATEGORY_SEXUALLY_EXPLICIT",
threshold: "BLOCK_MOST" // Muy estricto
},
{
category: "HARM_CATEGORY_DANGEROUS_CONTENT",
threshold: "BLOCK_MOST" // Muy estricto
}
];
Prototipado Interno/Investigación
const researchSettings = [
{
category: "HARM_CATEGORY_HARASSMENT",
threshold: "BLOCK_NONE"
},
{
category: "HARM_CATEGORY_HATE_SPEECH",
threshold: "BLOCK_FEW"
},
{
category: "HARM_CATEGORY_SEXUALLY_EXPLICIT",
threshold: "BLOCK_NONE"
},
{
category: "HARM_CATEGORY_DANGEROUS_CONTENT",
threshold: "BLOCK_FEW"
}
];
// ⚠️ Solo para uso interno con supervisión adecuada
Conclusión: Equilibrio Entre Creatividad y Responsabilida
四大危害类别详解
Gemini API 支持四个可调节的危害类别:
1. HARM_CATEGORY_HARASSMENT(骚扰)
定义: 针对身份认同或受保护属性的负面或有害评论
包含内容:
- 人身攻击和侮辱
- 针对特定群体的歧视性言论
- 网络霸凌相关内容
2. HARM_CATEGORY_HATE_SPEECH(仇恨言论)
定义: 粗鲁、不尊重或亵渎的内容
包含内容:
- 种族歧视言论
- 宗教仇恨
- 基于性别、性取向的歧视
3. HARM_CATEGORY_SEXUALLY_EXPLICIT(色情内容)
定义: 涉及性行为或淫秽材料的引用
包含内容:
- 明确的性描述
- 裸露内容
- 色情暗示
4. HARM_CATEGORY_DANGEROUS_CONTENT(危险内容)
定义: 促进、协助或鼓励有害行为的内容
包含内容:
- 武器制造教程
- 自残或伤害他人的指导
- 非法活动说明
| 类别 | API 常量 | 过滤对象 |
|---|---|---|
| 骚扰 | HARM_CATEGORY_HARASSMENT |
人身攻击、歧视言论 |
| 仇恨言论 | HARM_CATEGORY_HATE_SPEECH |
种族/宗教仇恨 |
| 色情内容 | HARM_CATEGORY_SEXUALLY_EXPLICIT |
性描述、裸露 |
| 危险内容 | HARM_CATEGORY_DANGEROUS_CONTENT |
有害行为指导 |
提示: 通过 APIYI apiyi.com 调用 Gemini API 时,这些安全设置同样适用,可以根据实际需求进行配置。
五级阈值配置详解
Gemini API 提供五个阈值级别,控制内容过滤的敏感度:
| 设置名称 | API 值 | 过滤效果 | 适用场景 |
|---|---|---|---|
| 关闭 | OFF |
完全关闭安全过滤器 | Gemini 2.5+ 默认值 |
| 不阻止 | BLOCK_NONE |
无论概率评估如何都显示内容 | 需要最大创作自由 |
| 阻止少量 | BLOCK_ONLY_HIGH |
仅阻止高概率有害内容 | 大多数应用场景 |
| 阻止部分 | BLOCK_MEDIUM_AND_ABOVE |
阻止中等及以上概率内容 | 需要适度过滤 |
| 阻止大部分 | BLOCK_LOW_AND_ABOVE |
阻止低概率及以上内容 | 最严格过滤 |
阈值工作原理
Gemini 系统会对每段内容进行概率评估,判断其属于有害内容的可能性:
- HIGH: 高概率(很可能是有害内容)
- MEDIUM: 中等概率
- LOW: 低概率
- NEGLIGIBLE: 可忽略的概率
关键点: 系统基于概率而非严重程度进行阻止。这意味着:
- 高概率但低严重程度的内容可能被阻止
- 低概率但高严重程度的内容可能通过
默认值说明
| 模型版本 | 默认阈值 |
|---|---|
| Gemini 2.5、Gemini 3 等新版 GA 模型 | OFF(关闭) |
| 其他旧版模型 | BLOCK_SOME(阻止部分) |
El verdadero propósito de BLOCK_NONE
Qué puede hacer
Al configurar BLOCK_NONE:
- Desactiva el filtrado probabilístico: Esa categoría ya no bloqueará contenido basándose en evaluaciones de probabilidad
- Permite contenido límite: Contenido legítimo que podría ser clasificado incorrectamente no será bloqueado
- Aumenta la libertad creativa: Reduce bloqueos erróneos en escenarios artísticos, educativos, periodísticos, etc.
Qué no puede hacer
Incluso configurando todas las categorías como BLOCK_NONE:
- Protecciones centrales siguen activas: Protecciones hardcodeadas como la seguridad infantil no pueden evitarse
- Existen múltiples capas de filtrado: El monitoreo en tiempo real durante la generación y las verificaciones de postprocesamiento continúan funcionando
- Las líneas rojas de políticas no cambian: El contenido que viole explícitamente las políticas de Google seguirá siendo rechazado
Particularidades de la generación de imágenes
Para modelos de generación de imágenes (como gemini-2.0-flash-exp-image-generation), el filtrado de seguridad es más complejo:
- Filtrado del prompt: El texto de entrada se verifica primero
- Monitoreo durante la generación: Supervisión continua mientras se generan resultados intermedios
- Revisión post-generación: Una verificación de cumplimiento adicional después de completar la generación
Las investigaciones muestran que los prompts explícitos directos suelen ser bloqueados, pero técnicas como la escalada mediante conversaciones de múltiples turnos pueden eludir algunas verificaciones.
Ejemplos de configuración práctica
Configuración con Python SDK
import google.generativeai as genai
# Configurar ajustes de seguridad
safety_settings = [
{
"category": "HARM_CATEGORY_HARASSMENT",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
"threshold": "BLOCK_NONE"
}
]
# Crear instancia del modelo
model = genai.GenerativeModel(
model_name="gemini-2.0-flash-exp",
safety_settings=safety_settings
)
# Generar contenido
response = model.generate_content("tu prompt")
Ver ejemplo de configuración con REST API
{
"model": "gemini-2.0-flash-exp-image-generation",
"contents": [
{
"role": "user",
"parts": [
{"text": "genera una imagen estilo artístico"}
]
}
],
"safetySettings": [
{
"category": "HARM_CATEGORY_HARASSMENT",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
"threshold": "BLOCK_NONE"
}
],
"generationConfig": {
"responseModalities": ["image", "text"]
}
}
Consejo: A través de APIYI apiyi.com puedes probar rápidamente los efectos de diferentes configuraciones de seguridad. La plataforma soporta llamadas de interfaz unificadas para los modelos de la serie Gemini.
Casos de uso y recomendaciones
Escenarios apropiados para usar BLOCK_NONE
| Escenario | Descripción | Configuración sugerida |
|---|---|---|
| Creación artística | Arte corporal, expresión abstracta | Categoría de contenido sexual puede relajarse adecuadamente |
| Reportajes periodísticos | Imágenes relacionadas con guerra y conflictos | Categoría de contenido peligroso puede relajarse |
| Uso educativo | Contenido médico y educativo histórico | Ajustar según el contenido específico |
| Moderación de contenido | Necesidad de analizar contenido potencialmente infractor | Todas las categorías en BLOCK_NONE |
Escenarios donde NO se recomienda usar BLOCK_NONE
| Escenario | Descripción | Configuración sugerida |
|---|---|---|
| Aplicaciones públicas | Productos utilizados por usuarios comunes | BLOCK_MEDIUM_AND_ABOVE |
| Aplicaciones infantiles | Productos educativos y de entretenimiento para niños | BLOCK_LOW_AND_ABOVE |
| Herramientas corporativas | Escenarios que requieren auditoría de cumplimiento | BLOCK_ONLY_HIGH |
Mejores prácticas
- Ajuste progresivo: Comenzar con la configuración por defecto y relajar gradualmente según las necesidades reales
- Configuración por categoría: Diferentes categorías pueden tener diferentes umbrales, no es necesario que sean iguales
- Monitoreo y registro: Registrar las solicitudes bloqueadas y analizar si es necesario ajustar
- Análisis del contexto del usuario: Decidir el nivel de filtrado apropiado según el público objetivo
Preguntas frecuentes
P1: ¿Por qué aún se bloquea contenido después de configurar BLOCK_NONE?
BLOCK_NONE solo desactiva el filtrado por probabilidad de esa categoría, pero aún se bloqueará en los siguientes casos:
- Protección central: Protecciones codificadas como seguridad infantil que no se pueden desactivar
- Otras categorías: Si solo configuraste algunas categorías como BLOCK_NONE
- Líneas rojas de política: Contenido que viola explícitamente las políticas de uso de Google
- Verificación durante la generación: La generación de imágenes tiene monitoreo adicional en tiempo real
P2: ¿Cuál es la diferencia entre OFF y BLOCK_NONE?
Según la documentación oficial de Google:
- OFF: Desactiva completamente el filtro de seguridad (valor por defecto en Gemini 2.5+)
- BLOCK_NONE: Muestra el contenido independientemente de la evaluación de probabilidad
El efecto práctico es muy similar, pero OFF desactiva más completamente la lógica de filtrado de esa categoría. Para las versiones nuevas del modelo, ambos tienen básicamente el mismo efecto.
P3: ¿Cómo usar la configuración de seguridad a través de servicios de proxy API?
Al llamar a la API de Gemini a través de APIYI apiyi.com:
- Los parámetros de configuración de seguridad se transmiten completamente a la API de Google
- El método de configuración es idéntico al de llamar directamente a la API de Google
- Soporta todas las cuatro categorías principales y los cinco niveles de umbral
- Permite verificar rápidamente el efecto de diferentes configuraciones durante la fase de pruebas
Resumen
Puntos clave sobre la configuración de seguridad de la API de Gemini:
- Cuatro categorías ajustables: acoso, discurso de odio, contenido sexual y contenido peligroso – los desarrolladores pueden ajustarlas según sus necesidades
- Cinco niveles de umbral: desde OFF/BLOCK_NONE (más permisivo) hasta BLOCK_LOW_AND_ABOVE (más estricto)
- La esencia de BLOCK_NONE: desactiva el filtrado por probabilidad, pero no evita las protecciones centrales ni las políticas fundamentales
- Mecanismo de protección por capas: capa ajustable + capa no ajustable, asegurando un nivel mínimo de seguridad
- Particularidades de la generación de imágenes: filtrado multicapa (prompt → proceso de generación → revisión de salida) más riguroso
Una vez que comprendas estos ajustes, podrás configurar los parámetros de seguridad según tu caso de uso, encontrando el equilibrio entre libertad creativa y seguridad del contenido.
A través de APIYI apiyi.com puedes probar rápidamente los efectos de la configuración de seguridad en los modelos de generación de imágenes de Gemini. La plataforma ofrece cuota gratuita e interfaz unificada para múltiples modelos.
Referencias
⚠️ Nota sobre formato de enlaces: Todos los enlaces externos usan el formato
Nombre del recurso: dominio.com, fácil de copiar pero no clicable, evitando pérdida de autoridad SEO.
-
Documentación oficial de configuración de seguridad de la API de Gemini: Guía oficial de Google
- Enlace:
ai.google.dev/gemini-api/docs/safety-settings - Descripción: Explicación autorizada de la configuración de seguridad y referencia de la API
- Enlace:
-
Configuración de filtros de seguridad de Vertex AI: Documentación de Google Cloud
- Enlace:
cloud.google.com/vertex-ai/generative-ai/docs/multimodal/configure-safety-filters - Descripción: Configuración de seguridad detallada para Vertex AI a nivel empresarial
- Enlace:
-
Guía de seguridad de Gemini: Mejores prácticas para desarrolladores
- Enlace:
ai.google.dev/gemini-api/docs/safety-guidance - Descripción: Recomendaciones oficiales para usar la API de Gemini de forma segura
- Enlace:
-
Configuración de seguridad de Firebase AI Logic: Guía de integración con Firebase
- Enlace:
firebase.google.com/docs/ai-logic/safety-settings - Descripción: Configuración de ajustes de seguridad en entorno Firebase
- Enlace:
Autor: Equipo Técnico
Intercambio técnico: Te invitamos a participar en la sección de comentarios. Más recursos disponibles en la comunidad técnica de APIYI apiyi.com
