Moderations
如何使用
rust
use ai_provider_sdk::{ModerationCreateParams, OpenAI};
let client = OpenAI::from_env()?;
let resp = client
.moderations()
.create(ModerationCreateParams::new("hello").model("omni-moderation-latest"))
.await?;
println!("{}", resp.id);已实现方法
create(params)create_with_options(params, options)
入参结构(全量)
ModerationCreateParams
input: ModerationInput(必填)待审核输入。model: Option<String>(可选)审核模型 ID。extra: HashMap<String, Value>(可选)扩展字段。
ModerationInput(联合类型)
Text(String):单条文本。Texts(Vec<String>):批量文本。Items(Vec<ModerationInputItem>):多模态输入项。
ModerationInputItem(tagged enum)
Text { text: String }ImageUrl { image_url: ModerationImageUrl }
ModerationImageUrl
url: String
便捷构造:
ModerationCreateParams::new(input).model(model)ModerationInputItem::text(text)ModerationInputItem::image_url(url)
响应结构(全量)
CreateModerationResponse
id: Stringmodel: Stringresults: Vec<ModerationResult>extra: HashMap<String, Value>
ModerationResult
flagged: boolcategories: ModerationCategoriescategory_scores: ModerationCategoryScorescategory_applied_input_types: Option<ModerationCategoryAppliedInputTypes>extra: HashMap<String, Value>
ModerationCategories(所有字段均为 Option<bool>)
sexualhateharassmentself_harm(wire:self-harm)sexual_minors(wire:sexual/minors)hate_threatening(wire:hate/threatening)violence_graphic(wire:violence/graphic)self_harm_intent(wire:self-harm/intent)self_harm_instructions(wire:self-harm/instructions)harassment_threatening(wire:harassment/threatening)violenceillicitillicit_violent(wire:illicit/violent)extra: HashMap<String, Value>
ModerationCategoryScores(所有字段均为 Option<f64>,字段集合同上)
sexual/hate/harassment/self_harm/sexual_minorshate_threatening/violence_graphic/self_harm_intent/self_harm_instructionsharassment_threatening/violence/illicit/illicit_violentextra: HashMap<String, Value>
ModerationCategoryAppliedInputTypes(所有字段均为 Option<Vec<ModerationAppliedInputType>>,字段集合同上)
sexual/hate/harassment/self_harm/sexual_minorshate_threatening/violence_graphic/self_harm_intent/self_harm_instructionsharassment_threatening/violence/illicit/illicit_violentextra: HashMap<String, Value>
ModerationAppliedInputType 枚举值:
TextImage
兼容性说明
extra为前向兼容容器,不保证稳定结构。- 文档只覆盖当前仓库已实现能力。