AI media toolkit
Generate video, image, and audio with a unified interface — plus tools to process and enhance them
Documentation · Quick Start · Providers · Blog
Every AI media provider ships its own SDK with its own parameter names, response shapes, and error formats. Tarash is a Python toolkit that unifies all of this — generation across providers, plus processing tools to enhance the output.
Tarash Gateway is the first package: a unified SDK for video, image, and audio generation across 10+ providers and 100+ models. Write one integration, swap providers by changing config.
from tarash_gateway import VideoGenerationConfig, VideoGenerationRequest, generate_video
config = VideoGenerationConfig(
model="fal-ai/veo3.1/fast",
provider="fal",
api_key="YOUR_FAL_KEY",
)
request = VideoGenerationRequest(
prompt="Sunset over mountains, cinematic",
aspect_ratio="16:9",
duration_seconds=5,
)
response = generate_video(config, request)
print(response.video) # URL to generated videoSwitch to any other provider — same request, same response:
config = VideoGenerationConfig(
model="gen4_turbo", provider="runway", api_key="YOUR_RUNWAY_KEY",
)
response = generate_video(config, request)See tarash-gateway for image, audio, async, and fallback examples.
| Package | Description | |
|---|---|---|
| tarash-gateway | Unified SDK for AI video, image, and audio generation | Stable |
| tarash-tools | Media processing utilities (silence removal, scene detection, and more) | Coming soon |
| Provider | Video | Image | Audio |
|---|---|---|---|
| Fal.ai | ✓ | ✓ | ✓ |
| OpenAI | ✓ | ✓ | — |
| ✓ | ✓ | — | |
| Runway | ✓ | — | — |
| Replicate | ✓ | — | — |
| XAI | ✓ | — | — |
| Stability AI | — | ✓ | — |
| ElevenLabs | — | — | ✓ |
| Cartesia | — | — | ✓ |
| Sarvam | — | — | ✓ |
| Hume | — | — | ✓ |
Full model list at tarash.vertexcover.io/providers
- One interface for video, image, and audio — stop rewriting integrations for every provider
- Swap providers by changing config — your request code, response handling, and error logic stay identical
- Automatic fallback chains — if a provider goes down, the next one picks up seamlessly
- Sync and async — every function has both
generate_*andgenerate_*_asyncvariants - Production-ready — type-safe Pydantic v2 models, structured logging, and rich error context
pip install tarash-gateway[fal]Install only the provider extras you need:
pip install tarash-gateway[openai] # OpenAI / Azure
pip install tarash-gateway[runway] # Runway
pip install tarash-gateway[elevenlabs] # ElevenLabs TTS
pip install tarash-gateway[fal,runway] # Multiple providers
pip install tarash-gateway[all] # EverythingRequires Python 3.12+ — see the installation guide for details.
Tarash is open source and contributions are welcome.
- Questions or ideas? Open a Discussion
- Found a bug? File an Issue
- Want to add a provider? See the custom providers guide
Development setup
Requirements: Python 3.12+, uv
git clone https://github.com/vertexcover-io/tarash.git
cd tarash
uv sync# Unit tests (no API keys needed)
uv run pytest packages/tarash-gateway/tests/unit/
# End-to-end tests (requires API keys)
uv run pytest packages/tarash-gateway/tests/e2e/ --e2eMIT — see LICENSE for details.