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)]
84#[non_exhaustive]
85pub enum ApproximateLocationType {
86 #[serde(rename = "approximate")]
87 Approximate,
88}
89
90strict_string_enum!(TextOrAudioModality {
91 Text => "text",
92 Audio => "audio",
93});
94
95strict_string_enum!(InputAudioFormat {
96 Wav => "wav",
97 Mp3 => "mp3",
98});
99
100strict_string_enum!(AudioResponseFormat {
101 Wav => "wav",
102 Aac => "aac",
103 Mp3 => "mp3",
104 Flac => "flac",
105 Opus => "opus",
106 Pcm16 => "pcm16",
107});
108
109extensible_string_enum!(VoiceName, VoiceNameKnown {
110 Alloy => "alloy",
111 Ash => "ash",
112 Ballad => "ballad",
113 Coral => "coral",
114 Echo => "echo",
115 Fable => "fable",
116 Nova => "nova",
117 Onyx => "onyx",
118 Sage => "sage",
119 Shimmer => "shimmer",
120 Verse => "verse",
121 Marin => "marin",
122 Cedar => "cedar",
123});
124
125strict_string_enum!(DetailLevel {
126 Auto => "auto",
127 Low => "low",
128 High => "high",
129 Original => "original",
130});
131
132strict_string_enum!(ChatImageDetailLevel {
133 Auto => "auto",
134 Low => "low",
135 High => "high",
136});
137
138strict_string_enum!(InputFileDetailLevel {
139 Low => "low",
140 High => "high",
141});