use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
pub struct Response {
pub id: String,
pub model: String,
pub results: Vec<Result>,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Result {
pub flagged: bool,
pub categories: Categories,
pub category_scores: Scores,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Categories {
pub sexual: bool,
pub hate: bool,
pub harassment: bool,
#[serde(rename = "self-harm")]
pub self_harm: bool,
#[serde(rename = "sexual/minors")]
pub sexual_minors: bool,
#[serde(rename = "hate/threatening")]
pub hate_threatening: bool,
#[serde(rename = "violence/graphic")]
pub violence_graphic: bool,
#[serde(rename = "self-harm/intent")]
pub self_harm_intent: bool,
#[serde(rename = "self-harm/instructions")]
pub self_harm_instructions: bool,
#[serde(rename = "harassment/threatening")]
pub harassment_threatening: bool,
pub violence: bool,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Scores {
pub sexual: f64,
pub hate: f64,
pub harassment: f64,
#[serde(rename = "self-harm")]
pub self_harm: f64,
#[serde(rename = "sexual/minors")]
pub sexual_minors: f64,
#[serde(rename = "hate/threatening")]
pub hate_threatening: f64,
#[serde(rename = "violence/graphic")]
pub violence_graphic: f64,
#[serde(rename = "self-harm/intent")]
pub self_harm_intent: f64,
#[serde(rename = "self-harm/instructions")]
pub self_harm_instructions: f64,
#[serde(rename = "harassment/threatening")]
pub harassment_threatening: f64,
pub violence: f64,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Moderation {
pub input: String,
}