langchain-wavespeed
LangChain integration for WaveSpeed AI — run state-of-the-art image and video generation models from your LangChain agents and chains.
Installation
pip install -U langchain-wavespeed
Set your API key (get one at wavespeed.ai):
export WAVESPEED_API_KEY="your-api-key"
Tools
WaveSpeedImageGeneration
Generate images from text prompts (defaults to bytedance/seedream-v5.0-pro):
from langchain_wavespeed import WaveSpeedImageGeneration
tool = WaveSpeedImageGeneration()
url = tool.invoke(
{
"prompt": "A red panda drinking boba tea, studio lighting",
"resolution": "2k", # optional: "1k" | "1.5k" | "2k"
"aspect_ratio": "16:9", # optional
}
)
print(url) # https://.../output.png
WaveSpeedVideoGeneration
Generate videos from text prompts (defaults to wavespeed-ai/minimax-h3/text-to-video, the cheap open-weights starting point; pass model="bytedance/seedance-2.5/text-to-video" for the highest quality):
from langchain_wavespeed import WaveSpeedVideoGeneration
tool = WaveSpeedVideoGeneration()
url = tool.invoke({"prompt": "A drone shot over a glacier at sunrise", "duration": 5})
WaveSpeedRunModel
Run any model on the WaveSpeed platform by id (browse the catalog at wavespeed.ai/models):
from langchain_wavespeed import WaveSpeedRunModel
tool = WaveSpeedRunModel()
url = tool.invoke({
"model": "wavespeed-ai/z-image/turbo",
"input": {"prompt": "A lighthouse at dusk"},
})
Use with an agent
from langchain.agents import create_agent
from langchain_wavespeed import WaveSpeedImageGeneration, WaveSpeedVideoGeneration
agent = create_agent(
"openai:gpt-5",
tools=[WaveSpeedImageGeneration(), WaveSpeedVideoGeneration()],
)
result = agent.invoke(
{"messages": [{"role": "user", "content": "Make me a picture of a corgi surfing."}]}
)
Configuration
All tools accept:
| Parameter | Default | Description |
|---|---|---|
api_key |
WAVESPEED_API_KEY env var |
WaveSpeed API key |
model |
tool-specific | Model id to run (image/video tools) |
timeout |
600.0 |
Max seconds to wait for a prediction (None waits forever) |
poll_interval |
2.0 |
Seconds between result polls |
When a prediction fails or times out, the tool raises ToolException with the
platform's error text and the task id, so a paid task stays traceable (and an
agent can read the failure instead of crashing the run). A timeout only stops
the waiting - the task keeps running server-side.
await tool.ainvoke(...) works, but note that the underlying WaveSpeed SDK is
synchronous: LangChain runs the blocking call in a worker thread, so it will not
block your event loop, but it is not natively async I/O.
License
MIT
WaveSpeed AI — AI image & video generation platform. Try it in the browser: Image generator · Video generator
Metadata
Release files for langchain-wavespeed 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| langchain_wavespeed-0.1.2.tar.gz | 8.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| langchain_wavespeed-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.8 kB
Release files / langchain_wavespeed-0.1.2.tar.gz
| Download URL | langchain_wavespeed-0.1.2.tar.gz |
|---|---|
| Size | 8.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
73ccae7b713e266722dd5faa5bb571df618b47cd2c24b3ba76991df263d22368
|
|
BLAKE2b-256 checksum How to use checksums |
4764895c06cbb3b9a29f084eb1d4c90e3a28edff3be5afcba54d2d8a93fb0ed3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.
Transparency logRelease files / langchain_wavespeed-0.1.2-py3-none-any.whl
| Download URL | langchain_wavespeed-0.1.2-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
236b2f94188455a12750b04b67aa5924b2d4083acd1ad849c0cb0961d23cc277
|
|
BLAKE2b-256 checksum How to use checksums |
3e4df5ef4555827f491b9e99ab210e6d88b45766a45f75f7e1db6cf7f0ced022
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.
Transparency log