pub struct DiffusionOptions {
pub model_id: Option<String>,
pub device: Option<String>,
pub width: Option<u32>,
pub height: Option<u32>,
pub num_inference_steps: Option<u32>,
pub guidance_scale: Option<f32>,
pub scheduler: DiffusionScheduler,
pub cache_dir: Option<PathBuf>,
}Expand description
Options for constructing a DiffusionProvider.
All fields are optional and have sensible defaults. The scheduler defaults
to DiffusionScheduler::EulerA and image dimensions default to 512x512.
§Examples
use blazen_image_diffusion::{DiffusionOptions, DiffusionScheduler};
// Use defaults (512x512, EulerA scheduler, 20 steps)
let opts = DiffusionOptions::default();
assert_eq!(opts.scheduler, DiffusionScheduler::EulerA);
// Override specific fields
let opts = DiffusionOptions {
width: Some(1024),
height: Some(1024),
num_inference_steps: Some(30),
..DiffusionOptions::default()
};Fields§
§model_id: Option<String>HuggingFace model repository ID (e.g. "stabilityai/stable-diffusion-2-1").
When None, a sensible default model will be selected in Phase 5.3.
device: Option<String>Hardware device specifier string (e.g. "cpu", "cuda:0", "metal").
Accepts the same format strings as blazen_llm::Device::parse:
"cpu", "cuda", "cuda:N", "metal".
When None, defaults to "cpu".
width: Option<u32>Output image width in pixels.
When None, defaults to 512.
height: Option<u32>Output image height in pixels.
When None, defaults to 512.
num_inference_steps: Option<u32>Number of denoising steps to run.
More steps generally produce higher quality images at the cost of
longer generation time. When None, defaults to 20.
guidance_scale: Option<f32>Classifier-free guidance scale.
Higher values make the output more closely follow the prompt but may
reduce diversity. Typical values range from 5.0 to 15.0.
When None, defaults to 7.5.
scheduler: DiffusionSchedulerThe noise scheduler to use during the diffusion process.
Defaults to DiffusionScheduler::EulerA.
cache_dir: Option<PathBuf>Path to cache downloaded models.
When None, falls back to blazen-model-cache’s default cache
directory ($BLAZEN_CACHE_DIR or ~/.cache/blazen/models).
Trait Implementations§
Source§impl Clone for DiffusionOptions
impl Clone for DiffusionOptions
Source§fn clone(&self) -> DiffusionOptions
fn clone(&self) -> DiffusionOptions
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more