gproxy_protocol/protocol/openai/common/enums/
content.rs1use serde::{Deserialize, Serialize};
2
3strict_string_enum!(EmbeddingEncodingFormat {
4 Float => "float",
5 Base64 => "base64",
6});
7
8strict_string_enum!(ReasoningEffort {
9 None => "none",
10 Minimal => "minimal",
11 Low => "low",
12 Medium => "medium",
13 High => "high",
14 XHigh => "xhigh",
15 Max => "max",
16});
17
18strict_string_enum!(ReasoningSummary {
19 Auto => "auto",
20 Concise => "concise",
21 Detailed => "detailed",
22});
23
24extensible_string_enum!(ReasoningMode, ReasoningModeKnown {
25 Standard => "standard",
26 Pro => "pro",
27});
28
29strict_string_enum!(ServiceTier {
30 Auto => "auto",
31 Default => "default",
32 Fast => "fast",
33 Flex => "flex",
34 Scale => "scale",
35 Priority => "priority",
36 OnDemand => "on_demand",
37});
38
39strict_string_enum!(TruncationStrategy {
40 Auto => "auto",
41 Disabled => "disabled",
42});
43
44strict_string_enum!(Verbosity {
45 Low => "low",
46 Medium => "medium",
47 High => "high",
48});
49
50strict_string_enum!(PromptCacheRetention {
51 InMemory => "in_memory",
52 TwentyFourHours => "24h",
53});
54
55strict_string_enum!(PromptCacheMode {
56 Implicit => "implicit",
57 Explicit => "explicit",
58});
59
60strict_string_enum!(PromptCacheBreakpointMode {
61 Explicit => "explicit",
62});
63
64strict_string_enum!(PromptCacheTtl {
65 ThirtyMinutes => "30m",
66});
67
68extensible_string_enum!(ResponsePersonality, ResponsePersonalityKnown {
69 Friendly => "friendly",
70 Pragmatic => "pragmatic",
71});
72
73extensible_string_enum!(ContextManagementType, ContextManagementTypeKnown {
74 Compaction => "compaction",
75});
76
77strict_string_enum!(SearchContextSize {
78 Low => "low",
79 Medium => "medium",
80 High => "high",
81});
82
83#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
84pub enum ApproximateLocationType {
85 #[serde(rename = "approximate")]
86 Approximate,
87}
88
89strict_string_enum!(TextOrAudioModality {
90 Text => "text",
91 Audio => "audio",
92});
93
94strict_string_enum!(InputAudioFormat {
95 Wav => "wav",
96 Mp3 => "mp3",
97});
98
99strict_string_enum!(AudioResponseFormat {
100 Wav => "wav",
101 Aac => "aac",
102 Mp3 => "mp3",
103 Flac => "flac",
104 Opus => "opus",
105 Pcm16 => "pcm16",
106});
107
108extensible_string_enum!(VoiceName, VoiceNameKnown {
109 Alloy => "alloy",
110 Ash => "ash",
111 Ballad => "ballad",
112 Coral => "coral",
113 Echo => "echo",
114 Fable => "fable",
115 Nova => "nova",
116 Onyx => "onyx",
117 Sage => "sage",
118 Shimmer => "shimmer",
119 Verse => "verse",
120 Marin => "marin",
121 Cedar => "cedar",
122});
123
124strict_string_enum!(DetailLevel {
125 Auto => "auto",
126 Low => "low",
127 High => "high",
128 Original => "original",
129});
130
131strict_string_enum!(ChatImageDetailLevel {
132 Auto => "auto",
133 Low => "low",
134 High => "high",
135});
136
137strict_string_enum!(InputFileDetailLevel {
138 Low => "low",
139 High => "high",
140});