Skip to main content

ModelsLab

The modelslab provider supports text-to-image generation via the ModelsLab API, with access to first-party and community models.

Setup

  1. Create an API key at ModelsLab

  2. Set the environment variable:

    export MODELSLAB_API_KEY=your_api_key_here

Provider Format

modelslab:image:<model_name>

Text to Image:

  • modelslab:image:nano-banana-2 - Google Nano Banana 2, fast 1024x1024 generation with natural language editing
  • modelslab:image:seedream-5.0-lite - Bytedance Seedream 5.0 Lite, fast and lightweight
  • modelslab:image:flux - Flux, high-quality image generation
  • modelslab:image:sdxl - Stable Diffusion XL
info

Browse the full model catalog for community fine-tunes and additional models.

Environment Variables

VariableDescription
MODELSLAB_API_KEYYour ModelsLab API key

Configuration

Basic Setup

providers:
- id: modelslab:image:flux
config:
width: 1024
height: 1024

Configuration Options

ParameterTypeDefaultDescription
apiKeystring-API key (or use MODELSLAB_API_KEY env)
widthnumber512Image width in pixels
heightnumber512Image height in pixels
num_inference_stepsnumber30Number of denoising steps
guidance_scalenumber7.5How closely to follow the prompt
samplesnumber1Number of images to generate
seednumber-Random seed for reproducibility
negative_promptstring-What to avoid in the image
safety_checkerstringnoEnable safety filter (yes or no)
enhance_promptstringnoAuto-enhance the prompt (yes or no)

Full Example

providers:
- id: modelslab:image:flux
config:
width: 1024
height: 1024
num_inference_steps: 50
guidance_scale: 7.5
negative_prompt: 'blurry, low quality'
seed: 42

prompts:
- 'Generate an image of: {{subject}}'

tests:
- vars:
subject: 'a mountain landscape at sunset'

Async Generation

ModelsLab uses an async generation pattern. When an image request returns status: "processing", the provider automatically polls the fetch endpoint every 3 seconds until the image is ready (up to 3 minutes).

Authentication

ModelsLab uses key-in-body authentication. The API key is sent as the key field in the JSON request body rather than as a Bearer token header.