Skip to main content

ModelsLab's Official Python SDK

Project description

new one

ModelsLab Python SDK

Official Python SDK for ModelsLab API - Generate AI content including images, videos, audio, 3D models, and more.

Installation

pip install modelslab_py

For async support:

pip install 'modelslab_py[async]'

Create a client

from modelslab_py.core.client import Client

client = Client(api_key="your_api_key")

Features

  • Image Generation and Editing
  • Video Generation
  • Audio Processing
  • 3D Model Generation
  • Interior Design
  • Deepfake Operations
  • Community Models Integration

Usage Examples

Image Editing

from modelslab_py.core.client import Client
from modelslab_py.core.apis.image_editing import Image_editing
from modelslab_py.schemas.image_editing import BackgroundRemoverSchema

client = Client(api_key="your_api_key")
api = Image_editing(client=client, enterprise=False)

schema = BackgroundRemoverSchema(
    image="https://example.com/image.jpg",
    base64=False
)

response = api.background_remover(schema=schema)
print(response)

Video Generation

from modelslab_py.core.apis.video import Video
from modelslab_py.schemas.video import Text2Video

client = Client(api_key="your_api_key")
api = Video(client=client, enterprise=False)

schema = Text2Video(
    model_id="zeroscope",
    prompt="a cat walking in a garden",
    num_frames=30
)

response = api.text_to_video(schema=schema)
print(response)

Interior Design

from modelslab_py.core.apis.interior import Interior
from modelslab_py.schemas.interior import InteriorSchema

client = Client(api_key="your_api_key")
api = Interior(client=client, enterprise=False)

schema = InteriorSchema(
    prompt="modern minimalist bedroom",
    init_image="https://example.com/room.jpg"
)

response = api.interior(schema=schema)
print(response)

Audio Processing

from modelslab_py.core.apis.audio import Audio
from modelslab_py.schemas.audio import Text2Speech

client = Client(api_key="your_api_key")
api = Audio(client=client, enterprise=False)

schema = Text2Speech(
    prompt="Hello, welcome to ModelsLab",
    voice_id="madison",
    language="english"
)

response = api.text_to_speech(schema=schema)
print(response)

3D Generation

from modelslab_py.core.apis.three_d import Three_D
from modelslab_py.schemas.threed import Text23D

client = Client(api_key="your_api_key")
api = Three_D(client=client, enterprise=False)

schema = Text23D(
    prompt="a wooden chair",
    model_id="meshy-4",
    output_format="obj"
)

response = api.text_to_3d(schema=schema)
print(response)

Community Models

from modelslab_py.core.apis.community import Community
from modelslab_py.schemas.community import Text2Image

client = Client(api_key="your_api_key")
api = Community(client=client, enterprise=False)

schema = Text2Image(
    prompt="a beautiful landscape",
    model_id="midjourney",
    width=512,
    height=512
)

response = api.text_to_image(schema=schema)
print(response)

Async/Await Support

All API methods have async equivalents. Use them for concurrent requests and better performance.

Async Example with Concurrent Requests

import asyncio
from modelslab_py.core.client import Client
from modelslab_py.core.apis.video import Video
from modelslab_py.schemas.video import Text2Video

schema1 = Text2Video(
    model_id="wan2.2",
    prompt="a cat walking",
    num_frames=25,
    fps=16
)

schema2 = Text2Video(
    model_id="wan2.2",
    prompt="a dog running",
    num_frames=25,
    fps=16
)

async def main():
    async with Client(api_key="your_api_key") as client:
        api = Video(client=client, enterprise=False)

        # Run both requests concurrently
        results = await asyncio.gather(
            api.async_text_to_video(schema=schema1),
            api.async_text_to_video(schema=schema2),
        )

        print(results)

asyncio.run(main())

Async Method Naming Convention

For any synchronous method, prefix with async_:

  • text_to_video()async_text_to_video()
  • text_to_image()async_text_to_image()
  • background_remover()async_background_remover()

Provider-Based API Usage

The SDK includes provider-specific implementations for easy access to various AI models:

Minimax Provider (Video Generation)

from modelslab_py.core.client import Client
from modelslab_py.providers import MinimaxProvider
from modelslab_py.providers.minimax.schemas import Hailuo23T2VSchema

client = Client(api_key="your_api_key")
minimax = MinimaxProvider(client=client)

schema = Hailuo23T2VSchema(
    prompt="A sunset aerial shot of a lone rider galloping across a snow-covered plain"
)

response = minimax.hailuo_23_t2v(schema=schema)
print(response)

BFL Provider (Image Generation)

from modelslab_py.providers import BFLProvider
from modelslab_py.providers.bfl.schemas import FluxPro11Schema

client = Client(api_key="your_api_key")
bfl = BFLProvider(client=client)

schema = FluxPro11Schema(
    prompt="A futuristic cityscape at sunset with flying cars",
    width=1024,
    height=768
)

response = bfl.flux_pro_11(schema=schema)
print(response)

KlingAI Provider (Video Generation)

from modelslab_py.providers import KlingAIProvider
from modelslab_py.providers.klingai.schemas import KlingV25TurboT2VSchema

client = Client(api_key="your_api_key")
kling = KlingAIProvider(client=client)

schema = KlingV25TurboT2VSchema(
    prompt="Cinematic drone shot of a luxury cruise ship sailing",
    duration="5",
    aspect_ratio="16:9"
)

response = kling.kling_v25_turbo_t2v(schema=schema)
print(response)

Sync Provider (Lip Sync)

from modelslab_py.providers import SyncProvider
from modelslab_py.providers.sync.schemas import Lipsync2Schema

client = Client(api_key="your_api_key")
sync = SyncProvider(client=client)

schema = Lipsync2Schema(
    init_video="https://example.com/video.mp4",
    init_audio="https://example.com/audio.mp3"
)

response = sync.lipsync_2(schema=schema)
print(response)

Available Providers

  • AlibabaProvider: Wan2.5 video generation models
  • BFLProvider: Flux Pro image generation models
  • BytePlusProvider: SeeDream, SeeDance, and Omni Human models
  • ElevenLabsProvider: Text-to-speech and audio generation
  • GoogleProvider: Imagen models for image generation
  • InworldProvider: Text-to-speech with voice cloning
  • KlingAIProvider: Kling video generation models
  • MinimaxProvider: Hailuo video generation models
  • OpenAIProvider: Sora video generation
  • RunwayProvider: Gen-4 image and video models
  • SonautoProvider: Music and song generation
  • SyncProvider: Video lip-sync models

API Categories

  • Image Editing: Background removal, super resolution, inpainting, outpainting
  • Video: Text-to-video, image-to-video, watermark removal
  • Audio: Text-to-speech, voice conversion, music generation
  • Interior: Room design, floor planning, object placement
  • 3D: Text-to-3D, image-to-3D model generation
  • Deepfake: Face swapping, video manipulation
  • Community: Access to community-trained models

Documentation

For detailed documentation, visit docs.modelslab.com

Support

License

See LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

modelslab_py-0.2.0.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

modelslab_py-0.2.0-py3-none-any.whl (43.4 kB view details)

Uploaded Python 3

File details

Details for the file modelslab_py-0.2.0.tar.gz.

File metadata

  • Download URL: modelslab_py-0.2.0.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.1 Linux/6.11.0-1018-azure

File hashes

Hashes for modelslab_py-0.2.0.tar.gz
Algorithm Hash digest
SHA256 aeff866e9a980d3870f976a526c1fa9b88b270afef4f53efd3e1521a3fdd95a2
MD5 f1fff4a1f58a5b8d516d398244778771
BLAKE2b-256 e580c4512d6889e920ed2453c01b8918b928d44f3b1e76841d792a1281e12fb1

See more details on using hashes here.

File details

Details for the file modelslab_py-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: modelslab_py-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 43.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.1 Linux/6.11.0-1018-azure

File hashes

Hashes for modelslab_py-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 61d7211e17f72cca0609da7f3ac25b0bf55923ec35d9f7088111cf83e6dfa976
MD5 7c98c53510cd6a66a894c21551b3db45
BLAKE2b-256 5b6979af420cad50b2b8f8c15d2a8b723779c4fb20d7be622cfeebc61bc0dd61

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page