Metadata-Version: 2.4
Name: lfx-wavespeed
Version: 0.1.0
Summary: WaveSpeed AI image and video generation components as a Langflow Extension Bundle.
Project-URL: Homepage, https://wavespeed.ai
Project-URL: Repository, https://github.com/WaveSpeedAI/lfx-wavespeed
Project-URL: Issues, https://github.com/WaveSpeedAI/lfx-wavespeed/issues
Project-URL: Documentation, https://docs.langflow.org/extensions
Author-email: WaveSpeedAI <support@wavespeed.ai>
License: MIT
License-File: LICENSE
Keywords: bundle,extension,image-generation,langflow,lfx,video-generation,wavespeed
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: <3.15,>=3.10
Requires-Dist: lfx<2.0.0,>=1.11.4
Requires-Dist: requests>=2.32.0
Requires-Dist: wavespeed>=1.0.13
Description-Content-Type: text/markdown

# lfx-wavespeed

[WaveSpeed AI](https://wavespeed.ai) components for [Langflow](https://langflow.org),
packaged as a Langflow Extension Bundle.

WaveSpeed AI is a high-performance inference platform for image and video
generation models. This bundle exposes it in the Langflow palette — no fork, no
PR to Langflow, just `pip install`.

## Install

```bash
pip install lfx-wavespeed
```

Restart Langflow. A **WaveSpeed AI** bundle appears in the component palette.

## Components

| Component | What it does |
| --- | --- |
| **WaveSpeed AI Image Generation** | Text-to-image. Defaults to `bytedance/seedream-v5.0-pro`; the model dropdown loads the live catalog. Exposes prompt, aspect ratio and resolution. |
| **WaveSpeed AI Video Generation** | Text-to-video. Defaults to `bytedance/seedance-2.5/text-to-video`. Exposes prompt and duration. |
| **WaveSpeed AI Run Model** | Runs any model id from the catalog with a raw JSON input payload. |

All three take a `WaveSpeed API Key` (get one at
<https://wavespeed.ai/dashboard>) and can be driven by an Agent via tool mode.
Each returns a `Data` payload with `url`, `urls` and the raw platform `outputs`.

The model dropdowns refresh from `GET /api/v3/models` when you change the key or
click the refresh button; without a reachable catalog they fall back to a small
curated list.

## Why no `size` / `seed` inputs

WaveSpeed validates model inputs against each model's declared schema and drops
undeclared fields. For the default image models `size` and `seed` are not
declared, so a UI field for them would look effective while doing nothing. Use
**Run Model** with an explicit JSON payload if a specific model does declare
them.

## Development

```bash
pip install -e ".[test]" langflow
lfx extension validate src/lfx_wavespeed   # static manifest + bundle check
pytest                                     # mocked SDK, no network
ruff check .
lfx extension dev src/lfx_wavespeed        # Langflow with this bundle loaded
```

## License

MIT
