Flux Schnell Lora
FLUX.1 [schnell] is a 12 billion parameter flow transformer that generates high-quality images from text in 1 to 4 steps, suitable for personal and commercial use.
Features
The flux-schnell-lora model is a collection of fine-tuned models , specifically designed for text-to-image generation. LoRA, which stands for Low-Rank Adaptation, is a technique used to fine-tune pre-trained models efficiently. The flux-schnell-lora model is based on the FLUX.1-dev model by Black Forest Labs.
Key Features
- Superior Visual Output: Produces high-quality images with excellent adherence to input prompts, standing on par with many high-end closed-source alternatives.
- Rapid Generation Process: Utilizes latent adversarial diffusion distillation techniques to generate quality images in as few as one to four steps.
- Flexible Licensing: Released under the Apache-2.0 license, making flux-schnell-lora suitable for personal, scientific, and commercial applications.
ComfyUI
flux-schnell-lora is also available on ComfyUI, providing local inference capabilities through a node-based workflow, ensuring flexible and efficient image generation on your system.
Limitations
- Creative Focused: flux-schnell-lora is optimized for creative image generation rather than providing reliable factual information.
- Potential Biases: As a statistical model, it may inherit biases present in its training data.
- Prompt Sensitivity: The performance and fidelity of outputs can vary depending on the specificity and style of the provided prompt.
Out-of-Scope Use
The model and its derivatives may not be used in any way that violates applicable national, federal, state, local, or international law or regulation, including but not limited to:
- Exploiting, harming, or attempting to exploit or harm minors, including solicitation, creation, acquisition, or dissemination of child exploitative content.
- Generating or disseminating verifiably false information with the intent to harm others.
- Creating or distributing personal identifiable information that could be used to harm an individual.
- Harassing, abusing, threatening, stalking, or bullying individuals or groups.
- Producing non-consensual nudity or illegal pornographic content.
- Making fully automated decisions that adversely affect an individual’s legal rights or create binding obligations.
- Facilitating large-scale disinformation campaigns.
Accelerated Inference
Our accelerated inference approach leverages advanced optimization technology from WavespeedAI. This innovative fusion technique significantly reduces computational overhead and latency, enabling rapid image generation without compromising quality. The entire system is designed to efficiently handle large-scale inference tasks while ensuring that real-time applications achieve an optimal balance between speed and accuracy. For further details, please refer to the blog post.
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-schnell-lora" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"prompt": "A beautiful woman with a slight warming smile in a bustling cafe, 4k [be4u7y]",
"image": "",
"strength": 0.8,
"loras": [
{
"path": "Octree/flux-schnell-lora",
"scale": 1
}
],
"size": "1024*1024",
"num_inference_steps": 4,
"guidance_scale": 3.5,
"num_images": 1,
"seed": -1,
"enable_base64_output": false,
"enable_safety_checker": true
}'
# 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
Parameter | Type | Required | Default | Range | Description |
---|---|---|---|---|---|
prompt | string | Yes | A beautiful woman with a slight warming smile in a bustling cafe, 4k [be4u7y] | - | Input prompt for image generation |
image | string | No | - | - | |
mask_image | string | No | - | - | The mask image tells the model where to generate new pixels (white) and where to preserve the original image (black). It acts as a stencil or guide for targeted image editing. |
strength | number | No | 0.8 | 0.00 ~ 1.00 | Strength indicates extent to transform the reference image |
loras | array | No | [] | max 5 items | List of LoRAs to apply (max 5) |
loras[].path | string | Yes | - | Path to the LoRA model | |
loras[].scale | float | Yes | - | 0.0 ~ 4.0 | Scale of the LoRA model |
size | string | No | 1024*1024 | 512 ~ 1536 per dimension | Output image size |
num_inference_steps | integer | No | 4 | 1 ~ 8 | Number of inference steps |
guidance_scale | number | No | 3.5 | 0.0 ~ 10.0 | The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you. |
num_images | integer | No | 1 | 1 ~ 4 | Number of images to generate |
seed | integer | No | -1 | -1 ~ 9999999999 | Random seed (-1 for random) |
enable_base64_output | boolean | No | false | - | If enabled, the output will be encoded into a BASE64 string instead of a URL. |
enable_safety_checker | boolean | No | true | - | Enable safety checker |
Response Parameters
Parameter | Type | Description |
---|---|---|
code | integer | HTTP status code (e.g., 200 for success) |
message | string | Status message (e.g., “success”) |
data.id | string | Unique identifier for the prediction, Task Id |
data.model | string | Model ID used for the prediction |
data.outputs | array | Array of URLs to the generated content (empty when status is not completed ) |
data.urls | object | Object containing related API endpoints |
data.urls.get | string | URL to retrieve the prediction result |
data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
data.status | string | Status of the task: created , processing , completed , or failed |
data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
data.error | string | Error message (empty if no error occurred) |
data.timings | object | Object containing timing details |
data.timings.inference | integer | Inference time in milliseconds |
Result Query Parameters
Result Request Parameters
Parameter | Type | Required | Default | Description |
---|---|---|---|---|
id | string | Yes | - | Task ID |
Result Response Parameters
Parameter | Type | Description |
---|---|---|
code | integer | HTTP status code (e.g., 200 for success) |
message | string | Status message (e.g., “success”) |
data | object | The prediction data object containing all details |
data.id | string | Unique identifier for the prediction |
data.model | string | Model ID used for the prediction |
data.outputs | array | Array of URLs to the generated content (empty when status is not completed ) |
data.urls | object | Object containing related API endpoints |
data.urls.get | string | URL to retrieve the prediction result |
data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
data.status | string | Status of the task: created , processing , completed , or failed |
data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
data.error | string | Error message (empty if no error occurred) |
data.timings | object | Object containing timing details |
data.timings.inference | integer | Inference time in milliseconds |