AI 产品
面向儿童和青少年的 AI 产品须遵守在内容、数据和 AI 行为方面不断演进的全球法规,包括美国的 COPPA、欧盟的 GDPR-K 和英国的 AADC。这些法规决定了在不同年龄下可使用哪些 AI 能力。k-ID 的 CDK 将用户的年龄和司法管辖区解析为一组 AI 专用权限,您的产品根据这些权限为每位用户启用或禁用相应能力。
使用 k-ID Dev Explorer,一个开源开发者沙箱,来测试 AI 权限流程并在事件日志中查看所有流量。您也可以将其作为自己 AI 产品实现的起点。
在 k-ID 模型中,什么是 AI 产品?
AI 产品是指用户与生成式 AI 能力交互的任何应用程序,例如文本聊天、语音、图像或视频生成,或持久性 AI 角色。k-ID 将每项 AI 能力视为独立的权限。每项权限可根据用户的年龄、司法管辖区和父母设置启用、禁用或禁止。
CDK 流程与任何其他 k-ID 产品相同:年龄门控 → 用户为未成年人时进行 VPC → 会话 → 强制执行权限 → 通过 Webhook 响应变更。AI 特有的部分是会话中返回的权限集合,将在步骤 1 中列出。
请参阅 VPC 快速入门 和 管理会话和权限快速入门。
先决条件
在开始之前,您需要:
- k-ID 产品:在 k-ID Compliance Studio 中创建并配置您的产品
- API 密钥:从 Compliance Studio 中产品的开发者设置页面生成 API 密钥
- Webhook 端点(可选但推荐):设置一个安全的 HTTPS 端点以接收会话和权限事件。更多详情,请参阅 Webhooks。
- 在 Compliance Studio 中启用 AI 权限:启用与产品能力匹配的 AI 权限(参见步骤 1)。
步骤 1:配置 AI 权限
在 Compliance Studio 中打开您的产品,进入 Configuration → Permissions 标签页。AI 类别包含七个权限,对应 AI 产品的常见能力:
| 权限 | 显示名称 | 描述 | 何时启用 |
|---|---|---|---|
ai-chat | AI 聊天 | 您的孩子可以自由地与使用生成式 AI 的功能进行交流,例如用于互动性或支持功能。 | 您的产品提供与 AI 的任何自由形式对话,无论输入方式为何。 |
ai-companion-chatbot | 陪伴聊天机器人 | 您的孩子可以与通过个性化内容模仿人类互动的 AI 角色或陪伴体进行交流。 | 您的 AI 被定位为持久的陪伴或角色,可在多个会话之间维持关系。 |
ai-memory | AI 记忆 | 您孩子的偏好和与 AI 的互动会被保留下来,并随时间用于创建其体验的个人画像。 | 您的 AI 在多个会话之间保留用户偏好或对话历史,以个性化未来的互动。 |
ai-voice-mode | AI 语音模式 | 您的孩子可以在实时语音对话中与 AI 交谈。AI 会处理孩子的语音。 | 您的 AI 处理用户的语音(语音转文本)或生成语音回复(文本转语音)。 |
ai-media-generation | AI 媒体生成 | 您的孩子可以与一种 AI 互动,该 AI 可能根据孩子的提示生成图像和/或视频。 | 您的 AI 根据用户输入生成图像、视频或音频。 |
ai-media-upload | AI 媒体上传 | 您的孩子可以提供图像、视频或其他媒体作为其与 AI 互动的一部分。 | 用户可以上传图像、视频或音频以供 AI 处理。 |
ai-model-training | AI 模型训练 | 您孩子的信息和输入将被用于训练 AI 模型。 | 用户输入可能用于训练或微调 AI 模型。 |
启用反映您产品能力的权限,其余保留为关闭状态。已为所有支持的司法管辖区设置司法管辖区特定的默认值,包括针对美国(COPPA)、英国(AADC)、澳大利亚(在线安全法)、欧盟(GDPR 第 22 条)和巴西的定制规则。
ai-model-training 与 COPPA根据 2026 年 COPPA 修正案,将儿童个人信息披露用于训练或开发 AI 模型被视为非必要(non-integral),需要单独的父母同意。如果您的产品使用用户输入进行训练,请确保已启用 ai-model-training,并查阅 2026 年 COPPA 修正案指南。
要查看所有类别中权限的完整列表,请参阅可用权限。
步骤 2:收集父母同意并创建会话
AI 产品遵循与任何其他 k-ID 产品相同的年龄门控和可验证父母同意(VPC)流程。小部件和 API 会处理司法管辖区相关的逻辑,因此您的产品只需启动流程并接收返回的会话即可。
对于端到端集成,请遵循以下任一方式:
- VPC 快速入门:最快路径。使用端到端小部件在一个 iframe 中处理年龄收集、VPC、数据通知和权限。
- 自定义年龄门控快速入门:构建您自己的年龄门控 UI,同时让 k-ID 处理合规逻辑。
父母完成同意流程后,您的产品会收到一个 sessionId。使用 /session/get 获取会话以读取您在步骤 1 中配置的 AI 权限:
GET /api/v1/session/get?sessionId=0ad1641f-c154-4c2a-8bb2-74dbd0de7723
Response:
{
"session": {
"id": "0ad1641f-c154-4c2a-8bb2-74dbd0de7723",
"permissions": [
{ "name": "ai-chat", "enabled": true, "managedBy": "GUARDIAN" },
{ "name": "ai-companion-chatbot", "enabled": false, "managedBy": "GUARDIAN" },
{ "name": "ai-memory", "enabled": true, "managedBy": "GUARDIAN" },
{ "name": "ai-voice-mode", "enabled": false, "managedBy": "GUARDIAN" },
{ "name": "ai-media-generation", "enabled": false, "managedBy": "GUARDIAN" },
{ "name": "ai-media-upload", "enabled": false, "managedBy": "GUARDIAN" },
{ "name": "ai-model-training", "enabled": false, "managedBy": "PROHIBITED" }
]
}
}
managedBy 字段告诉您每个权限由谁控制:GUARDIAN、PLAYER 或 PROHIBITED。完整语义请参阅权限。
步骤 3:根据会话控制 AI 功能
在提供每个 AI 功能之前,请检查会话上的相关权限。其模式与任何其他由 k-ID 控制的功能相同:
- 权限:
enabled和managedBy的工作方式,包括GUARDIAN、PLAYER和PROHIBITED的语义。 - 管理会话和权限快速入门:获取会话、随时间比较会话、请求升级,以及在 UI 中处理被禁用的功能。
从会话构建 AI 请求
从会话读取 permissions,使用一个小型辅助函数对每项 AI 能力进行控制,并将生成的配置对象传递给 AI 提供方:
function allowed(session, name) {
const permission = session.permissions.find((p) => p.name === name);
return permission?.enabled === true;
}
function buildAIConfig(session) {
return {
chat: allowed(session, "ai-chat"),
companion: allowed(session, "ai-companion-chatbot"),
memory: allowed(session, "ai-memory"),
voice: allowed(session, "ai-voice-mode"),
mediaGeneration: allowed(session, "ai-media-generation"),
mediaUpload: allowed(session, "ai-media-upload"),
trainOnInputs: allowed(session, "ai-model-training"),
};
}
const aiConfig = buildAIConfig(session);
const response = await aiProvider.respond({ prompt, ...aiConfig });
接入时请记住四条规则:
- 先读取,再执行。 在会话开始时调用
/session/get。 - 故障即关闭。 权限缺失或会话不可达 = 功能关闭。
- 优雅降级。 功能关闭 ≠ 死路一条。展示备用方案。
- 未成年人默认关闭。 由父母启用。
步骤 4:响应权限变更
父母可以随时通过 Family Connect 调整 AI 权限。例如,父母可能在阅读通知后禁用 ai-companion-chatbot,或在孩子达到合适年龄后启用 ai-voice-mode。您的产品需要捕获这些变更并将其反映给用户。
检测和处理模式与任何其他权限变更相同:
- 订阅
Session.ChangePermissionsWebhook,或在每次启动时将缓存的会话与当前会话进行比较。 - 当权限切换时,立即更新您的产品状态,以避免用户尝试使用已被关闭的功能。
- 向用户清楚地说明发生了什么变化以及原因。
有关完整实现,包括 Webhook 处理、会话比较、对成长后的用户的 managedBy: PLAYER 处理,以及向用户传达变更等,请遵循管理会话和权限快速入门。
Webhook 配置
对于 AI 产品,请确保您的 Webhook 端点配置为接收:
Session.ChangePermissions:当父母为用户启用或禁用某项 AI 权限时发送通知。
此事件对于在不等待下次会话获取的情况下,使 AI 功能与父母的决定保持同步至关重要。
接下来
现在您的 AI 产品已与 k-ID 集成,可以浏览以下资源进一步了解: