async_openai/types/
safety.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
4#[serde(rename_all = "snake_case")]
5pub enum SafetyAlertErrorType {
6 PotentiallyUnintendedDataTransfer,
7 PotentiallyUnintendedDataAccess,
8 PotentiallyUnintendedDestructiveActivity,
9 Other,
10}
11
12#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
13pub struct SafetyAlertResource {
14 pub id: String,
15 pub object: String,
16 pub created_at: u64,
17 pub request_id: String,
18 pub response_id: String,
19 pub model: String,
20 pub request_paused: bool,
23 pub error_type: SafetyAlertErrorType,
24 #[serde(skip_serializing_if = "Option::is_none")]
25 pub reason: Option<String>,
26 #[serde(skip_serializing_if = "Option::is_none")]
28 pub detailed_explanation: Option<String>,
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
32pub struct SafetyCaseResource {
33 pub id: String,
34 pub object: String,
35 pub created_at: u64,
36 pub entity_identifier: String,
37 #[serde(skip_serializing_if = "Option::is_none")]
38 pub reason: Option<String>,
39 pub notice: SafetyCaseNotice,
40}
41
42#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
43pub struct SafetyCaseNotice {
44 pub r#type: SafetyCaseNoticeType,
45}
46
47#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
48#[serde(rename_all = "snake_case")]
49pub enum SafetyCaseNoticeType {
50 Warning,
51 Deactivation,
52}