Skip to content

Commit 037efe7

Browse files
committed
feat(api-nodes): add Luma UNI-1 models
Signed-off-by: bigcat88 <bigcat88@icloud.com>
1 parent fed8d5e commit 037efe7

2 files changed

Lines changed: 330 additions & 14 deletions

File tree

comfy_api_nodes/apis/luma.py

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
from __future__ import annotations
22

3-
4-
import torch
5-
63
from enum import Enum
74
from typing import Optional, Union
85

6+
import torch
97
from pydantic import BaseModel, Field, confloat
108

119

12-
1310
class LumaIO:
1411
LUMA_REF = "LUMA_REF"
1512
LUMA_CONCEPTS = "LUMA_CONCEPTS"
@@ -183,13 +180,13 @@ class LumaAssets(BaseModel):
183180

184181

185182
class LumaImageRef(BaseModel):
186-
'''Used for image gen'''
183+
"""Used for image gen"""
187184
url: str = Field(..., description='The URL of the image reference')
188185
weight: confloat(ge=0.0, le=1.0) = Field(..., description='The weight of the image reference')
189186

190187

191188
class LumaImageReference(BaseModel):
192-
'''Used for video gen'''
189+
"""Used for video gen"""
193190
type: Optional[str] = Field('image', description='Input type, defaults to image')
194191
url: str = Field(..., description='The URL of the image')
195192

@@ -251,3 +248,32 @@ class LumaGeneration(BaseModel):
251248
assets: Optional[LumaAssets] = Field(None, description='The assets of the generation')
252249
model: str = Field(..., description='The model used for the generation')
253250
request: Union[LumaGenerationRequest, LumaImageGenerationRequest] = Field(..., description="The request used for the generation")
251+
252+
253+
class Luma2ImageRef(BaseModel):
254+
url: str | None = None
255+
data: str | None = None
256+
media_type: str | None = None
257+
258+
259+
class Luma2GenerationRequest(BaseModel):
260+
prompt: str = Field(..., min_length=1, max_length=6000)
261+
model: str | None = None
262+
type: str | None = None
263+
aspect_ratio: str | None = None
264+
style: str | None = None
265+
output_format: str | None = None
266+
web_search: bool | None = None
267+
image_ref: list[Luma2ImageRef] | None = None
268+
source: Luma2ImageRef | None = None
269+
270+
271+
class Luma2Generation(BaseModel):
272+
id: str | None = None
273+
type: str | None = None
274+
state: str | None = None
275+
model: str | None = None
276+
created_at: str | None = None
277+
output: list[LumaImageReference] | None = None
278+
failure_reason: str | None = None
279+
failure_code: str | None = None

0 commit comments

Comments
 (0)