Skip to content

Commit d5c0c83

Browse files
authored
derive Deserialize anywhere Serialize is derived (64bit#241)
* derive Deserialize anywhere Serialize is derived * fix some clippy lints
1 parent 0885a26 commit d5c0c83

File tree

14 files changed

+37
-44
lines changed

14 files changed

+37
-44
lines changed

async-openai/src/client.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ use crate::{
1515
VectorStores,
1616
};
1717

18-
#[derive(Debug, Clone)]
18+
#[derive(Debug, Clone, Default)]
1919
/// Client is a container for config, backoff and http_client
2020
/// used to make API calls.
2121
pub struct Client<C: Config> {
@@ -27,11 +27,7 @@ pub struct Client<C: Config> {
2727
impl Client<OpenAIConfig> {
2828
/// Client with default [OpenAIConfig]
2929
pub fn new() -> Self {
30-
Self {
31-
http_client: reqwest::Client::new(),
32-
config: OpenAIConfig::default(),
33-
backoff: Default::default(),
34-
}
30+
Self::default()
3531
}
3632
}
3733

async-openai/src/types/audio.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ pub struct AudioInput {
1010
pub source: InputSource,
1111
}
1212

13-
#[derive(Debug, Serialize, Default, Clone, Copy, PartialEq)]
13+
#[derive(Debug, Serialize, Deserialize, Default, Clone, Copy, PartialEq)]
1414
#[serde(rename_all = "snake_case")]
1515
pub enum AudioResponseFormat {
1616
#[default]
@@ -21,7 +21,7 @@ pub enum AudioResponseFormat {
2121
Vtt,
2222
}
2323

24-
#[derive(Debug, Serialize, Default, Clone, Copy, PartialEq)]
24+
#[derive(Debug, Serialize, Deserialize, Default, Clone, Copy, PartialEq)]
2525
#[serde(rename_all = "lowercase")]
2626
pub enum SpeechResponseFormat {
2727
#[default]
@@ -33,7 +33,7 @@ pub enum SpeechResponseFormat {
3333
Wav,
3434
}
3535

36-
#[derive(Debug, Default, Serialize, Clone, PartialEq)]
36+
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
3737
#[serde(rename_all = "lowercase")]
3838
#[non_exhaustive]
3939
pub enum Voice {
@@ -46,7 +46,7 @@ pub enum Voice {
4646
Shimmer,
4747
}
4848

49-
#[derive(Debug, Default, Serialize, Clone, PartialEq)]
49+
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
5050
pub enum SpeechModel {
5151
#[default]
5252
#[serde(rename = "tts-1")]
@@ -57,7 +57,7 @@ pub enum SpeechModel {
5757
Other(String),
5858
}
5959

60-
#[derive(Debug, Default, Serialize, Clone, PartialEq)]
60+
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
6161
#[serde(rename_all = "lowercase")]
6262
pub enum TimestampGranularity {
6363
Word,
@@ -172,7 +172,7 @@ pub struct TranscriptionSegment {
172172
pub no_speech_prob: f32,
173173
}
174174

175-
#[derive(Clone, Default, Debug, Builder, PartialEq, Serialize)]
175+
#[derive(Clone, Default, Debug, Builder, PartialEq, Serialize, Deserialize)]
176176
#[builder(name = "CreateSpeechRequestArgs")]
177177
#[builder(pattern = "mutable")]
178178
#[builder(setter(into, strip_option), default)]

async-openai/src/types/batch.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use serde::{Deserialize, Serialize};
55

66
use crate::error::OpenAIError;
77

8-
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
8+
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq, Deserialize)]
99
#[builder(name = "BatchRequestArgs")]
1010
#[builder(pattern = "mutable")]
1111
#[builder(setter(into, strip_option), default)]
@@ -40,7 +40,7 @@ pub enum BatchEndpoint {
4040
V1Completions,
4141
}
4242

43-
#[derive(Debug, Clone, PartialEq, Serialize, Default)]
43+
#[derive(Debug, Clone, PartialEq, Serialize, Default, Deserialize)]
4444
pub enum BatchCompletionWindow {
4545
#[default]
4646
#[serde(rename = "24h")]

async-openai/src/types/completion.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use crate::error::OpenAIError;
88

99
use super::{ChatCompletionStreamOptions, Choice, CompletionUsage, Prompt, Stop};
1010

11-
#[derive(Clone, Serialize, Default, Debug, Builder, PartialEq)]
11+
#[derive(Clone, Serialize, Deserialize, Default, Debug, Builder, PartialEq)]
1212
#[builder(name = "CreateCompletionRequestArgs")]
1313
#[builder(pattern = "mutable")]
1414
#[builder(setter(into, strip_option), default)]

async-openai/src/types/embedding.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use serde::{Deserialize, Serialize};
44

55
use crate::error::OpenAIError;
66

7-
#[derive(Debug, Serialize, Clone, PartialEq)]
7+
#[derive(Debug, Serialize, Clone, PartialEq, Deserialize)]
88
#[serde(untagged)]
99
pub enum EmbeddingInput {
1010
String(String),
@@ -14,15 +14,15 @@ pub enum EmbeddingInput {
1414
ArrayOfIntegerArray(Vec<Vec<u32>>),
1515
}
1616

17-
#[derive(Debug, Serialize, Default, Clone, PartialEq)]
17+
#[derive(Debug, Serialize, Default, Clone, PartialEq, Deserialize)]
1818
#[serde(rename_all = "lowercase")]
1919
pub enum EncodingFormat {
2020
#[default]
2121
Float,
2222
Base64,
2323
}
2424

25-
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
25+
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq, Deserialize)]
2626
#[builder(name = "CreateEmbeddingRequestArgs")]
2727
#[builder(pattern = "mutable")]
2828
#[builder(setter(into, strip_option), default)]

async-openai/src/types/fine_tuning.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ pub struct Hyperparameters {
1818
pub n_epochs: NEpochs,
1919
}
2020

21-
#[derive(Debug, Serialize, Clone, Default, Builder, PartialEq)]
21+
#[derive(Debug, Serialize, Deserialize, Clone, Default, Builder, PartialEq)]
2222
#[builder(name = "CreateFineTuningJobRequestArgs")]
2323
#[builder(pattern = "mutable")]
2424
#[builder(setter(into, strip_option), default)]

async-openai/src/types/image.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use crate::error::OpenAIError;
55

66
use super::InputSource;
77

8-
#[derive(Default, Debug, Serialize, Clone, Copy, PartialEq)]
8+
#[derive(Default, Debug, Serialize, Deserialize, Clone, Copy, PartialEq)]
99
pub enum ImageSize {
1010
#[serde(rename = "256x256")]
1111
S256x256,
@@ -20,7 +20,7 @@ pub enum ImageSize {
2020
S1024x1792,
2121
}
2222

23-
#[derive(Default, Debug, Serialize, Clone, Copy, PartialEq)]
23+
#[derive(Default, Debug, Serialize, Deserialize, Clone, Copy, PartialEq)]
2424
pub enum DallE2ImageSize {
2525
#[serde(rename = "256x256")]
2626
S256x256,
@@ -31,7 +31,7 @@ pub enum DallE2ImageSize {
3131
S1024x1024,
3232
}
3333

34-
#[derive(Debug, Serialize, Default, Clone, Copy, PartialEq)]
34+
#[derive(Debug, Serialize, Deserialize, Default, Clone, Copy, PartialEq)]
3535
#[serde(rename_all = "lowercase")]
3636
pub enum ResponseFormat {
3737
#[default]
@@ -40,7 +40,7 @@ pub enum ResponseFormat {
4040
B64Json,
4141
}
4242

43-
#[derive(Debug, Serialize, Default, Clone, PartialEq)]
43+
#[derive(Debug, Serialize, Deserialize, Default, Clone, PartialEq)]
4444
pub enum ImageModel {
4545
#[default]
4646
#[serde(rename = "dall-e-2")]
@@ -51,23 +51,23 @@ pub enum ImageModel {
5151
Other(String),
5252
}
5353

54-
#[derive(Debug, Serialize, Default, Clone, PartialEq)]
54+
#[derive(Debug, Serialize, Deserialize, Default, Clone, PartialEq)]
5555
#[serde(rename_all = "lowercase")]
5656
pub enum ImageQuality {
5757
#[default]
5858
Standard,
5959
HD,
6060
}
6161

62-
#[derive(Debug, Serialize, Default, Clone, PartialEq)]
62+
#[derive(Debug, Serialize, Deserialize, Default, Clone, PartialEq)]
6363
#[serde(rename_all = "lowercase")]
6464
pub enum ImageStyle {
6565
#[default]
6666
Vivid,
6767
Natural,
6868
}
6969

70-
#[derive(Debug, Clone, Serialize, Default, Builder, PartialEq)]
70+
#[derive(Debug, Clone, Serialize, Deserialize, Default, Builder, PartialEq)]
7171
#[builder(name = "CreateImageRequestArgs")]
7272
#[builder(pattern = "mutable")]
7373
#[builder(setter(into, strip_option), default)]

async-openai/src/types/moderation.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ use serde::{Deserialize, Serialize};
33

44
use crate::error::OpenAIError;
55

6-
#[derive(Debug, Serialize, Clone, PartialEq)]
6+
#[derive(Debug, Serialize, Clone, PartialEq, Deserialize)]
77
#[serde(untagged)]
88
pub enum ModerationInput {
99
String(String),
1010
StringArray(Vec<String>),
1111
}
1212

13-
#[derive(Debug, Serialize, Default, Clone, Copy, PartialEq)]
13+
#[derive(Debug, Serialize, Default, Clone, Copy, PartialEq, Deserialize)]
1414
pub enum TextModerationModel {
1515
#[default]
1616
#[serde(rename = "text-moderation-latest")]
@@ -19,7 +19,7 @@ pub enum TextModerationModel {
1919
Stable,
2020
}
2121

22-
#[derive(Debug, Default, Clone, Serialize, Builder, PartialEq)]
22+
#[derive(Debug, Default, Clone, Serialize, Builder, PartialEq, Deserialize)]
2323
#[builder(name = "CreateModerationRequestArgs")]
2424
#[builder(pattern = "mutable")]
2525
#[builder(setter(into, strip_option), default)]

async-openai/src/types/vector_store.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use crate::error::OpenAIError;
77

88
use super::StaticChunkingStrategy;
99

10-
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
10+
#[derive(Debug, Serialize, Deserialize, Default, Clone, Builder, PartialEq)]
1111
#[builder(name = "CreateVectorStoreRequestArgs")]
1212
#[builder(pattern = "mutable")]
1313
#[builder(setter(into, strip_option), default)]
@@ -117,7 +117,7 @@ pub struct DeleteVectorStoreResponse {
117117
pub deleted: bool,
118118
}
119119

120-
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
120+
#[derive(Debug, Serialize, Deserialize, Default, Clone, Builder, PartialEq)]
121121
#[builder(name = "UpdateVectorStoreRequestArgs")]
122122
#[builder(pattern = "mutable")]
123123
#[builder(setter(into, strip_option), default)]
@@ -197,7 +197,7 @@ pub enum VectorStoreFileObjectChunkingStrategy {
197197
},
198198
}
199199

200-
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
200+
#[derive(Debug, Serialize, Deserialize, Default, Clone, Builder, PartialEq)]
201201
#[builder(name = "CreateVectorStoreFileRequestArgs")]
202202
#[builder(pattern = "mutable")]
203203
#[builder(setter(into, strip_option), default)]
@@ -216,7 +216,7 @@ pub struct DeleteVectorStoreFileResponse {
216216
pub deleted: bool,
217217
}
218218

219-
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
219+
#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq, Deserialize)]
220220
#[builder(name = "CreateVectorStoreFileBatchRequestArgs")]
221221
#[builder(pattern = "mutable")]
222222
#[builder(setter(into, strip_option), default)]

async-openai/src/vector_store_files.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,7 @@ impl<'c, C: Config> VectorStoreFiles<'c, C> {
7878

7979
#[cfg(test)]
8080
mod tests {
81-
use crate::types::{
82-
CreateFileRequest, CreateVectorStoreFileRequest, CreateVectorStoreRequest, FileInput,
83-
FilePurpose,
84-
};
81+
use crate::types::{CreateFileRequest, CreateVectorStoreRequest, FileInput, FilePurpose};
8582
use crate::Client;
8683

8784
#[tokio::test]

0 commit comments

Comments
 (0)