Browse ModelsWavespeed AIFlux 2 Klein Base 9b Edit

Flux 2 Klein Base 9b Edit

Flux 2 Klein Base 9b Edit

Playground

Try it on WavespeedAI!

FLUX.2 [klein] Base 9B Edit is a high-quality image editing model with 9B parameters, offering precise modifications using natural language instructions. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

Features

WaveSpeed AI FLUX.2 Klein Base 9B Edit

WaveSpeed AI FLUX.2 Klein Base 9B Edit is a high-quality image editing model built for prompt-driven transformations, compositing, and style changes. Upload one or more source images, describe the edit in natural language, and generate polished results with stronger detail and better prompt understanding than the 4B variant.


Why Choose This?

  • Higher-quality editing The 9B parameter model delivers richer detail, stronger prompt adherence, and better overall edit quality than the 4B variant.

  • Natural-language editing Describe the change you want in plain language — transform style, replace elements, change mood, or combine multiple images.

  • Multi-image support Upload multiple reference images and perform compositing or cross-image edits such as “Put the person in image1 into image2.”

  • Flexible output sizing Optionally set output dimensions, or leave size empty to preserve the original input dimensions.

  • Prompt Enhancer Built-in prompt enhancement can help improve edit quality and clarity.

  • Production-ready workflow Suitable for high-quality creative editing, marketing visuals, and more complex multi-image transformations.


Parameters

ParameterRequiredDescription
promptYesText description of the desired edit.
imagesYesSource images to edit. Multiple images are supported.
sizeNoOutput dimensions. Leave empty to match the input image dimensions.
seedNoRandom seed for reproducibility. Use -1 for random generation.

How to Use

  1. Write your prompt — describe the edit you want, such as “Put the person in image1 into image2” or “Change this to watercolor style.”
  2. Upload your images — add one or more source images using the image input.
  3. Set size (optional) — specify output dimensions, or leave it empty to preserve the original dimensions.
  4. Set seed (optional) — use -1 for random generation, or enter a fixed seed for reproducible results.
  5. Submit — run the model and download the edited image.

Example Prompt

Put the person in image1 into image2, keep realistic lighting and proportions, and match the scene naturally.


Pricing

ItemCost
Per image$0.016

Billing Rules

  • Pricing is fixed at $0.016 per generated image
  • size and seed do not affect pricing
  • Flat-rate pricing applies regardless of image dimensions

Best Use Cases

  • Image compositing — Combine subjects or objects from multiple images into one result.
  • Style transfer — Transform images into different artistic or visual styles with strong fidelity.
  • Professional editing — Use the 9B model when the 4B variant is not sufficient for production-quality work.
  • Content transformation — Change lighting, mood, environment, or visual theme with more precision.
  • Complex multi-image edits — Handle edits that require stronger scene understanding and better subject consistency.

Pro Tips

  • Be specific about what should change and what should stay the same.
  • Reference input images clearly in the prompt, such as image1, image2, and so on.
  • Leave size empty when you want to preserve the original image dimensions.
  • Use the same seed when comparing different prompt variations on the same images.
  • For complex edits, describe both the main transformation and any constraints like lighting, realism, or identity preservation.

Notes

  • Both prompt and images are required.
  • If size is not specified, the output matches the input image dimensions.
  • The 9B model offers better detail and stronger prompt understanding than the 4B variant.
  • Need LoRA support? Try FLUX.2 Klein Base 9B Edit LoRA.

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/flux-2-klein-base-9b/edit" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "seed": -1,
    "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
imagesarrayYes[]1 ~ 3 itemsList of reference image URLs (1-3 images).
promptstringYes-
sizestringNo-256 ~ 1536 per dimension
seedintegerNo-1-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 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
© 2025 WaveSpeedAI. All rights reserved.