Skip to content

Add provider abstraction for model-agnostic routing #1

@suboss87

Description

@suboss87

Summary

Add a provider abstraction layer so users can route to Runway, Kling, Veo, or any future video gen API without rewriting the pipeline.

Proposed approach

  1. Define a VideoProvider protocol in app/services/providers/base.py
  2. Move current ModelArk logic to app/services/providers/byteplus.py
  3. Add provider selection via VIDEO_PROVIDER=byteplus env var
  4. Each provider implements: create_task(), poll_status(), get_result()

Why this matters

  • Removes vendor lock-in
  • Positions SeedCamp as the routing layer, not an API wrapper
  • Enables cost-optimized routing across providers

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions