Browse ModelsWavespeed AIHidream O1 Image Dev Edit

Hidream O1 Image Dev Edit

Hidream O1 Image Dev Edit

Playground

Try it on WavespeedAI!

HiDream-O1-Image Dev (Edit) is the distilled, fast-inference variant of HiDream-O1-Image in edit mode — accepts a source image plus an instruction (and optional extra references for subject-driven personalization) at up to 2K resolution, at half the price of the full model. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

HiDream-O1-Image Dev (Edit)

HiDream-O1-Image Dev is the distilled variant of HiDream-O1-Image. The same single native model handles text-to-image, prompt-driven editing, and subject-driven personalization at up to 2K (≈2048×2048) — but tuned for fast, low-step inference so you pay less and wait less per edit. Provide one or more reference images plus an instruction; the model edits while keeping identity, composition, and lighting stable.


Why Choose This?

  • Distilled for speed — Fewer denoising steps than the full HiDream-O1-Image, lower latency per edit.
  • Lower cost — Half the price of the full model, ideal for batch editing, e-commerce variations, and rapid iteration.
  • Identity-preserving edits — Keeps the subject, pose, and overall composition stable while applying the requested change.
  • Multi-reference support — Accepts one image for plain editing, or multiple reference images for subject-driven personalization (consistent characters, products, IPs).
  • High-resolution output — Up to ~2048×2048 with sharp detail and natural lighting.
  • Strong instruction following — Faithfully interprets edit instructions (wardrobe, scene tweaks, object swaps, style changes, on-image text).
  • Multiple output formats — JPEG, PNG, or WEBP.
  • Reproducibility — Use a fixed seed to recreate exact results.

Parameters

ParameterRequiredDescription
promptYesText instruction describing the edit you want to make.
imagesYesReference images for editing or subject-driven personalization. Each entry is a public URL or base64 data URI (PNG, JPEG, JPG, or WebP, up to 50MB, aspect ratio between 1:4 and 4:1). Pass one image for editing, multiple for subject-driven personalization.
sizeNoOutput image size as WIDTH*HEIGHT (default: 2048*2048). The model snaps to the closest supported resolution.
output_formatNoOutput format: jpeg, png, or webp (default: jpeg).
seedNoRandom seed for reproducible generation.
enable_sync_modeNoAPI only — wait for the result and return it inline.
enable_base64_outputNoAPI only — return the image as a base64 string instead of a URL.

How to Use

  1. Upload your reference image(s) — drag and drop or paste publicly accessible URLs. One image for editing, multiple for subject-driven personalization.
  2. Write your edit instruction — describe both the change and what to keep (e.g., “Change the jacket to black leather. Keep the person, pose, and background unchanged.”).
  3. Choose size (optional) — keep the source aspect ratio or pick a new one.
  4. Set output_format — JPEG for compact files, PNG for lossless, WEBP for balance.
  5. Set seed (optional) — pin a number to reproduce the same edit.
  6. Run — submit the request and download the edited image.

Pricing

Flat rate per edit — half the price of the full HiDream-O1-Image (Edit).

OutputCost
Per image edit$0.02

Best Use Cases

  • Batch e-commerce variations — Multiple colorways or styling options from a hero shot, at scale.
  • Subject-driven personalization — Pass several reference images to keep a character / product / IP consistent across new scenes.
  • Wardrobe & accessory edits — Swap clothing color/style, add/remove glasses, hats, jewelry.
  • Background & scene tweaks — Replace backgrounds or swap props while keeping the subject pixel-stable.
  • Object add / remove / replace — Cleanly modify specific elements without disturbing the rest of the scene.
  • Style transfer — Apply a new look while preserving the subject’s identity.
  • Marketing iteration — Quickly produce many creative variants per source image at low cost.

Dev vs. Full — Which to Pick?

HiDream-O1-Image Dev (Edit)HiDream-O1-Image (Edit, Full)
SpeedFaster (distilled, fewer steps)Standard
Cost / edit$0.02$0.04
Quality ceilingHighHighest
Best forBatches, drafts, low-cost editsFinal hero edits

Prompting Guide

For clean results, specify both the change and what to preserve:

Template:

Keep the same person, pose, and background. Change [target edit]. Keep lighting natural and consistent.

Examples:

  • “Keep the same person and pose. Change the outfit to a light gray sweater and add gold thin-rimmed glasses. Keep the background and lighting unchanged.”
  • “Keep identity and composition. Replace the jacket with a black leather jacket; keep realistic fabric texture and natural shadows.”
  • “Keep the subject unchanged. Remove the object on the table and keep the scene lighting consistent.”
  • “Keep the person and pose. Change the background to a sunlit beach at golden hour.”

For subject-driven personalization, pass several reference images of the same subject (different angles / outfits / lighting) and describe the new scene; the model uses them jointly to keep identity consistent.


Pro Tips

  • Always state what should stay the same — it dramatically improves identity preservation.
  • For multi-reference personalization, give 3–5 varied shots of the subject for best identity locking.
  • Reference elements explicitly: “the text on the shirt”, “the background”, “the person on the left”.
  • Pin a seed while iterating so you can compare prompt variants against a fixed baseline.
  • For multi-step edits, prefer sequential single-purpose prompts over one long compound instruction.
  • Use png for lossless edits when output will be re-edited downstream.

Notes

  • If using URLs for the source images, ensure they are publicly accessible.
  • The enable_base64_output and enable_sync_mode options are only available through the API.
  • Higher resolutions may slightly increase processing time.
  • Ensure prompts comply with content guidelines.

Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result


# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/hidream-o1-image-dev/edit" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "size": "2048*2048",
    "output_format": "jpeg",
    "enable_sync_mode": false,
    "enable_base64_output": false
}'

# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
promptstringYes-Text prompt for image generation.
imagesarrayYes[]-Reference images for image editing or subject-driven personalization.
sizestringNo2048*2048256 ~ 4096 per dimensionSpecify the width and height pixel values of the generated image.Total pixel value range: [2560*1440, 4096*4096]
output_formatstringNojpegpng, jpeg, webpOutput image format.
seedintegerNo--1 ~ 2147483647
enable_sync_modebooleanNofalse-If set to true, the function will wait for the result to be generated and uploaded before returning the response. It allows you to get the result directly in the response. This property is only available through the API.
enable_base64_outputbooleanNofalse-If enabled, the output will be encoded into a BASE64 string instead of a URL. This property is only available through the API.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction, the ID of the prediction to get
data.modelstringModel ID used for the prediction
data.outputsstringArray of URLs to the generated images.
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2025 WaveSpeedAI. All rights reserved.