fix: 优化架构
This commit is contained in:
36
engine/adapters/image/comfy_adapter.py
Normal file
36
engine/adapters/image/comfy_adapter.py
Normal file
@@ -0,0 +1,36 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
from engine.comfy_client import generate_image as comfy_generate_image
|
||||
from engine.config import AppConfig
|
||||
|
||||
from .base import BaseImageGen
|
||||
from .mock_adapter import MockImageGen
|
||||
|
||||
|
||||
class ComfyAdapter(BaseImageGen):
|
||||
def __init__(self, cfg: AppConfig):
|
||||
self.cfg = cfg
|
||||
self.fallback = MockImageGen()
|
||||
|
||||
def generate(self, prompt: dict[str, str], output_dir: str | Path) -> str:
|
||||
positive = str(prompt.get("positive", "") or "")
|
||||
negative = str(prompt.get("negative", "") or "")
|
||||
try:
|
||||
return str(
|
||||
comfy_generate_image(
|
||||
positive,
|
||||
output_dir,
|
||||
negative_text=negative or None,
|
||||
cfg=self.cfg,
|
||||
timeout_s=60,
|
||||
retry=2,
|
||||
filename_prefix="shot",
|
||||
)
|
||||
)
|
||||
except Exception as e:
|
||||
# Let render_pipeline do configured fallback.
|
||||
raise
|
||||
|
||||
Reference in New Issue
Block a user