Windows AI API,例如 Phi 矽 和 圖像處理,會使用內容仲裁來分類和篩選使用者提示中的潛在有害內容,或在產生模型傳回的回應中篩選出潛在的有害內容。 根據預設,這些 API 會篩選出分類為潛在有害的內容,但可以設定敏感度層級。
如需 API 詳細數據,請參閱 內容安全性仲裁的 API 參考。
先決條件
完成 開始使用 Windows AI API 建置應用程式中的步驟。
調整內容安全性管理
您可以調整生成模型的輸入提示與 AI 生成輸出的內容審核。 Windows AI API 內容審核的設計與實作方式與 Azure AI 內容安全所提供的類似。
傷害類別
Windows AI API 所支援的傷害類別,與 Azure AI 內容安全性所定義的危害類別一致。 傷害類別包括 仇恨和公平、 性、 暴力和 自我傷害(可以將多個類別指派給相同的內容)。
| 類別 | 描述 | API 名稱 |
|---|---|---|
| 恨 | 內容攻擊或使用歧視性語言,針對個人或身分識別群組的特定屬性。 | HateContentSeverity |
| 性的 | 與解剖器官和生殖器、浪漫關係和性行為有關的內容,以色情或柔情方式描述的行為,包括那些被描繪成攻擊或強迫性暴力行為,違背受害者意願。 | SexualContentSeverity |
| 暴力 | 與意圖傷害、傷害、損害或殺死某人或某物的實體動作相關的內容;描述武器、槍支和相關實體。 | ViolentContentSeverity |
| 自我傷害 | 與故意傷害、損害身體、自殘或自殺有關的身體動作相關內容。 | SelfHarmContentSeverity |
嚴重性層級
預設情況下,所有對生成式 Windows AI API 的呼叫都會使用內容審核,但嚴重程度等級可以調整。
high:無法提供。 分類為嚴重性層級 3+ 的內容(潛在危害高風險)目前無法由產生 AI 模型傳回。medium:預設嚴重性層級設定為medium。 系統會傳回分類為嚴重性層級 0 - 3 的內容。low:進一步降低傳回潛在有害內容的風險。 只會傳回分類為嚴重性層級 0 - 1 的內容。
若要深入瞭解嚴重性層級,請參閱 Azure AI 內容安全性危害類別。
文字內容審核程式碼範例
要設定文字內容審核嚴重度過濾器,您必須將 ContentFilterOptions 結構作為參數傳遞給用於回應產生的 API(例如 Phi Silica API)。
下列程式碼範例示範如何將文字內容審核的嚴重性篩選新增至 Microsoft Windows Generative AI LanguageModel:
LanguageModelOptions options = new LanguageModelOptions();
ContentFilterOptions filterOptions = new ContentFilterOptions();
// prompt
filterOptions.PromptMaxAllowedSeverityLevel.Violent = SeverityLevel.Minimum;
filterOptions.PromptMaxAllowedSeverityLevel.Hate = SeverityLevel.Low;
filterOptions.PromptMaxAllowedSeverityLevel.SelfHarm = SeverityLevel.Medium;
filterOptions.PromptMaxAllowedSeverityLevel.Sexual = SeverityLevel.High;
//response
filterOptions.ResponseMaxAllowedSeverityLevel.Violent = SeverityLevel.Medium;
//image
filterOptions.ImageMaxAllowedSeverityLevel.AdultContentLevel = SeverityLevel.Medium;
filterOptions.ImageMaxAllowedSeverityLevel.RacyContentLevel = SeverityLevel.Medium;
options.ContentFilterOptions = filterOptions;
var result = await languageModel.GenerateResponseAsync(prompt, options);
Console.WriteLine(result.Text);