Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion decart/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from .types import FileInput


RealTimeModels = Literal["mirage", "lucy_v2v_720p_rt"]
RealTimeModels = Literal["mirage", "mirage_v2", "lucy_v2v_720p_rt"]
VideoModels = Literal[
"lucy-dev-i2v",
"lucy-dev-v2v",
Expand Down Expand Up @@ -86,6 +86,14 @@ class ImageToImageInput(DecartBaseModel):
height=704,
input_schema=BaseModel,
),
"mirage_v2": ModelDefinition(
name="mirage_v2",
url_path="/v1/stream",
fps=12,
width=1280,
height=704,
input_schema=BaseModel,
),
"lucy_v2v_720p_rt": ModelDefinition(
name="lucy_v2v_720p_rt",
url_path="/v1/stream",
Expand Down
2 changes: 1 addition & 1 deletion examples/realtime_file.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ async def main():

print("Creating Decart client...")
async with DecartClient(api_key=api_key) as client:
model = models.realtime("mirage")
model = models.realtime("mirage_v2")
print(f"Using model: {model.name}")

frame_count = 0
Expand Down
2 changes: 1 addition & 1 deletion examples/realtime_synthetic.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ async def main():
print("Creating synthetic video track...")
video_track = SyntheticVideoTrack()

model = models.realtime("mirage")
model = models.realtime("mirage_v2")
print(f"Using model: {model.name}")
print(f"Model config - FPS: {model.fps}, Size: {model.width}x{model.height}")

Expand Down
7 changes: 7 additions & 0 deletions tests/test_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,13 @@ def test_realtime_models() -> None:
assert model.height == 704
assert model.url_path == "/v1/stream"

model = models.realtime("mirage_v2")
assert model.name == "mirage_v2"
assert model.fps == 12
assert model.width == 1280
assert model.height == 704
assert model.url_path == "/v1/stream"


def test_video_models() -> None:
model = models.video("lucy-pro-t2v")
Expand Down
8 changes: 8 additions & 0 deletions tests/test_realtime_unit.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,14 @@ def test_realtime_models_available():
assert model.fps == 25
assert model.width == 1280
assert model.height == 704
assert model.url_path == "/v1/stream"

model2 = models.realtime("mirage_v2")
assert model2.name == "mirage_v2"
assert model2.fps == 12
assert model2.width == 1280
assert model2.height == 704
assert model2.url_path == "/v1/stream"

model2 = models.realtime("lucy_v2v_720p_rt")
assert model2.name == "lucy_v2v_720p_rt"
Expand Down
2 changes: 1 addition & 1 deletion uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading