使用 Windows Copilot 运行时进行内容安全管理
重要
Windows 应用 SDK 的最新试验通道版本中提供。
Windows 应用 SDK 试验通道包括开发早期阶段的 API 和功能。 试验通道中的所有 API 都可能经过大量修订和中断性变更,并且随时可从后续版本中删除。 实验性功能不适合在生产环境中使用,使用这些功能的应用程序不能发布到微软商店。
Windows Copilot 运行时 API(如 Phi Silica API 或图像处理 API),实现文本内容审核,以分类和筛选潜在有害内容,使其不会被提示到这些生成模型或由这些生成模型返回。 默认情况下,API 将筛选出分类为潜在有害的内容,但开发人员可以配置不同的敏感度级别。
先决条件
- Windows Copilot 运行时 API 需要包含 Qualcomm 芯片的 CoPilot+ 电脑。
- Windows 11 Insider Preview 内部版本 26120.3073(开发和 Beta 频道)或更高版本必须安装在设备上。
文本内容管理
可以在输入提示上调整内容审查,以适应生成模型和 AI 生成的输出。 Windows Copilot 运行时 API 内容审查的设计和实施方式与 Azure AI 内容安全提供的 API 类似。
伤害类别
伤害类别与 Azure AI 内容安全中使用的定义保持一致,可在 Azure AI 内容安全指南中找到。 伤害类别包括:仇恨和公平、性内容、暴力或自残,并且可以在同一内容上包括多个标签。
这四个类别对潜在有害内容进行分类使敏感度筛选器能够进行调整。
类别 | 描述 | API 名称 |
---|---|---|
仇恨 | 仇恨和公平性伤害是指任何基于个人或身份群体的某些区分属性,攻击或使用歧视性语言的内容。 | HateContentSeverity |
性 | 性表示与解剖器官和生殖器、浪漫关系和性行为相关的语言,描述以色情或深情术语描绘的行为,包括被描述为攻击或违背自己意愿的强迫性暴力行为的情况。 | SexualContentSeverity |
暴力 | 暴力描述与旨在伤害、伤害、损害或杀害某人或某种行为的物理行为相关的语言:描述武器、枪支和相关实体。 | ViolentContentSeverity |
自我伤害 | 自残指的是与故意伤害、损伤、损害某人身体或自杀的身体行为相关的语言。 | SelfHarmContentSeverity |
严重性级别
默认情况下,对 Windows Copilot 运行时生成 API 的所有调用都使用内容审查,但可以调整严重性级别。
high
:不可用。 分类为严重性级别 3+ 的内容(潜在危害高风险)当前被阻止由生成 AI 模型返回。medium
:默认严重性级别设置为medium
。 将返回严重性级别为 0-3 的内容。low
:进一步降低返回潜在有害内容的风险。 仅归类为影响等级 0 至 1 的内容会被返回。
若要详细了解严重性级别,请参阅 Azure AI 内容安全危害类别。
文本内容审查代码示例
若要配置嵌入在 Windows Copilot 运行时中的文本内容审查严重性筛选器,需要将 ContentFilterOptions
结构作为参数传递给用于响应生成的 API,例如 Phi 硅 API。
以下代码示例演示如何将文本内容审查严重性筛选器添加到 Microsoft Windows 生成 AI LanguageModel
:
var languageModelOptions = new LanguageModelOptions {
Temp = 0.9f,
Top_p = 0.9f,
Top_k = 40
};
var promptMinSeverityLevelToBlock = new TextContentFilterSeverity {
HateContentSeverity = SeverityLevel.Low,
SexualContentSeverity = SeverityLevel.Low,
ViolentContentSeverity = SeverityLevel.Medium,
SelfHarmContentSeverity = SeverityLevel.Low
};
var responseMinSeverityLevelToBlock = new TextContentFilterSeverity {
HateContentSeverity = SeverityLevel.Low,
SexualContentSeverity = SeverityLevel.Low,
ViolentContentSeverity = SeverityLevel.Low,
SelfHarmContentSeverity = SeverityLevel.Medium
};
var contentFilterOptions = new ContentFilterOptions {
PromptMinSeverityLevelToBlock = promptMinSeverityLevelToBlock,
ResponseMinSeverityLevelToBlock = responseMinSeverityLevelToBlock
};
IProgress<string> progress;
var languageModelResponseWithProgress = model.GenerateResponseWithProgressAsync(languageModelOptions, prompt, contentFilterOptions);
languageModelRepsonseWithProgress.Progress = (_, generationProgress) =>
{
progress.Report(generationProgress);
};
string response = (await languageModelResponseWithProgress).Response;
相关内容
- 在 Windows 上开发负责任的生成式 AI 应用程序和功能
- Phi 硅 API
- AI 支持的成像 API
- Windows 应用 SDK
- Windows 应用 SDK 最新版本发行说明