pub struct AudioTranscriptionRequest {
pub model: String,
pub file: Option<String>,
pub bytes: Option<Vec<u8>>,
pub prompt: Option<String>,
pub response_format: Option<String>,
pub temperature: Option<f32>,
pub language: Option<String>,
}
Fields§
§model: String
§file: Option<String>
§bytes: Option<Vec<u8>>
§prompt: Option<String>
§response_format: Option<String>
§temperature: Option<f32>
§language: Option<String>
Implementations§
Source§impl AudioTranscriptionRequest
impl AudioTranscriptionRequest
Sourcepub fn new(file: String, model: String) -> Self
pub fn new(file: String, model: String) -> Self
Examples found in repository?
examples/audio_transcriptions.rs (line 15)
8async fn main() -> Result<(), Box<dyn std::error::Error>> {
9 let api_key = env::var("OPENAI_API_KEY").unwrap().to_string();
10 let mut client = OpenAIClient::builder().with_api_key(api_key).build()?;
11
12 let file_path = "examples/data/problem.mp3";
13
14 // Test with file
15 let req = AudioTranscriptionRequest::new(file_path.to_string(), WHISPER_1.to_string());
16
17 let req_json = req.clone().response_format("json".to_string());
18
19 let result = client.audio_transcription(req_json).await?;
20 println!("{:?}", result);
21
22 let req_raw = req.clone().response_format("text".to_string());
23
24 let result = client.audio_transcription_raw(req_raw).await?;
25 println!("{:?}", result);
26
27 // Test with bytes
28 let mut file = File::open(file_path)?;
29 let mut buffer = Vec::new();
30 file.read_to_end(&mut buffer)?;
31
32 let req = AudioTranscriptionRequest::new_bytes(buffer, WHISPER_1.to_string());
33
34 let req_json = req.clone().response_format("json".to_string());
35
36 let result = client.audio_transcription(req_json).await?;
37 println!("{:?}", result);
38
39 Ok(())
40}
Sourcepub fn new_bytes(bytes: Vec<u8>, model: String) -> Self
pub fn new_bytes(bytes: Vec<u8>, model: String) -> Self
Examples found in repository?
examples/audio_transcriptions.rs (line 32)
8async fn main() -> Result<(), Box<dyn std::error::Error>> {
9 let api_key = env::var("OPENAI_API_KEY").unwrap().to_string();
10 let mut client = OpenAIClient::builder().with_api_key(api_key).build()?;
11
12 let file_path = "examples/data/problem.mp3";
13
14 // Test with file
15 let req = AudioTranscriptionRequest::new(file_path.to_string(), WHISPER_1.to_string());
16
17 let req_json = req.clone().response_format("json".to_string());
18
19 let result = client.audio_transcription(req_json).await?;
20 println!("{:?}", result);
21
22 let req_raw = req.clone().response_format("text".to_string());
23
24 let result = client.audio_transcription_raw(req_raw).await?;
25 println!("{:?}", result);
26
27 // Test with bytes
28 let mut file = File::open(file_path)?;
29 let mut buffer = Vec::new();
30 file.read_to_end(&mut buffer)?;
31
32 let req = AudioTranscriptionRequest::new_bytes(buffer, WHISPER_1.to_string());
33
34 let req_json = req.clone().response_format("json".to_string());
35
36 let result = client.audio_transcription(req_json).await?;
37 println!("{:?}", result);
38
39 Ok(())
40}
Source§impl AudioTranscriptionRequest
impl AudioTranscriptionRequest
pub fn prompt(self, prompt: String) -> Self
Sourcepub fn response_format(self, response_format: String) -> Self
pub fn response_format(self, response_format: String) -> Self
Examples found in repository?
examples/audio_transcriptions.rs (line 17)
8async fn main() -> Result<(), Box<dyn std::error::Error>> {
9 let api_key = env::var("OPENAI_API_KEY").unwrap().to_string();
10 let mut client = OpenAIClient::builder().with_api_key(api_key).build()?;
11
12 let file_path = "examples/data/problem.mp3";
13
14 // Test with file
15 let req = AudioTranscriptionRequest::new(file_path.to_string(), WHISPER_1.to_string());
16
17 let req_json = req.clone().response_format("json".to_string());
18
19 let result = client.audio_transcription(req_json).await?;
20 println!("{:?}", result);
21
22 let req_raw = req.clone().response_format("text".to_string());
23
24 let result = client.audio_transcription_raw(req_raw).await?;
25 println!("{:?}", result);
26
27 // Test with bytes
28 let mut file = File::open(file_path)?;
29 let mut buffer = Vec::new();
30 file.read_to_end(&mut buffer)?;
31
32 let req = AudioTranscriptionRequest::new_bytes(buffer, WHISPER_1.to_string());
33
34 let req_json = req.clone().response_format("json".to_string());
35
36 let result = client.audio_transcription(req_json).await?;
37 println!("{:?}", result);
38
39 Ok(())
40}
pub fn temperature(self, temperature: f32) -> Self
pub fn language(self, language: String) -> Self
Trait Implementations§
Source§impl Clone for AudioTranscriptionRequest
impl Clone for AudioTranscriptionRequest
Source§fn clone(&self) -> AudioTranscriptionRequest
fn clone(&self) -> AudioTranscriptionRequest
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for AudioTranscriptionRequest
impl Debug for AudioTranscriptionRequest
Auto Trait Implementations§
impl Freeze for AudioTranscriptionRequest
impl RefUnwindSafe for AudioTranscriptionRequest
impl Send for AudioTranscriptionRequest
impl Sync for AudioTranscriptionRequest
impl Unpin for AudioTranscriptionRequest
impl UnwindSafe for AudioTranscriptionRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more