Gemini API 响应内容被标记?安全过滤机制解析与优化

2,850 阅读3分钟

在使用 Gemini AI 执行翻译或语音识别等任务时,您可能会遇到 "响应内容被标记" 等报错信息,如下图所示:

image.png

这主要是因为 Gemini 对其处理的内容存在严格的安全限制。尽管我们可以在代码中进行一定的调整,例如设置最宽松的 "Block None" 限制,但最终是否过滤内容仍然由 Gemini 的综合评估决定。

Gemini API 的安全过滤器主要涵盖以下类别,其他未列出的内容无法通过代码进行调整:

类别说明
骚扰内容针对个人身份和/或受保护属性的负面或有害评论。
仇恨言论针对种族、宗教、性别等群体的歧视性、侮辱性或攻击性内容。
露骨色情内容包含对性行为、性器官或其他淫秽内容的明确描述或暗示。
危险内容宣扬、助长或鼓励有害行为,例如暴力、自残或非法活动。
公民诚信与选举、投票或政治进程相关的查询或内容,可能存在误导或操控选民的风险。

下表详细介绍了针对每个类别,您可以在代码中设置的屏蔽阈值:

例如,如果您将仇恨言论类别的屏蔽设置设为 "屏蔽少部分",则系统会屏蔽包含仇恨言论内容概率较高的部分,同时允许包含此类内容概率较低的部分。

阈值(Google AI Studio)阈值 (API)说明
全部不屏蔽BLOCK_NONE无论内容是否被认为不安全,一律允许通过。
屏蔽少部分BLOCK_ONLY_HIGH仅当内容被认为具有较高不安全概率时才屏蔽。
屏蔽一部分BLOCK_MEDIUM_AND_ABOVE当内容被认为具有中等或较高不安全概率时屏蔽。
屏蔽大部分BLOCK_LOW_AND_ABOVE当内容被认为具有较低、中等或较高不安全概率时屏蔽。
不适用HARM_BLOCK_THRESHOLD_UNSPECIFIED未指定阈值,系统将使用默认阈值进行屏蔽。

您可以通过以下代码示例,将所有类别的安全阈值设置为 BLOCK_NONE

safetySettings = { 
'HATE': 'BLOCK_NONE', 
'HARASSMENT': 'BLOCK_NONE', 
'SEXUAL' : 'BLOCK_NONE', 
'DANGEROUS' : 'BLOCK_NONE' 
}

model = genai.GenerativeModel('gemini-2.0-flash-exp')
model.generate_content(message,safety_settings=safetySettings)

重要提示: 即使您将所有类别的阈值设置为 BLOCK_NONE,也并不意味着 Gemini 会完全放行所有内容。Gemini 仍然会根据上下文推断内容的安全性,并进行过滤。

如何降低出现安全限制的概率?

  • 切换模型: 一般而言,flash 系列模型 (如 gemini-2.0-flash-exp) 的安全限制较为严格,而 pro 和 thinking 系列的模型则相对较少。您可以尝试切换到不同的模型。
  • 缩减内容: 在处理可能涉及敏感内容时,尝试一次性发送较少的内容,缩短上下文长度,这可以在一定程度上降低安全过滤的频率。

如何彻底禁用 Gemini 的安全判断?

目前,您可以通过绑定国外信用卡并切换到按月付费的高级账户,来彻底禁用 Gemini 的安全判断。