backblaze-labs/genblaze
Genblaze is an open source Python SDK for orchestrating generative AI media pipelines across video, audio, and image providers with built in provenance for every output.
What it solves
Genblaze provides a unified way to build and orchestrate generative AI workflows for video, audio, and images. It solves the problem of "provider lock-in" by allowing developers to swap different AI media models (like Sora, Runway, or ElevenLabs) without rewriting their orchestration logic. Crucially, it addresses the issue of AI media authenticity by automatically generating a canonical provenance manifest for every run, which can be embedded directly into media files to prove their origin and integrity.
How it works
The SDK uses a Pipeline API to chain together generation Steps. Each step connects to a specific Provider (an adapter for a third-party AI API). The system manages the lifecycle of submitting requests, polling for results, and fetching outputs.
To ensure provenance, Genblaze creates a deterministic manifest containing the provider, model, prompt, and parameters used. This manifest is hashed (SHA-256) and can be stored in S3-compatible storage (like Backblaze B2) or embedded into the metadata of files like .mp4, .png, and .mp3. The Manifest.verify() method allows users to check if the media has been tampered with.
Who it’s for
It is designed for developers building production-grade generative media pipelines who need to maintain a record of how assets were created, want to easily experiment with different AI providers, or need durable, content-addressable storage for their generated assets.
Highlights
- Unified API: A single interface to access multiple providers including OpenAI, Google, Runway, Luma, ElevenLabs, and NVIDIA NIM.
- Built-in Provenance: Automatic generation of tamper-evident manifests that can be embedded in media files.
- S3-First Storage: Native integration with Backblaze B2 and other S3-compatible stores for durable asset management.
- Replayable Runs: Every run is captured in a manifest, allowing the exact generation to be reconstructed via the CLI.
- Fallback Chains: Ability to define
fallback_modelsto automatically retry generation if a primary model fails.