diff --git a/decart/models.py b/decart/models.py index 9ce5317..7d1bab9 100644 --- a/decart/models.py +++ b/decart/models.py @@ -9,6 +9,7 @@ "lucy-2.1", "lucy-2.5", "lucy-vton-3.5", + "lucy-vton-3.6", "lucy-restyle-2", # Latest aliases (server-side resolution) "lucy-latest", @@ -21,6 +22,7 @@ "lucy-2.1", "lucy-2.5", "lucy-vton-3.5", + "lucy-vton-3.6", "lucy-restyle-2", # Latest aliases (server-side resolution) "lucy-latest", @@ -246,6 +248,13 @@ class ImageToImageInput(DecartBaseModel): height=720, supported_speeds=("fast",), ), + "lucy-vton-3.6": ModelDefinition( + name="lucy-vton-3.6", + url_path="/v1/stream", + fps=30, + width=1280, + height=720, + ), "lucy-restyle-latest": ModelDefinition( name="lucy-restyle-latest", url_path="/v1/stream", @@ -288,6 +297,14 @@ class ImageToImageInput(DecartBaseModel): height=720, input_schema=VideoEdit2Input, ), + "lucy-vton-3.6": ModelDefinition( + name="lucy-vton-3.6", + url_path="/v1/jobs/lucy-vton-3.6", + fps=20, + width=1280, + height=720, + input_schema=VideoEdit2Input, + ), "lucy-restyle-2": ModelDefinition( name="lucy-restyle-2", url_path="/v1/jobs/lucy-restyle-2", diff --git a/playground/playground.py b/playground/playground.py index e17ebc5..eb6c8f2 100644 --- a/playground/playground.py +++ b/playground/playground.py @@ -60,6 +60,7 @@ def _check_deps() -> None: "lucy-2.1", "lucy-2.5", "lucy-vton-3.5", + "lucy-vton-3.6", "lucy-vton-latest", "lucy-restyle-2", ] diff --git a/tests/test_models.py b/tests/test_models.py index 3e1ada2..82814ac 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -32,6 +32,15 @@ def test_canonical_realtime_models() -> None: assert model.width == 1280 assert model.height == 720 + model = models.realtime("lucy-vton-3.6") + assert model.name == "lucy-vton-3.6" + assert model.url_path == "/v1/stream" + assert model.fps == 30 + assert model.width == 1280 + assert model.height == 720 + # 3.6 is not offered on the fast tier, unlike 3.5. + assert model.supported_speeds == () + def test_canonical_video_models() -> None: model = models.video("lucy-clip") @@ -59,6 +68,13 @@ def test_canonical_video_models() -> None: assert model.width == 1280 assert model.height == 720 + model = models.video("lucy-vton-3.6") + assert model.name == "lucy-vton-3.6" + assert model.url_path == "/v1/jobs/lucy-vton-3.6" + assert model.fps == 20 + assert model.width == 1280 + assert model.height == 720 + model = models.video("lucy-restyle-2") assert model.name == "lucy-restyle-2" assert model.url_path == "/v1/jobs/lucy-restyle-2"