from .nodes.image_modal_nodes import ModalEditCustom, ModalClothesMask, ModalMidJourneyGenerateImage, \ ModalMidJourneyDescribeImage from .nodes.image_face_nodes import FaceDetect, FaceExtract from .nodes.image_gesture_nodes import JMGestureCorrect, JMCustom from .nodes.image_nodes import SaveImagePath, SaveImageWithOutput, LoadImgOptional from .nodes.llm_nodes import LLMChat, LLMChatMultiModalImageUpload, LLMChatMultiModalImageTensor, Jinja2RenderTemplate from .nodes.object_storage_nodes import COSUpload, COSDownload, S3Download, S3Upload, S3UploadURL, S3UploadIMAGEURL from .nodes.text_nodes import StringEmptyJudgement, LoadText, RandomLineSelector from .nodes.util_nodes import LogToDB, TaskIdGenerate, TraverseFolder, UnloadAllModels, VodToLocalNode, \ PlugAndPlayWebhook from .nodes.video_lipsync_nodes import HeyGemF2F, HeyGemF2FFromFile from .nodes.video_nodes import VideoCut, VideoCutByFramePoint, VideoChangeFPS, VideoStartPointDurationCompute NODE_CLASS_MAPPINGS = { "FaceOccDetect": FaceDetect, "FaceExtract": FaceExtract, "COSUpload": COSUpload, "COSDownload": COSDownload, "S3Upload": S3Upload, "S3UploadURL": S3UploadURL, "S3UploadIMAGEURL": S3UploadIMAGEURL, "S3Download": S3Download, "VideoCutCustom": VideoCut, "VideoCutByFramePoint": VideoCutByFramePoint, "VideoChangeFPS": VideoChangeFPS, "VodToLocal": VodToLocalNode, "LogToDB": LogToDB, "VideoPointCompute": VideoStartPointDurationCompute, "StringEmptyJudgement": StringEmptyJudgement, "unloadAllModels": UnloadAllModels, "TraverseFolder": TraverseFolder, "LoadTextCustom": LoadText, "HeyGemF2F": HeyGemF2F, "HeyGemF2FFromFile": HeyGemF2FFromFile, "SaveImagePath": SaveImagePath, "LoadImgCustom": LoadImgOptional, "TaskIdGenerate": TaskIdGenerate, "RandomLineSelector": RandomLineSelector, "PlugAndPlayWebhook": PlugAndPlayWebhook, "SaveImageWithOutput": SaveImageWithOutput, "LLMChat": LLMChat, "LLMChatMultiModalImageUpload": LLMChatMultiModalImageUpload, "LLMChatMultiModalImageTensor": LLMChatMultiModalImageTensor, "Jinja2RenderTemplate": Jinja2RenderTemplate, "JMGestureCorrect": JMGestureCorrect, "ModalClothesMask": ModalClothesMask, "ModalEditCustom": ModalEditCustom, "ModalMidJourneyGenerateImage": ModalMidJourneyGenerateImage, "ModalMidJourneyDescribeImage": ModalMidJourneyDescribeImage, "JMCustom": JMCustom } NODE_DISPLAY_NAME_MAPPINGS = { "FaceOccDetect": "面部遮挡检测", "FaceExtract": "面部提取", "COSUpload": "COS上传-返回key", "COSDownload": "COS下载", "S3Upload": "S3上传-返回key", "S3UploadURL": "S3上传-返回URL", "S3UploadIMAGEURL": "S3上传图片-返回URL", "S3Download": "S3下载", "VideoCutCustom": "视频剪裁", "VideoCutByFramePoint": "视频剪裁(精确帧位)", "VideoChangeFPS": "视频转换帧率", "VodToLocal": "腾讯云VOD下载", "LogToDB": "状态持久化DB", "VideoPointCompute": "视频帧位计算", "StringEmptyJudgement": "字符串是否为空", "unloadAllModels": "卸载所有已加载模型", "TraverseFolder": "遍历文件夹", "LoadTextCustom": "读取文本文件(file_path优先)", "HeyGemF2F": "HeyGem口型同步(API, 传入文件Tensor)", "HeyGemF2FFromFile": "HeyGem口型同步(API, 传入文件路径)", "SaveImagePath": "保存图片", "LoadImgCustom": "加载图片(URL/本地, URL优先)", "TaskIdGenerate": "TaskID生成器", "RandomLineSelector": "随机选择一行内容", "PlugAndPlayWebhook": "Webhook转发器", "SaveImageWithOutput": "保存图片(带输出)", "LLMChat": "LLM调用", "LLMChatMultiModalImageUpload": "多模态LLM调用-图片Path", "LLMChatMultiModalImageTensor": "多模态LLM调用-图片Tensor", "Jinja2RenderTemplate": "Jinja2格式Prompt模板渲染", "JMGestureCorrect": "人物侧身图片转为正面图-即梦", "ModalClothesMask": "模特指定衣服替换为指定颜色", "ModalEditCustom": "自定义Prompt修改图片", "ModalMidJourneyGenerateImage": "Prompt修图", "ModalMidJourneyDescribeImage": "反推生图提示词", "JMCustom": "Prompt生视频" }