Struct CreateImageRequest

Source
pub struct CreateImageRequest {
    pub prompt: String,
    pub model: Option<String>,
    pub n: Option<u64>,
    pub quality: Option<CreateImageRequestQuality>,
    pub response_format: Option<CreateImageRequestResponseFormat>,
    pub output_format: Option<CreateImageRequestOutputFormat>,
    pub output_compression: Option<u64>,
    pub size: Option<CreateImageRequestSize>,
    pub moderation: Option<CreateImageRequestModeration>,
    pub background: Option<CreateImageRequestBackground>,
    pub style: Option<CreateImageRequestStyle>,
    pub user: Option<String>,
}

Fields§

§prompt: String

A text description of the desired image(s). The maximum length is 32000 characters for gpt-image-1, 1000 characters for dall-e-2 and 4000 characters for dall-e-3.

§model: Option<String>

The model to use for image generation. One of dall-e-2, dall-e-3, or gpt-image-1. Defaults to dall-e-2 unless a parameter specific to gpt-image-1 is used.

§n: Option<u64>

The number of images to generate. Must be between 1 and 10. For dall-e-3, only n=1 is supported.

§quality: Option<CreateImageRequestQuality>

The quality of the image that will be generated.

  • auto (default value) will automatically select the best quality for the given model.
  • high, medium and low are supported for gpt-image-1.
  • hd and standard are supported for dall-e-3.
  • standard is the only option for dall-e-2.
§response_format: Option<CreateImageRequestResponseFormat>

The format in which generated images with dall-e-2 and dall-e-3 are returned. Must be one of url or b64_json. URLs are only valid for 60 minutes after the image has been generated. This parameter isn’t supported for gpt-image-1 which will always return base64-encoded images.

§output_format: Option<CreateImageRequestOutputFormat>

The format in which the generated images are returned. This parameter is only supported for gpt-image-1. Must be one of png, jpeg, or webp.

§output_compression: Option<u64>

The compression level (0-100%) for the generated images. This parameter is only supported for gpt-image-1 with the webp or jpeg output formats, and defaults to 100.

§size: Option<CreateImageRequestSize>

The size of the generated images. Must be one of 1024x1024, 1536x1024 (landscape), 1024x1536 (portrait), or auto (default value) for gpt-image-1, one of 256x256, 512x512, or 1024x1024 for dall-e-2, and one of 1024x1024, 1792x1024, or 1024x1792 for dall-e-3.

§moderation: Option<CreateImageRequestModeration>

Control the content-moderation level for images generated by gpt-image-1. Must be either low for less restrictive filtering or auto (default value).

§background: Option<CreateImageRequestBackground>

Allows to set transparency for the background of the generated image(s). This parameter is only supported for gpt-image-1. Must be one of transparent, opaque or auto (default value). When auto is used, the model will automatically determine the best background for the image.

If transparent, the output format needs to support transparency, so it should be set to either png (default value) or webp.

§style: Option<CreateImageRequestStyle>

The style of the generated images. This parameter is only supported for dall-e-3. Must be one of vivid or natural. Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images.

§user: Option<String>

A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. Learn more.

Implementations§

Source§

impl CreateImageRequest

Source

pub fn builder() -> CreateImageRequestBuilder<((), (), (), (), (), (), (), (), (), (), (), ())>

Create a builder for building CreateImageRequest. On the builder, call .prompt(...), .model(...)(optional), .n(...)(optional), .quality(...)(optional), .response_format(...)(optional), .output_format(...)(optional), .output_compression(...)(optional), .size(...)(optional), .moderation(...)(optional), .background(...)(optional), .style(...)(optional), .user(...)(optional) to set the values of the fields. Finally, call .build() to create the instance of CreateImageRequest.

Trait Implementations§

Source§

impl Clone for CreateImageRequest

Source§

fn clone(&self) -> CreateImageRequest

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CreateImageRequest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for CreateImageRequest

Source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for CreateImageRequest

Source§

fn eq(&self, other: &CreateImageRequest) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for CreateImageRequest

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for CreateImageRequest

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,