生成式 AI 已经进入青少年的学习、创作和信息检索过程。真正需要解决的问题,不再是青少年会不会使用 AI,而是产品能否提供与年龄相匹配的保护,同时保留探索、提问和学习的空间。
围绕这一目标,OpenAI 正在从适龄保护、学习工具、家长控制和专家合作几个方向提高 ChatGPT 对青少年的安全性。这些措施指向同一个产品原则:青少年账户不能只是成人账户的缩小版,安全策略必须进入账户、模型、界面和监护流程。
适龄保护必须贯穿整条请求链路
对青少年用户实施保护,不能只依靠一段“请安全回答”的系统提示。一个完整的控制面通常需要覆盖多个环节:
- 账户层:识别账户所属年龄段,并为不同年龄段设置默认策略。
- 输入层:检测自伤、性内容、危险挑战、欺凌等高风险主题。
- 生成层:限制不适合青少年的内容,必要时转为支持性、安全导向的回答。
- 体验层:对敏感功能增加解释、确认步骤或访问限制。
- 事件层:记录策略命中原因,支持审计、申诉和持续改进。
年龄信息本身并不总是准确,因此工程上不能把生日字段当作唯一防线。更稳妥的设计是分层控制:账户年龄决定默认保护等级,内容风险分类器评估每一次交互,高风险场景再触发更严格的响应策略。
这种方案也有边界。年龄推断可能误判,内容分类器可能漏检或过度拦截,青少年还可能借用成人账户。安全系统需要把这些情况当作长期运营问题,而不是一次上线即可完成的功能。
学习工具不应变成代写按钮
AI 对青少年的价值,主要体现在解释概念、拆解问题、提供反馈和鼓励自主思考。如果产品直接交付作业答案,它虽然缩短了完成任务的时间,却可能绕过最重要的学习过程。
适合学习场景的交互可以采用递进式结构:
- 先询问学生已经理解到哪一步。
- 提供一个提示或相似示例,而不是立即给出最终答案。
- 要求学生写出自己的推理。
- 针对具体错误反馈,并允许继续追问。
- 在需要时给出完整解法,同时明确关键推导过程。
例如,面对“帮我写完这篇读后感”,系统可以先询问书名、学生最有感触的情节和自己的观点,再帮助组织提纲。这样仍然能提高效率,但不会完全替代学生的判断和表达。
产品团队还应区分“学习辅助”和“高风险建议”。数学讲解与心理危机、药物使用、饮食失调等问题不能共享同一套响应策略。后者需要更保守的语言、可靠的求助路径,以及由相关专家参与制定的规则。
家长控制需要边界,而不是全面监视
家长控制可以帮助家庭设置使用时间、功能权限和内容偏好,但它不应自动演变成逐字读取全部对话的监控工具。青少年需要保护,也需要与年龄相符的隐私和自主空间。
合理的控制面可以包括:
- 设置可使用时段和每日时长。
- 控制语音、图像生成或外部连接等功能。
- 查看账户级安全设置是否开启。
- 接收经过严格限定的高风险事件通知。
- 提供透明的申诉、解除关联和设置变更记录。
“通知家长”尤其需要谨慎。普通的敏感提问不应直接触发告警;高置信度、迫近且严重的风险才可能需要升级处理。产品还必须考虑家庭环境本身不安全的情况,避免通知机制给青少年带来新的风险。
可以这样实践:在 AI 服务前增加适龄策略网关
下面是一个仅使用 Python 标准库的最小示例。它不代表 ChatGPT 的实际实现,而是演示应用团队如何把年龄段、内容风险和允许动作从模型调用中分离出来。
将代码保存为 teen_safety_gateway.py,然后使用 Python 3.10 或更高版本运行:
from http.server import BaseHTTPRequestHandler, HTTPServer
import json
HIGH_RISK_TERMS = {
"self_harm": ["hurt myself", "kill myself"],
"dangerous_activity": ["dangerous challenge", "make an explosive"],
}
def classify(text: str) -> list[str]:
normalized = text.lower()
return [
category
for category, terms in HIGH_RISK_TERMS.items()
if any(term in normalized for term in terms)
]
def evaluate(age: int, text: str) -> dict:
categories = classify(text)
is_minor = age < 18
if "self_harm" in categories:
return {
"action": "supportive_response",
"allow_generation": False,
"notify_guardian": False,
"message": "Respond supportively and surface immediate help options.",
}
if is_minor and "dangerous_activity" in categories:
return {
"action": "block_and_redirect",
"allow_generation": False,
"notify_guardian": False,
"message": "Decline instructions and suggest a safe alternative.",
}
return {
"action": "allow_with_age_policy" if is_minor else "allow",
"allow_generation": True,
"notify_guardian": False,
"message": "Apply the configured age-appropriate generation policy.",
}
class Handler(BaseHTTPRequestHandler):
def do_POST(self):
if self.path != "/evaluate":
self.send_error(404)
return
length = int(self.headers.get("Content-Length", "0"))
payload = json.loads(self.rfile.read(length))
result = evaluate(int(payload["age"]), str(payload["text"]))
body = json.dumps(result).encode()
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.send_header("Content-Length", str(len(body)))
self.end_headers()
self.wfile.write(body)
if __name__ == "__main__":
print("Safety gateway listening on http://127.0.0.1:8080")
HTTPServer(("127.0.0.1", 8080), Handler).serve_forever()
启动服务并发送测试请求:
python teen_safety_gateway.py
在另一个终端执行:
curl -s http://127.0.0.1:8080/evaluate \
-H 'Content-Type: application/json' \
-d '{"age":15,"text":"Explain how to make an explosive"}'
生产系统不能依赖示例中的关键词匹配。可以将 classify 替换为经过评测的分类模型或安全服务,但应保留明确的策略层,并记录策略版本、风险类别和处理动作。不要默认保存完整对话;日志应遵循数据最小化原则,对敏感字段脱敏,并设置较短的保留周期。
上线前应检查什么
适龄 AI 访问不是在模型外面增加一个“青少年模式”开关。团队需要同时检查默认设置、学习体验、家长权限、危机处理、隐私和误判申诉。
上线前至少应回答这些问题:系统如何处理年龄未知的账户?高风险事件由谁复核?家长能看到哪些信息?青少年能否理解并修改相关设置?策略在不同语言和文化环境中是否经过测试?
专家合作在这里非常重要,因为很多问题无法只靠工程指标判断。安全研究人员、儿童发展专家、教育工作者和心理健康专业人士可以帮助团队定义风险边界;真实用户研究则能检验保护措施是否有效,而不是仅仅增加摩擦。
让青少年远离所有 AI 既不现实,也会让他们失去学习如何负责任使用新工具的机会。更可行的方向,是提供默认开启的适龄保护、真正促进思考的学习体验、有明确边界的家长控制,以及能够持续评测和修正的安全系统。