[00:00] Crash dump logging enabled: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/SAM3-2011/dev/linux-cpu/crash_dump.log [00:00] [00:00] [1/5] SYNTAX [00:00] ---------------------------------------- [00:00] [DEBUG] server=None, server_url=None, api=None [00:00] Found pyproject.toml (modern format) [00:00] Found requirements.txt (legacy format) [00:00] Unicode check: OK (all characters cp1252-safe) [00:00] Forbidden patterns check: OK [00:00] [SYNTAX] PASSED [00:00] [00:00] [2/5] INSTALL [00:00] ---------------------------------------- [00:00] [DEBUG] server=None, server_url=None, api=None [00:00] Setting up ComfyUI... [00:00] Creating virtual environment... [00:00] Running: uv venv /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/.venv --python 3.10 [00:00] Cloning ComfyUI (latest)... [00:00] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI [00:01] Installing ComfyUI requirements... [00:01] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/.venv/bin/python -r /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/requirements.txt [00:23] Installing custom node... [00:23] Copying ComfyUI-SAM3 to custom_nodes/... [00:23] Installing node requirements... [00:23] Running: uv pip install --python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/.venv/bin/python -r /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/requirements.txt [00:24] Running install.py... [00:24] Running: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/.venv/bin/python /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/install.py [00:24] [00:24] Installing 2 node dependencies... [00:24] Cloning ComfyUI-VideoHelperSuite... [00:25] Installing requirements for ComfyUI-VideoHelperSuite... [00:26] Cloning ComfyUI-Multiband... [00:26] Installing requirements for ComfyUI-Multiband... [00:26] [00:26] [requirements] Re-installing main package requirements... [00:26] Installing requirements for ComfyUI-SAM3... [00:26] [comfy-env] No custom-node comfy-env.toml files found -- skipping workspace install [00:26] [00:26] Installation complete! [00:26] Installing 2 node dependency(ies)... [00:26] ComfyUI-VideoHelperSuite from Kosinkadink/ComfyUI-VideoHelperSuite [00:26] ComfyUI-VideoHelperSuite already exists, skipping... [00:26] ComfyUI-Multiband from PozzettiAndrea/ComfyUI-Multiband [00:26] ComfyUI-Multiband already exists, skipping... [00:26] Installing validation endpoint... [00:26] Cloning PozzettiAndrea/ComfyUI-validate-endpoint... [00:26] Running: git clone --depth 1 https://github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-validate-endpoint [00:27] [INSTALL] PASSED [00:27] [00:27] [3/5] REGISTRATION [00:27] ---------------------------------------- [00:27] [DEBUG] server=None, server_url=None, api=None [00:27] Starting ComfyUI server... [00:27] Starting ComfyUI server on port 41899... [00:27] Starting ComfyUI server on port 41899... [00:27] Waiting for server to be ready (timeout: 600s)... [00:28] [ComfyUI] setup plugin alembic.autogenerate.schemas [00:28] [ComfyUI] setup plugin alembic.autogenerate.tables [00:28] [ComfyUI] setup plugin alembic.autogenerate.types [00:28] [ComfyUI] setup plugin alembic.autogenerate.constraints [00:28] [ComfyUI] setup plugin alembic.autogenerate.defaults [00:28] [ComfyUI] setup plugin alembic.autogenerate.comments [00:28] [ComfyUI] [comfy-env] ComfyUI-SAM3: 1 isolation env(s): [00:28] [ComfyUI] [comfy-env] nodes -> /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes [00:28] [ComfyUI] [comfy-env] prestartup complete [00:28] [ComfyUI] [00:28] [ComfyUI] Prestartup times for custom nodes: [00:28] [ComfyUI] 0.2 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3 [00:28] [ComfyUI] [00:35] [ComfyUI] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4']} [00:35] [ComfyUI] Found comfy_kitchen backend cuda: {'available': False, 'disabled': False, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} [00:35] [ComfyUI] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': 'Neither CUDA nor XPU available on this system', 'capabilities': []} [00:35] [ComfyUI] Checkpoint files will always be loaded safely. [00:35] [ComfyUI] Total VRAM 15990 MB, total RAM 15990 MB [00:35] [ComfyUI] pytorch version: 2.11.0+cu130 [00:35] [ComfyUI] Set vram state to: DISABLED [00:35] [ComfyUI] Device: cpu [00:36] [ComfyUI] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention [00:41] [ComfyUI] Python version: 3.10.20 (main, Mar 3 2026, 15:36:40) [GCC 13.3.0] [00:41] [ComfyUI] ComfyUI version: 0.20.1 [00:41] [ComfyUI] comfy-aimdo version: 0.3.0 [00:41] [ComfyUI] comfy-kitchen version: 0.2.8 [00:41] [ComfyUI] ****** User settings have been changed to be stored on the server instead of browser storage. ****** [00:41] [ComfyUI] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ****** [00:41] [ComfyUI] ComfyUI frontend version: 1.43.18 [00:41] [ComfyUI] [Prompt Server] web root: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/.venv/lib/python3.10/site-packages/comfyui_frontend_package/static [00:41] [ComfyUI] Asset seeder disabled [00:43] [ComfyUI] ComfyUI-Multiband loaded: 15 nodes registered [00:43] [ComfyUI] [comfy-env] Version: 0.3.79 [00:44] [ComfyUI] [comfy-env] register_nodes: ComfyUI-SAM3 [00:44] [ComfyUI] [comfy-env] ComfyUI source dir: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI [00:44] [ComfyUI] [comfy-env] isolation env not found at /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/.ce/.pixi/envs/sam3-nodes: pixi has not materialized `sam3-nodes`; using in-process import. Run `comfy-env install` (or your node's `install.py`) to create it. [00:44] [ComfyUI] [comfy-env] Found 0 isolation env(s) [00:44] [ComfyUI] [comfy-env] Importing nodes (root)... [00:44] [ComfyUI] [comfy-env] Imported nodes root: 15 nodes [00:44] [ComfyUI] [comfy-env] isolation env not found at /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/.ce/.pixi/envs/sam3-nodes: pixi has not materialized `sam3-nodes`; using in-process import. Run `comfy-env install` (or your node's `install.py`) to create it. [00:44] [ComfyUI] [comfy-env] No env for nodes -- run 'comfy-env install' [00:44] [ComfyUI] [comfy-env] Registered 15 total nodes [00:44] [ComfyUI] [00:44] [ComfyUI] Import times for custom nodes: [00:44] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/websocket_image_save.py [00:44] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-validate-endpoint [00:44] [ComfyUI] 0.0 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-VideoHelperSuite [00:44] [ComfyUI] 0.2 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-Multiband [00:44] [ComfyUI] 0.3 seconds: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3 [00:44] [ComfyUI] [00:44] [ComfyUI] Context impl SQLiteImpl. [00:44] [ComfyUI] Will assume non-transactional DDL. [00:44] [ComfyUI] Context impl SQLiteImpl. [00:44] [ComfyUI] Will assume non-transactional DDL. [00:44] [ComfyUI] Running upgrade -> 0001_assets, Initial assets schema [00:44] [ComfyUI] Revision ID: 0001_assets [00:44] [ComfyUI] Revises: None [00:44] [ComfyUI] Create Date: 2025-12-10 00:00:00 [00:44] [ComfyUI] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table. [00:44] [ComfyUI] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references. [00:44] [ComfyUI] Change preview_id FK from assets.id to asset_references.id. [00:44] [ComfyUI] Database upgraded from None to 0003_add_metadata_job_id [00:44] [ComfyUI] Starting server [00:44] [ComfyUI] [00:44] [ComfyUI] To see the GUI go to: http://127.0.0.1:41899 [00:45] Server responding, waiting for nodes to load... [01:05] Server is ready! [01:05] Checking for import errors in server logs... [01:05] No import errors detected [01:05] Found 775 registered nodes [01:05] [REGISTRATION] PASSED [01:05] [01:05] [4/5] INSTANTIATION [01:05] ---------------------------------------- [01:05] [DEBUG] server=, server_url=None, api= [01:05] Testing node constructors... [01:08] All 15 node(s) instantiated successfully! [01:08] [INSTANTIATION] PASSED [01:08] [01:08] [5/5] EXECUTION [01:08] ---------------------------------------- [01:08] [DEBUG] server=, server_url=None, api= [01:08] CPU runner - will execute 4 workflow(s) [01:08] Running 5 workflow(s) (all with videos)... [01:08] Installing screenshot dependencies (playwright, pillow)... [01:09] Packages installed, downloading chromium browser... [01:17] Screenshot dependencies installed successfully [01:18] Starting headless browser... [01:18] Installing Mesa llvmpipe (apt)... [01:29] Mesa install failed: E: Unable to locate package libegl1-mesa [01:29] No GPU, no Mesa -- using SwiftShader software rendering [01:29] Capturing execution frames: image_seg_point.json [01:31] [ComfyUI] [DEPRECATION WARNING] Detected import of deprecated legacy API: /extensions/core/widgetInputs.js. This is likely caused by a custom node extension using outdated APIs. Please update your extensions or contact the extension author for an updated version. [01:35] Frame 1 saved (frame_000.jpg, t=0.0s) [01:35] Validating workflow... [01:35] [ComfyUI] === /validate endpoint called === [01:35] [ComfyUI] Received JSON with keys: ['prompt'] [01:35] [ComfyUI] Prompt has 6 nodes [01:35] [ComfyUI] Node 1: LoadImage [01:35] [ComfyUI] Inputs: {"image": "example_image.jpg"} [01:35] [ComfyUI] Node 15: SAM3PointCollector [01:36] [ComfyUI] Inputs: {"points_store": "{\"positive\":[{\"x\":426.27735719657574,\"y\":321.42611685978835},{\"x\":417.13743597288953,\"y\":407.3413796907987},{\"x\":431.76130993078743,\"y\":549.9241563039649}],\"negative\" [01:36] [ComfyUI] Node 28: PreviewImage [01:36] [ComfyUI] Inputs: {"images": ["31", 2]} [01:36] [ComfyUI] Node 29: MaskPreview [01:36] [ComfyUI] Inputs: {"mask": ["31", 0]} [01:36] [ComfyUI] Node 30: LoadSAM3Model [01:36] [ComfyUI] Inputs: {"precision": "auto", "compile": false} [01:36] [ComfyUI] Node 31: SAM3Segmentation [01:36] Queuing workflow for execution... [01:36] [ComfyUI] Inputs: {"refinement_iterations": 0, "use_multimask": true, "output_best_mask": true, "sam3_model_config": ["30", 0], "image": ["1", 0], "positive_points": ["15", 0], "negative_points": ["15", 1]} [01:36] [ComfyUI] Generated prompt_id: cee3facd-1af4-46dd-9fda-c6c49eefab90 [01:36] [ComfyUI] Calling execution.validate_prompt()... [01:36] [ComfyUI] Validation result: valid=True [01:36] [ComfyUI] === Validation PASSED === [01:36] [ComfyUI] got prompt [01:36] [ComfyUI] WARNING: 'NoneType' object has no attribute 'shape' [01:36] [ComfyUI] CACHE MISS - computing new result for key=d9204c29 [01:36] [ComfyUI] Collected 3 positive, 0 negative points [01:36] [ComfyUI] Image dimensions: 1280x720 [01:36] [ComfyUI] Positive point: (426.3, 321.4) -> (0.333, 0.446) [01:36] [ComfyUI] Positive point: (417.1, 407.3) -> (0.326, 0.566) [01:36] [ComfyUI] Positive point: (431.8, 549.9) -> (0.337, 0.764) [01:36] [ComfyUI] Output: 3 positive, 0 negative [01:36] [ComfyUI] [SAM3] Model not found at /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors, downloading from HuggingFace... [01:36] [ComfyUI] [SAM3] Downloading sam3.safetensors from apozz/sam3-safetensors... [01:36] Node executed (1 total), capturing... [01:36] Frame 2 saved (frame_001.jpg, t=0.5s) [01:36] [capture-node] freeze=2ms shot=138ms unfreeze=2ms saved=True [01:37] [ComfyUI] [SAM3] Download progress: 10% [01:37] [ComfyUI] [SAM3] Download progress: 20% [01:38] Frame 3 saved (frame_002.jpg, t=2.8s) [01:38] [ComfyUI] [SAM3] Download progress: 30% [01:38] [capture-periodic] freeze=5ms shot=136ms unfreeze=2ms saved=True [01:39] [ComfyUI] [SAM3] Download progress: 40% [01:40] [ComfyUI] [SAM3] Download progress: 50% [01:41] Frame 4 saved (frame_003.jpg, t=5.2s) [01:41] [capture-periodic] freeze=2ms shot=163ms unfreeze=2ms saved=True [01:41] [ComfyUI] [SAM3] Download progress: 60% [01:42] [ComfyUI] [SAM3] Download progress: 70% [01:42] [capture-loop] iter=50 t=7.1s state={'complete': False, 'error': None, 'executedCount': 1, 'wsState': 1} eval_ms=5 ram=2.0/15.6GB (13%) swap=0.0/3.0GB (0%) cpu=35% browser_rss=0.90GB [01:43] [ComfyUI] [SAM3] Download progress: 80% [01:43] Frame 5 saved (frame_004.jpg, t=7.8s) [01:43] [ComfyUI] [SAM3] Download progress: 90% [01:44] [capture-periodic] freeze=13ms shot=140ms unfreeze=3ms saved=True [01:44] [ComfyUI] [SAM3] Download progress: 100% [01:44] [ComfyUI] Resolved precision: auto -> fp32 [01:45] [ComfyUI] [SAM3] Downloaded sam3.safetensors [01:45] Execution complete (t=9.6s) [01:45] [ComfyUI] SAM3 model cache miss — building model... [01:45] Execution error: {'prompt_id': '52089ef3-4eb1-4695-bcca-c9b8bea204db', 'node_id': '31', 'node_type': 'SAM3Segmentation', 'executed': ['15', '1', '30'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 469, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'refinement_iterations': [0], 'use_multimask': [True], 'output_best_mask': [True], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'auto', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3176, 0.5765, 0.7176],\n [0.3333, 0.5961, 0.7451],\n [0.3529, 0.6157, 0.7647]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3137, 0.5725, 0.7137],\n [0.3137, 0.5765, 0.7255],\n [0.3255, 0.5882, 0.7373]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3882, 0.5294, 0.6235],\n [0.3922, 0.5216, 0.6196],\n [0.3961, 0.5255, 0.6235]],\n\n ...,\n\n [[0.4941, 0.4784, 0.4157],\n [0.4941, 0.4784, 0.4157],\n [0.4980, 0.4824, 0.4196],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5098, 0.4941, 0.4314],\n [0.5098, 0.4941, 0.4314],\n [0.5137, 0.4980, 0.4353],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5176, 0.5020, 0.4392],\n [0.5216, 0.5059, 0.4431],\n [0.5255, 0.5098, 0.4471],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]]]])'], 'positive_points': ["{'points': [[0.3330291853098248, 0.4464251623052616], [0.32588862185381995, 0.5657519162372204], [0.3373135233834277, 0.7637835504221735]], 'labels': [1, 1, 1]}"], 'negative_points': ["{'points': [], 'labels': []}"]}, 'current_outputs': ['1', '31', '15', '29', '30', '28'], 'timestamp': 1778443976373} [01:45] [ComfyUI] [SAM3] Model downloaded successfully [01:46] [ComfyUI] !!! Exception during processing !!! No module named 'timm' [01:46] [ComfyUI] Traceback (most recent call last): [01:46] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 58, in [01:46] [ComfyUI] from timm.layers import DropPath, trunc_normal_ [01:46] [ComfyUI] ModuleNotFoundError: No module named 'timm' [01:46] [ComfyUI] [01:46] [ComfyUI] During handling of the above exception, another exception occurred: [01:46] Capturing execution frames: image_seg_text.json [01:46] [ComfyUI] [01:46] [ComfyUI] Traceback (most recent call last): [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute [01:47] [ComfyUI] output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data [01:47] [ComfyUI] return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list [01:47] [ComfyUI] await process_inputs(input_dict, i) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs [01:47] [ComfyUI] result = f(**inputs) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func [01:47] [ComfyUI] return method(locked_class, **inputs) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED [01:47] [ComfyUI] to_return = cls.execute(*args, **kwargs) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 469, in execute [01:47] [ComfyUI] sam3_model = get_or_build_model(sam3_model_config) [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model [01:47] [ComfyUI] from .sam3.predictor import Sam3VideoPredictor [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in [01:47] [ComfyUI] from .model import ( [01:47] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in [01:47] [ComfyUI] from timm.models.layers import DropPath, trunc_normal_ [01:47] [ComfyUI] ModuleNotFoundError: No module named 'timm' [01:48] [ComfyUI] [01:48] [ComfyUI] Prompt executed in 8.94 seconds [01:52] Frame 1 saved (frame_000.jpg, t=0.0s) [01:52] Validating workflow... [01:52] [ComfyUI] === /validate endpoint called === [01:52] [ComfyUI] Received JSON with keys: ['prompt'] [01:52] [ComfyUI] Prompt has 5 nodes [01:52] [ComfyUI] Node 1: LoadImage [01:52] [ComfyUI] Inputs: {"image": "example_image.jpg"} [01:52] [ComfyUI] Node 3: PreviewImage [01:52] [ComfyUI] Inputs: {"images": ["15", 1]} [01:52] [ComfyUI] Node 4: MaskPreview [01:52] [ComfyUI] Inputs: {"mask": ["15", 0]} [01:52] [ComfyUI] Node 12: LoadSAM3Model [01:52] [ComfyUI] Inputs: {"precision": "fp32", "compile": false} [01:52] [ComfyUI] Node 15: SAM3Grounding [01:52] [ComfyUI] Inputs: {"confidence_threshold": 0.2, "text_prompt": "child", "max_detections": -1, "sam3_model_config": ["12", 0], "image": ["1", 0]} [01:52] Queuing workflow for execution... [01:52] [ComfyUI] Generated prompt_id: f9fe45d2-d463-44ce-a764-8883a10063d9 [01:52] [ComfyUI] Calling execution.validate_prompt()... [01:52] [ComfyUI] Validation result: valid=True [01:52] [ComfyUI] === Validation PASSED === [01:52] [ComfyUI] got prompt [01:52] [ComfyUI] Resolved precision: fp32 -> fp32 [01:52] [ComfyUI] SAM3 model cache miss — building model... [01:52] [ComfyUI] !!! Exception during processing !!! No module named 'timm' [01:52] [ComfyUI] Traceback (most recent call last): [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 58, in [01:52] [ComfyUI] from timm.layers import DropPath, trunc_normal_ [01:52] [ComfyUI] ModuleNotFoundError: No module named 'timm' [01:52] [ComfyUI] [01:52] [ComfyUI] During handling of the above exception, another exception occurred: [01:52] [ComfyUI] [01:52] [ComfyUI] Traceback (most recent call last): [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute [01:52] [ComfyUI] output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data [01:52] [ComfyUI] return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list [01:52] [ComfyUI] await process_inputs(input_dict, i) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs [01:52] [ComfyUI] result = f(**inputs) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func [01:52] [ComfyUI] return method(locked_class, **inputs) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED [01:52] [ComfyUI] to_return = cls.execute(*args, **kwargs) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 86, in execute [01:52] [ComfyUI] sam3_model = get_or_build_model(sam3_model_config) [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model [01:52] [ComfyUI] from .sam3.predictor import Sam3VideoPredictor [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in [01:52] [ComfyUI] from .model import ( [01:52] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in [01:52] [ComfyUI] from timm.models.layers import DropPath, trunc_normal_ [01:52] [ComfyUI] ModuleNotFoundError: No module named 'timm' [01:52] [ComfyUI] [01:52] [ComfyUI] Prompt executed in 0.03 seconds [01:52] Execution complete (t=0.2s) [01:52] Execution error: {'prompt_id': '50ffbc93-0b89-44e8-bf0d-5c27b450b5eb', 'node_id': '15', 'node_type': 'SAM3Grounding', 'executed': ['1', '12'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 86, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'confidence_threshold': [0.2], 'text_prompt': ['child'], 'max_detections': [-1], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3176, 0.5765, 0.7176],\n [0.3333, 0.5961, 0.7451],\n [0.3529, 0.6157, 0.7647]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3137, 0.5725, 0.7137],\n [0.3137, 0.5765, 0.7255],\n [0.3255, 0.5882, 0.7373]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3882, 0.5294, 0.6235],\n [0.3922, 0.5216, 0.6196],\n [0.3961, 0.5255, 0.6235]],\n\n ...,\n\n [[0.4941, 0.4784, 0.4157],\n [0.4941, 0.4784, 0.4157],\n [0.4980, 0.4824, 0.4196],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5098, 0.4941, 0.4314],\n [0.5098, 0.4941, 0.4314],\n [0.5137, 0.4980, 0.4353],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5176, 0.5020, 0.4392],\n [0.5216, 0.5059, 0.4431],\n [0.5255, 0.5098, 0.4471],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]]]])']}, 'current_outputs': ['1', '12', '15', '4', '3'], 'timestamp': 1778443984182} [01:53] Capturing execution frames: scene_seg.json [01:59] Frame 1 saved (frame_000.jpg, t=0.0s) [01:59] Validating workflow... [01:59] [ComfyUI] === /validate endpoint called === [01:59] [ComfyUI] Received JSON with keys: ['prompt'] [01:59] [ComfyUI] Prompt has 10 nodes [01:59] [ComfyUI] Node 1: LoadImage [01:59] [ComfyUI] Inputs: {"image": "image.png"} [01:59] [ComfyUI] Node 3: PreviewImage [01:59] [ComfyUI] Inputs: {"images": ["27", 1]} [01:59] [ComfyUI] Node 4: MaskPreview [01:59] [ComfyUI] Inputs: {"mask": ["27", 0]} [01:59] [ComfyUI] Node 12: LoadSAM3Model [01:59] [ComfyUI] Inputs: {"precision": "fp32", "compile": false} [01:59] [ComfyUI] Node 20: SAM3MultiRegionCollector [01:59] [ComfyUI] Inputs: {"multi_prompts_store": "[{\"positive_points\":[{\"x\":5052.74953932266,\"y\":2847.0600693869637},{\"x\":4932.510591392486,\"y\":2953.9413227753366},{\"x\":4718.752461738845,\"y\":2967.301479448883},{ [01:59] [ComfyUI] Node 22: MultibandFromBatch [01:59] [ComfyUI] Inputs: {"images": ["1", 0], "masks": ["27", 0]} [01:59] [ComfyUI] Node 23: MultibandSave [01:59] [ComfyUI] Inputs: {"file_path": "output/multiband", "format": "npz", "multiband": ["26", 0]} [01:59] Queuing workflow for execution... [01:59] [ComfyUI] Node 24: MultibandPreview [01:59] [ComfyUI] Inputs: {"channel_index": 0, "multiband": ["26", 0]} [01:59] [ComfyUI] Node 26: MultibandResize [01:59] [ComfyUI] Inputs: {"upscale_method": "nearest-exact", "width": 900, "height": 600, "crop": "center", "multiband": ["22", 0]} [01:59] [ComfyUI] Node 27: SAM3MultipromptSegmentation [01:59] [ComfyUI] Inputs: {"refinement_iterations": 0, "use_multimask": false, "sam3_model_config": ["12", 0], "image": ["1", 0], "multi_prompts": ["20", 0]} [01:59] [ComfyUI] Generated prompt_id: 5b225a7d-7cd4-43f2-a91d-6bb30d62d2cc [01:59] [ComfyUI] Calling execution.validate_prompt()... [01:59] [ComfyUI] Validation result: valid=True [01:59] [ComfyUI] === Validation PASSED === [01:59] [ComfyUI] got prompt [01:59] [ComfyUI] WARNING: 'NoneType' object has no attribute 'shape' [02:00] [ComfyUI] CACHE MISS - computing new result for key=35316a77 [02:00] [ComfyUI] Image dimensions: 6720x4480 [02:00] [ComfyUI] Processing 7 prompt regions [02:00] [ComfyUI] Prompt 0: 10 pos pts, 0 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Prompt 1: 7 pos pts, 16 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Prompt 2: 7 pos pts, 14 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Prompt 3: 1 pos pts, 0 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Prompt 4: 1 pos pts, 0 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Prompt 5: 13 pos pts, 0 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Prompt 6: 6 pos pts, 0 neg pts, 1 pos boxes, 0 neg boxes [02:00] [ComfyUI] Output: 7 non-empty prompts [02:00] [ComfyUI] Resolved precision: fp32 -> fp32 [02:00] [ComfyUI] SAM3 model cache miss — building model... [02:00] [ComfyUI] !!! Exception during processing !!! No module named 'timm' [02:00] [ComfyUI] Traceback (most recent call last): [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 58, in [02:00] [ComfyUI] from timm.layers import DropPath, trunc_normal_ [02:00] [ComfyUI] ModuleNotFoundError: No module named 'timm' [02:00] [ComfyUI] [02:00] [ComfyUI] During handling of the above exception, another exception occurred: [02:00] [ComfyUI] [02:00] [ComfyUI] Traceback (most recent call last): [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute [02:00] [ComfyUI] output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data [02:00] [ComfyUI] return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list [02:00] [ComfyUI] await process_inputs(input_dict, i) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs [02:00] [ComfyUI] result = f(**inputs) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func [02:00] [ComfyUI] return method(locked_class, **inputs) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED [02:00] [ComfyUI] to_return = cls.execute(*args, **kwargs) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 695, in execute [02:00] [ComfyUI] sam3_model = get_or_build_model(sam3_model_config) [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model [02:00] [ComfyUI] from .sam3.predictor import Sam3VideoPredictor [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in [02:00] [ComfyUI] from .model import ( [02:00] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in [02:00] [ComfyUI] from timm.models.layers import DropPath, trunc_normal_ [02:00] [ComfyUI] ModuleNotFoundError: No module named 'timm' [02:00] [ComfyUI] [02:00] [ComfyUI] Prompt executed in 1.22 seconds [02:01] Node executed (1 total), capturing... [02:01] Frame 2 saved (frame_001.jpg, t=2.0s) [02:01] [capture-node] freeze=51ms shot=406ms unfreeze=0ms saved=True [02:01] Execution complete (t=2.0s) [02:01] Execution error: {'prompt_id': 'b5bc43c4-ece5-4f8a-b6a6-678bddb7e452', 'node_id': '27', 'node_type': 'SAM3MultipromptSegmentation', 'executed': ['1', '20', '12'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 695, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'refinement_iterations': [0], 'use_multimask': [False], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.9176, 0.8392, 0.7333],\n [0.9294, 0.8471, 0.7412],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8039, 0.6588, 0.4863],\n [0.8157, 0.6706, 0.4980]],\n\n [[0.9137, 0.8353, 0.7294],\n [0.9216, 0.8392, 0.7333],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8039, 0.6588, 0.4863],\n [0.8039, 0.6588, 0.4863],\n [0.8118, 0.6667, 0.4941]],\n\n [[0.9137, 0.8314, 0.7255],\n [0.9137, 0.8314, 0.7255],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8118, 0.6667, 0.4941],\n [0.8039, 0.6588, 0.4863]],\n\n ...,\n\n [[0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6471, 0.4431, 0.2549],\n [0.6392, 0.4353, 0.2471],\n [0.6471, 0.4431, 0.2549]],\n\n [[0.8588, 0.6706, 0.4824],\n [0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6431, 0.4392, 0.2510],\n [0.6471, 0.4431, 0.2549],\n [0.6549, 0.4510, 0.2627]],\n\n [[0.8627, 0.6745, 0.4863],\n [0.8667, 0.6784, 0.4902],\n [0.8784, 0.6902, 0.5020],\n ...,\n [0.6353, 0.4314, 0.2431],\n [0.6431, 0.4392, 0.2510],\n [0.6392, 0.4353, 0.2471]]]])'], 'multi_prompts': ["[{'id': 0, 'positive_points': {'points': [[0.7518972528753959, 0.6355044797738758], [0.7340045522905485, 0.6593619024052091], [0.7021953068063758, 0.6623440802341257], [0.6902668397498108, 0.677254969378709], [0.668397983479442, 0.6742727915497924], [0.7180999295484621, 0.6176114128003758], [0.7180999295484621, 0.572878745366626], [0.7439449415043526, 0.5311282557617927], [0.7240641630767446, 0.5609500340509593], [0.6982191511208541, 0.5609500340509593]], 'labels': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.7141237738629407, 0.6056827014847093, 0.15109391604982114, 0.19085938105066613]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 1, 'positive_points': {'points': [[0.6513952517072837, 0.6001522443905642], [0.6354008929467748, 0.6921217188777309], [0.6433980723270292, 0.8680633222444846], [0.8859791801947458, 0.884058013459644], [0.9046392654153393, 0.6041509171943541], [0.9046392654153393, 0.5441708251375063], [0.8060073863922018, 0.5201787883147672]], 'labels': [1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [[0.7180384132094035, 0.5921548987829846], [0.7180384132094035, 0.5921548987829846], [0.7393642248900819, 0.6601323364474121], [0.7393642248900819, 0.6601323364474121], [0.7446956778102515, 0.6841243732701512], [0.7446956778102515, 0.6841243732701512], [0.670055336927877, 0.6721283548587816], [0.670055336927877, 0.6721283548587816], [0.6913811486085556, 0.608149589998144], [0.6913811486085556, 0.608149589998144], [0.6887154221484707, 0.552168170745086], [0.6887154221484707, 0.552168170745086], [0.7100412338291491, 0.552168170745086], [0.7100412338291491, 0.552168170745086], [0.7366984984299972, 0.552168170745086], [0.7366984984299972, 0.552168170745086]], 'labels': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'positive_boxes': {'boxes': [[0.7713529424110994, 0.7141144192985751, 0.31455572229000606, 0.4198606443979348]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 2, 'positive_points': {'points': [[0.5279788816577594, 0.8586378093779201], [0.5097671062510242, 0.6517998210195123], [0.4733435554375539, 0.64789721746558], [0.37968299620291596, 0.64789721746558], [0.39529308940868896, 0.8313195845003946], [0.5565973858683432, 0.8586378093779201], [0.569605796873154, 0.6439946139116478]], 'labels': [1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [[0.4863519664423647, 0.7415597027599534], [0.4863519664423647, 0.7415597027599534], [0.4837502842414026, 0.8508326022700556], [0.4837502842414026, 0.8508326022700556], [0.4473267334279323, 0.8664430164857846], [0.4473267334279323, 0.8664430164857846], [0.43431832242312146, 0.628384199695919], [0.43431832242312146, 0.628384199695919], [0.5123687884519864, 0.5893581641565967], [0.5123687884519864, 0.5893581641565967], [0.5019620596481378, 0.6361894068037834], [0.5019620596481378, 0.6361894068037834], [0.4291149580211971, 0.6400920103577157], [0.4291149580211971, 0.6400920103577157]], 'labels': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'positive_boxes': {'boxes': [[0.47724607873899716, 0.7591214187526485, 0.21593962267985972, 0.24586402389773]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 3, 'positive_points': {'points': [[0.43642532993691785, 0.595717523200948]], 'labels': [1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.4324084720788661, 0.6137937552745099, 0.06426972572882772, 0.07230492829424773]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 4, 'positive_points': {'points': [[0.5006950556657457, 0.595717523200948]], 'labels': [1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.5027034845947715, 0.5716158804361987, 0.09238773073518991, 0.1687114993532448]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 5, 'positive_points': {'points': [[0.9264819886192297, 0.384828149009392], [0.7939256793035224, 0.37880273831820466], [0.7939256793035224, 0.11368466790596292], [0.9304988464772813, 0.10765925721477561], [0.874262836464557, 0.22214206034733455], [0.8501616893162467, 0.22214206034733455], [0.846144831458195, 0.31854863140633155], [0.8983639836128675, 0.3004723993327696], [0.8943471257548158, 0.20406582827377262], [0.8943471257548158, 0.12573548928833755], [0.8421279736001431, 0.1558625427442741], [0.830077400025988, 0.28842157795039497], [0.8220436843098845, 0.33059945278870617]], 'labels': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.8662291207484536, 0.25829452449445844, 0.18477546147037982, 0.31332135594174026]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 6, 'positive_points': {'points': [[0.7045792285036274, 0.9568116711293354], [0.6789425589101554, 0.9568116711293354], [0.6569682706871793, 0.9348369322210276], [0.6716177961691634, 0.9293432474939506], [0.6569682706871793, 0.9403306169481045], [0.7082416098741234, 0.9403306169481045]], 'labels': [1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.6789425589101554, 0.943077459311643, 0.10254667837388842, 0.07141790145200044]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}]"]}, 'current_outputs': ['1', '12', '26', '4', '20', '23', '3', '24', '22', '27'], 'timestamp': 1778443992007} [02:02] Capturing execution frames: scene_seg_interactive.json [02:08] Frame 1 saved (frame_000.jpg, t=0.0s) [02:08] Validating workflow... [02:08] [ComfyUI] === /validate endpoint called === [02:08] [ComfyUI] Received JSON with keys: ['prompt'] [02:08] [ComfyUI] Prompt has 4 nodes [02:08] [ComfyUI] Node 1: LoadImage [02:08] [ComfyUI] Inputs: {"image": "image.png"} [02:08] [ComfyUI] Node 4: MaskPreview [02:08] [ComfyUI] Inputs: {"mask": ["26", 0]} [02:08] [ComfyUI] Node 12: LoadSAM3Model [02:08] [ComfyUI] Inputs: {"precision": "auto", "compile": false} [02:08] [ComfyUI] Node 26: SAM3InteractiveCollector [02:08] [ComfyUI] Inputs: {"multi_prompts_store": "[{\"positive_points\":[{\"x\":3348.288109906738,\"y\":2452.2208696844737}],\"negative_points\":[],\"positive_boxes\":[],\"negative_boxes\":[],\"name\":\"Prompt 1\"},{\"positiv [02:08] [ComfyUI] Generated prompt_id: 99f1aad5-1dc5-4237-90e3-dd699fde2642 [02:08] [ComfyUI] Calling execution.validate_prompt()... [02:08] Queuing workflow for execution... [02:08] [ComfyUI] Validation result: valid=True [02:08] [ComfyUI] === Validation PASSED === [02:08] [ComfyUI] got prompt [02:08] [ComfyUI] WARNING: 'NoneType' object has no attribute 'shape' [02:08] [ComfyUI] Resolved precision: auto -> fp32 [02:08] [ComfyUI] SAM3 model cache miss — building model... [02:08] [ComfyUI] !!! Exception during processing !!! No module named 'timm' [02:08] [ComfyUI] Traceback (most recent call last): [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 58, in [02:08] [ComfyUI] from timm.layers import DropPath, trunc_normal_ [02:08] [ComfyUI] ModuleNotFoundError: No module named 'timm' [02:08] [ComfyUI] [02:08] [ComfyUI] During handling of the above exception, another exception occurred: [02:08] [ComfyUI] [02:08] [ComfyUI] Traceback (most recent call last): [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute [02:08] [ComfyUI] output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data [02:08] [ComfyUI] return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list [02:08] [ComfyUI] await process_inputs(input_dict, i) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs [02:08] [ComfyUI] result = f(**inputs) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func [02:08] [ComfyUI] return method(locked_class, **inputs) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED [02:08] [ComfyUI] to_return = cls.execute(*args, **kwargs) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3_interactive.py", line 667, in execute [02:08] [ComfyUI] sam3_model = get_or_build_model(sam3_model_config) [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model [02:08] [ComfyUI] from .sam3.predictor import Sam3VideoPredictor [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in [02:08] [ComfyUI] from .model import ( [02:08] [ComfyUI] File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in [02:08] [ComfyUI] from timm.models.layers import DropPath, trunc_normal_ [02:08] [ComfyUI] ModuleNotFoundError: No module named 'timm' [02:08] [ComfyUI] [02:08] [ComfyUI] Prompt executed in 0.73 seconds [02:09] Execution complete (t=1.3s) [02:09] Execution error: {'prompt_id': '2cedbdd6-f7e5-47c0-a492-e2e6804e82a4', 'node_id': '26', 'node_type': 'SAM3InteractiveCollector', 'executed': ['1', '12'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3_interactive.py", line 667, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'multi_prompts_store': ['[{"positive_points":[{"x":3348.288109906738,"y":2452.2208696844737}],"negative_points":[],"positive_boxes":[],"negative_boxes":[],"name":"Prompt 1"},{"positive_points":[],"negative_points":[],"positive_boxes":[],"negative_boxes":[],"name":"Prompt 2"}]'], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'auto', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.9176, 0.8392, 0.7333],\n [0.9294, 0.8471, 0.7412],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8039, 0.6588, 0.4863],\n [0.8157, 0.6706, 0.4980]],\n\n [[0.9137, 0.8353, 0.7294],\n [0.9216, 0.8392, 0.7333],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8039, 0.6588, 0.4863],\n [0.8039, 0.6588, 0.4863],\n [0.8118, 0.6667, 0.4941]],\n\n [[0.9137, 0.8314, 0.7255],\n [0.9137, 0.8314, 0.7255],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8118, 0.6667, 0.4941],\n [0.8039, 0.6588, 0.4863]],\n\n ...,\n\n [[0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6471, 0.4431, 0.2549],\n [0.6392, 0.4353, 0.2471],\n [0.6471, 0.4431, 0.2549]],\n\n [[0.8588, 0.6706, 0.4824],\n [0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6431, 0.4392, 0.2510],\n [0.6471, 0.4431, 0.2549],\n [0.6549, 0.4510, 0.2627]],\n\n [[0.8627, 0.6745, 0.4863],\n [0.8667, 0.6784, 0.4902],\n [0.8784, 0.6902, 0.5020],\n ...,\n [0.6353, 0.4314, 0.2431],\n [0.6431, 0.4392, 0.2510],\n [0.6392, 0.4353, 0.2471]]]])']}, 'current_outputs': ['1', '12', '26', '4'], 'timestamp': 1778444000255} [02:09] [5/5] SKIPPED (not in cpu list) video_point_prompt.json [02:09] Results saved to /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/SAM3-2011/dev/linux-cpu/results.json [02:09] Model report: 1 files, 3.2 GB -> /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/SAM3-2011/dev/linux-cpu/models.json [02:09] Saved: /home/runner/work/comfy-gpu-ci/comfy-gpu-ci/comfy-test-logs/SAM3-2011/dev/linux-cpu/index.html [02:09] linux: FAILED [02:09] Error: Workflow execution failed (4 error(s)) [02:09] Details: image_seg_point.json: Workflow execution failed: {'prompt_id': '52089ef3-4eb1-4695-bcca-c9b8bea204db', 'node_id': '31', 'node_type': 'SAM3Segmentation', 'executed': ['15', '1', '30'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 469, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'refinement_iterations': [0], 'use_multimask': [True], 'output_best_mask': [True], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'auto', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3176, 0.5765, 0.7176],\n [0.3333, 0.5961, 0.7451],\n [0.3529, 0.6157, 0.7647]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3137, 0.5725, 0.7137],\n [0.3137, 0.5765, 0.7255],\n [0.3255, 0.5882, 0.7373]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3882, 0.5294, 0.6235],\n [0.3922, 0.5216, 0.6196],\n [0.3961, 0.5255, 0.6235]],\n\n ...,\n\n [[0.4941, 0.4784, 0.4157],\n [0.4941, 0.4784, 0.4157],\n [0.4980, 0.4824, 0.4196],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5098, 0.4941, 0.4314],\n [0.5098, 0.4941, 0.4314],\n [0.5137, 0.4980, 0.4353],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5176, 0.5020, 0.4392],\n [0.5216, 0.5059, 0.4431],\n [0.5255, 0.5098, 0.4471],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]]]])'], 'positive_points': ["{'points': [[0.3330291853098248, 0.4464251623052616], [0.32588862185381995, 0.5657519162372204], [0.3373135233834277, 0.7637835504221735]], 'labels': [1, 1, 1]}"], 'negative_points': ["{'points': [], 'labels': []}"]}, 'current_outputs': ['1', '31', '15', '29', '30', '28'], 'timestamp': 1778443976373} Details: Workflow: /tmp/comfy-test-run-8rnbyah6/ComfyUI-SAM3/workflows/image_seg_point.json Node error: SAM3Segmentation image_seg_text.json: Workflow execution failed: {'prompt_id': '50ffbc93-0b89-44e8-bf0d-5c27b450b5eb', 'node_id': '15', 'node_type': 'SAM3Grounding', 'executed': ['1', '12'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 86, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'confidence_threshold': [0.2], 'text_prompt': ['child'], 'max_detections': [-1], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3176, 0.5765, 0.7176],\n [0.3333, 0.5961, 0.7451],\n [0.3529, 0.6157, 0.7647]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3137, 0.5725, 0.7137],\n [0.3137, 0.5765, 0.7255],\n [0.3255, 0.5882, 0.7373]],\n\n [[0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n [0.2863, 0.4588, 0.5922],\n ...,\n [0.3882, 0.5294, 0.6235],\n [0.3922, 0.5216, 0.6196],\n [0.3961, 0.5255, 0.6235]],\n\n ...,\n\n [[0.4941, 0.4784, 0.4157],\n [0.4941, 0.4784, 0.4157],\n [0.4980, 0.4824, 0.4196],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5098, 0.4941, 0.4314],\n [0.5098, 0.4941, 0.4314],\n [0.5137, 0.4980, 0.4353],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]],\n\n [[0.5176, 0.5020, 0.4392],\n [0.5216, 0.5059, 0.4431],\n [0.5255, 0.5098, 0.4471],\n ...,\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020],\n [0.5608, 0.5529, 0.5020]]]])']}, 'current_outputs': ['1', '12', '15', '4', '3'], 'timestamp': 1778443984182} Details: Workflow: /tmp/comfy-test-run-8rnbyah6/ComfyUI-SAM3/workflows/image_seg_text.json Node error: SAM3Grounding scene_seg.json: Workflow execution failed: {'prompt_id': 'b5bc43c4-ece5-4f8a-b6a6-678bddb7e452', 'node_id': '27', 'node_type': 'SAM3MultipromptSegmentation', 'executed': ['1', '20', '12'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/segmentation.py", line 695, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'refinement_iterations': [0], 'use_multimask': [False], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'fp32', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.9176, 0.8392, 0.7333],\n [0.9294, 0.8471, 0.7412],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8039, 0.6588, 0.4863],\n [0.8157, 0.6706, 0.4980]],\n\n [[0.9137, 0.8353, 0.7294],\n [0.9216, 0.8392, 0.7333],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8039, 0.6588, 0.4863],\n [0.8039, 0.6588, 0.4863],\n [0.8118, 0.6667, 0.4941]],\n\n [[0.9137, 0.8314, 0.7255],\n [0.9137, 0.8314, 0.7255],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8118, 0.6667, 0.4941],\n [0.8039, 0.6588, 0.4863]],\n\n ...,\n\n [[0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6471, 0.4431, 0.2549],\n [0.6392, 0.4353, 0.2471],\n [0.6471, 0.4431, 0.2549]],\n\n [[0.8588, 0.6706, 0.4824],\n [0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6431, 0.4392, 0.2510],\n [0.6471, 0.4431, 0.2549],\n [0.6549, 0.4510, 0.2627]],\n\n [[0.8627, 0.6745, 0.4863],\n [0.8667, 0.6784, 0.4902],\n [0.8784, 0.6902, 0.5020],\n ...,\n [0.6353, 0.4314, 0.2431],\n [0.6431, 0.4392, 0.2510],\n [0.6392, 0.4353, 0.2471]]]])'], 'multi_prompts': ["[{'id': 0, 'positive_points': {'points': [[0.7518972528753959, 0.6355044797738758], [0.7340045522905485, 0.6593619024052091], [0.7021953068063758, 0.6623440802341257], [0.6902668397498108, 0.677254969378709], [0.668397983479442, 0.6742727915497924], [0.7180999295484621, 0.6176114128003758], [0.7180999295484621, 0.572878745366626], [0.7439449415043526, 0.5311282557617927], [0.7240641630767446, 0.5609500340509593], [0.6982191511208541, 0.5609500340509593]], 'labels': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.7141237738629407, 0.6056827014847093, 0.15109391604982114, 0.19085938105066613]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 1, 'positive_points': {'points': [[0.6513952517072837, 0.6001522443905642], [0.6354008929467748, 0.6921217188777309], [0.6433980723270292, 0.8680633222444846], [0.8859791801947458, 0.884058013459644], [0.9046392654153393, 0.6041509171943541], [0.9046392654153393, 0.5441708251375063], [0.8060073863922018, 0.5201787883147672]], 'labels': [1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [[0.7180384132094035, 0.5921548987829846], [0.7180384132094035, 0.5921548987829846], [0.7393642248900819, 0.6601323364474121], [0.7393642248900819, 0.6601323364474121], [0.7446956778102515, 0.6841243732701512], [0.7446956778102515, 0.6841243732701512], [0.670055336927877, 0.6721283548587816], [0.670055336927877, 0.6721283548587816], [0.6913811486085556, 0.608149589998144], [0.6913811486085556, 0.608149589998144], [0.6887154221484707, 0.552168170745086], [0.6887154221484707, 0.552168170745086], [0.7100412338291491, 0.552168170745086], [0.7100412338291491, 0.552168170745086], [0.7366984984299972, 0.552168170745086], [0.7366984984299972, 0.552168170745086]], 'labels': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'positive_boxes': {'boxes': [[0.7713529424110994, 0.7141144192985751, 0.31455572229000606, 0.4198606443979348]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 2, 'positive_points': {'points': [[0.5279788816577594, 0.8586378093779201], [0.5097671062510242, 0.6517998210195123], [0.4733435554375539, 0.64789721746558], [0.37968299620291596, 0.64789721746558], [0.39529308940868896, 0.8313195845003946], [0.5565973858683432, 0.8586378093779201], [0.569605796873154, 0.6439946139116478]], 'labels': [1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [[0.4863519664423647, 0.7415597027599534], [0.4863519664423647, 0.7415597027599534], [0.4837502842414026, 0.8508326022700556], [0.4837502842414026, 0.8508326022700556], [0.4473267334279323, 0.8664430164857846], [0.4473267334279323, 0.8664430164857846], [0.43431832242312146, 0.628384199695919], [0.43431832242312146, 0.628384199695919], [0.5123687884519864, 0.5893581641565967], [0.5123687884519864, 0.5893581641565967], [0.5019620596481378, 0.6361894068037834], [0.5019620596481378, 0.6361894068037834], [0.4291149580211971, 0.6400920103577157], [0.4291149580211971, 0.6400920103577157]], 'labels': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'positive_boxes': {'boxes': [[0.47724607873899716, 0.7591214187526485, 0.21593962267985972, 0.24586402389773]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 3, 'positive_points': {'points': [[0.43642532993691785, 0.595717523200948]], 'labels': [1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.4324084720788661, 0.6137937552745099, 0.06426972572882772, 0.07230492829424773]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 4, 'positive_points': {'points': [[0.5006950556657457, 0.595717523200948]], 'labels': [1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.5027034845947715, 0.5716158804361987, 0.09238773073518991, 0.1687114993532448]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 5, 'positive_points': {'points': [[0.9264819886192297, 0.384828149009392], [0.7939256793035224, 0.37880273831820466], [0.7939256793035224, 0.11368466790596292], [0.9304988464772813, 0.10765925721477561], [0.874262836464557, 0.22214206034733455], [0.8501616893162467, 0.22214206034733455], [0.846144831458195, 0.31854863140633155], [0.8983639836128675, 0.3004723993327696], [0.8943471257548158, 0.20406582827377262], [0.8943471257548158, 0.12573548928833755], [0.8421279736001431, 0.1558625427442741], [0.830077400025988, 0.28842157795039497], [0.8220436843098845, 0.33059945278870617]], 'labels': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.8662291207484536, 0.25829452449445844, 0.18477546147037982, 0.31332135594174026]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}, {'id': 6, 'positive_points': {'points': [[0.7045792285036274, 0.9568116711293354], [0.6789425589101554, 0.9568116711293354], [0.6569682706871793, 0.9348369322210276], [0.6716177961691634, 0.9293432474939506], [0.6569682706871793, 0.9403306169481045], [0.7082416098741234, 0.9403306169481045]], 'labels': [1, 1, 1, 1, 1, 1]}, 'negative_points': {'points': [], 'labels': []}, 'positive_boxes': {'boxes': [[0.6789425589101554, 0.943077459311643, 0.10254667837388842, 0.07141790145200044]], 'labels': [True]}, 'negative_boxes': {'boxes': [], 'labels': []}}]"]}, 'current_outputs': ['1', '12', '26', '4', '20', '23', '3', '24', '22', '27'], 'timestamp': 1778443992007} Details: Workflow: /tmp/comfy-test-run-8rnbyah6/ComfyUI-SAM3/workflows/scene_seg.json Node error: SAM3MultipromptSegmentation scene_seg_interactive.json: Workflow execution failed: {'prompt_id': '2cedbdd6-f7e5-47c0-a492-e2e6804e82a4', 'node_id': '26', 'node_type': 'SAM3InteractiveCollector', 'executed': ['1', '12'], 'exception_message': "No module named 'timm'\n", 'exception_type': 'ModuleNotFoundError', 'traceback': [' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 535, in execute\n output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 335, in get_output_data\n return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/internal/__init__.py", line 149, in wrapped_func\n return method(locked_class, **inputs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/comfy_api/latest/_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3_interactive.py", line 667, in execute\n sam3_model = get_or_build_model(sam3_model_config)\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/_model_cache.py", line 32, in get_or_build_model\n from .sam3.predictor import Sam3VideoPredictor\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/__init__.py", line 61, in \n from .model import (\n', ' File "/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/model.py", line 60, in \n from timm.models.layers import DropPath, trunc_normal_\n'], 'current_inputs': {'multi_prompts_store': ['[{"positive_points":[{"x":3348.288109906738,"y":2452.2208696844737}],"negative_points":[],"positive_boxes":[],"negative_boxes":[],"name":"Prompt 1"},{"positive_points":[],"negative_points":[],"positive_boxes":[],"negative_boxes":[],"name":"Prompt 2"}]'], 'sam3_model_config': ["{'checkpoint_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/models/sam3/sam3.safetensors', 'bpe_path': '/home/runner/work/comfy-gpu-ci/comfy-gpu-ci/test_workspaces/SAM3-2011/ComfyUI/custom_nodes/ComfyUI-SAM3/nodes/sam3/bpe_simple_vocab_16e6.txt.gz', 'precision': 'auto', 'dtype': 'fp32', 'compile': False}"], 'image': ['tensor([[[[0.9176, 0.8392, 0.7333],\n [0.9294, 0.8471, 0.7412],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8039, 0.6588, 0.4863],\n [0.8157, 0.6706, 0.4980]],\n\n [[0.9137, 0.8353, 0.7294],\n [0.9216, 0.8392, 0.7333],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8039, 0.6588, 0.4863],\n [0.8039, 0.6588, 0.4863],\n [0.8118, 0.6667, 0.4941]],\n\n [[0.9137, 0.8314, 0.7255],\n [0.9137, 0.8314, 0.7255],\n [0.9176, 0.8353, 0.7294],\n ...,\n [0.8078, 0.6627, 0.4902],\n [0.8118, 0.6667, 0.4941],\n [0.8039, 0.6588, 0.4863]],\n\n ...,\n\n [[0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6471, 0.4431, 0.2549],\n [0.6392, 0.4353, 0.2471],\n [0.6471, 0.4431, 0.2549]],\n\n [[0.8588, 0.6706, 0.4824],\n [0.8667, 0.6784, 0.4902],\n [0.8706, 0.6824, 0.4941],\n ...,\n [0.6431, 0.4392, 0.2510],\n [0.6471, 0.4431, 0.2549],\n [0.6549, 0.4510, 0.2627]],\n\n [[0.8627, 0.6745, 0.4863],\n [0.8667, 0.6784, 0.4902],\n [0.8784, 0.6902, 0.5020],\n ...,\n [0.6353, 0.4314, 0.2431],\n [0.6431, 0.4392, 0.2510],\n [0.6392, 0.4353, 0.2471]]]])']}, 'current_outputs': ['1', '12', '26', '4'], 'timestamp': 1778444000255} Details: Workflow: /tmp/comfy-test-run-8rnbyah6/ComfyUI-SAM3/workflows/scene_seg_interactive.json Node error: SAM3InteractiveCollector [02:09] Stopping ComfyUI server...