Skip to content
ByteDance logo

stable-diffusion-xl-lightning Beta

Text-to-ImageByteDanceHosted

SDXL-Lightning is a lightning-fast text-to-image generation model. It can generate high-quality 1024px images in a few steps.

Model Info
More informationlink
BetaYes
Unit Pricing$0.00 per step

Usage

export interface Env {
AI: Ai;
}
export default {
async fetch(request, env): Promise<Response> {
const inputs = {
prompt: "cyberpunk cat",
};
const response = await env.AI.run(
"@cf/bytedance/stable-diffusion-xl-lightning",
inputs
);
return new Response(response, {
headers: {
"content-type": "image/jpg",
},
});
},
} satisfies ExportedHandler<Env>;

Parameters

prompt
stringrequiredminLength: 1A text description of the image you want to generate
negative_prompt
stringText describing elements to avoid in the generated image
height
integerminimum: 256maximum: 2048The height of the generated image in pixels
width
integerminimum: 256maximum: 2048The width of the generated image in pixels
image_b64
stringFor use with img2img tasks. A base64-encoded string of the input image
num_steps
integerdefault: 20maximum: 20The number of diffusion steps; higher values can improve quality but take longer
strength
numberdefault: 1A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image
guidance
numberdefault: 7.5Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt
seed
integerRandom seed for reproducibility of the image generation

API Schemas

{
"type": "object",
"properties": {
"prompt": {
"type": "string",
"minLength": 1,
"description": "A text description of the image you want to generate"
},
"negative_prompt": {
"type": "string",
"description": "Text describing elements to avoid in the generated image"
},
"height": {
"type": "integer",
"minimum": 256,
"maximum": 2048,
"description": "The height of the generated image in pixels"
},
"width": {
"type": "integer",
"minimum": 256,
"maximum": 2048,
"description": "The width of the generated image in pixels"
},
"image": {
"type": "array",
"description": "For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values",
"items": {
"type": "number",
"description": "A value between 0 and 255"
}
},
"image_b64": {
"type": "string",
"description": "For use with img2img tasks. A base64-encoded string of the input image"
},
"mask": {
"type": "array",
"description": "An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values",
"items": {
"type": "number",
"description": "A value between 0 and 255"
}
},
"num_steps": {
"type": "integer",
"default": 20,
"maximum": 20,
"description": "The number of diffusion steps; higher values can improve quality but take longer"
},
"strength": {
"type": "number",
"default": 1,
"description": "A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image"
},
"guidance": {
"type": "number",
"default": 7.5,
"description": "Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt"
},
"seed": {
"type": "integer",
"description": "Random seed for reproducibility of the image generation"
}
},
"required": [
"prompt"
]
}