From 3d931bd420f140eb06fedbc301d2e234e3e6ef0f Mon Sep 17 00:00:00 2001 From: comfy-test Date: Wed, 13 May 2026 08:07:56 +0000 Subject: [PATCH] Update dev/windows-cpu --- dev/windows-cpu/index.html | 20 +- dev/windows-cpu/logs/sharp_basic.log | 347 +++--- dev/windows-cpu/logs/sharp_basic_console.log | 32 +- .../logs/sharp_basic_resources.csv | 68 +- dev/windows-cpu/logs/sharp_exif.log | 164 ++- dev/windows-cpu/logs/sharp_exif_console.log | 28 +- dev/windows-cpu/logs/sharp_exif_resources.csv | 16 +- dev/windows-cpu/models.json | 2 +- dev/windows-cpu/results.json | 26 +- dev/windows-cpu/session.log | 1063 ++++++++--------- .../videos/sharp_basic/frame_000.jpg | Bin 109747 -> 109748 bytes .../videos/sharp_basic/frame_001.jpg | Bin 112940 -> 112941 bytes .../videos/sharp_basic/frame_002.jpg | Bin 112612 -> 112611 bytes .../videos/sharp_basic/frame_003.jpg | Bin 112706 -> 112776 bytes .../videos/sharp_basic/frame_004.jpg | Bin 112845 -> 112870 bytes .../videos/sharp_basic/frame_005.jpg | Bin 112908 -> 113086 bytes .../videos/sharp_basic/frame_006.jpg | Bin 113087 -> 112409 bytes .../videos/sharp_basic/frame_007.jpg | Bin 112417 -> 0 bytes .../videos/sharp_exif/frame_000.jpg | Bin 111408 -> 111418 bytes 19 files changed, 850 insertions(+), 916 deletions(-) delete mode 100644 dev/windows-cpu/videos/sharp_basic/frame_007.jpg diff --git a/dev/windows-cpu/index.html b/dev/windows-cpu/index.html index 3b7478c..9682a6e 100644 --- a/dev/windows-cpu/index.html +++ b/dev/windows-cpu/index.html @@ -924,7 +924,7 @@

PozzettiAndrea/ComfyUI-Sharp Test Results

- 2026-05-13 08:04 UTC Windows-10-10.0.26100-SP0 AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD + 2026-05-13 08:07 UTC Windows-10-10.0.26100-SP0 AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD
@@ -960,7 +960,7 @@ fail
- 37.16s + 33.77s
@@ -974,7 +974,7 @@ fail
- 7.57s + 7.19s
@@ -988,24 +988,24 @@
sharp_basic - 37.16s + 33.77s
-
Workflow execution failed: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in <module>\n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in <module>\n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in <module>\n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in <module>\n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in <module>\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in <module>\n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in <module>\n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544} +
Workflow execution failed: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in <module>\n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in <module>\n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in <module>\n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in <module>\n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in <module>\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in <module>\n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in <module>\n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707} Details: -Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-50ml6u2s\ComfyUI-Sharp\workflows\sharp_basic.json +Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-17ziq1kb\ComfyUI-Sharp\workflows\sharp_basic.json Node error: SharpPredict
sharp_exif - 7.57s + 7.19s
-
Workflow execution failed: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in <module>\n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in <module>\n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in <module>\n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in <module>\n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in <module>\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in <module>\n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in <module>\n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667} +
Workflow execution failed: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in <module>\n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in <module>\n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in <module>\n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in <module>\n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in <module>\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in <module>\n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in <module>\n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518} Details: -Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-50ml6u2s\ComfyUI-Sharp\workflows\sharp_exif.json +Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-17ziq1kb\ComfyUI-Sharp\workflows\sharp_exif.json Node error: SharpPredict
@@ -1093,7 +1093,7 @@ Node error: SharpPredict
}); } - const workflowData = {"sharp_basic": {"src": "", "title": "sharp_basic", "status": "fail", "duration": "37.16", "log": "Capturing execution frames: sharp_basic.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"beach.jpg\"}\n [ComfyUI] Inputs: {\"image\": \"beach.jpg\"}\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n Queuing workflow for execution...\n [ComfyUI] Node 4: GeomPackPreviewGaussian\n [ComfyUI] Node 4: GeomPackPreviewGaussian\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"5\", 0], \"extrinsics\": [\"5\", 1], \"intrinsics\": [\"5\", 2]}\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"5\", 0], \"extrinsics\": [\"5\", 1], \"intrinsics\": [\"5\", 2]}\n [ComfyUI] Node 5: SharpPredict\n [ComfyUI] Node 5: SharpPredict\n [ComfyUI] Inputs: {\"focal_length_mm\": 30, \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"1\", 0]}\n [ComfyUI] Inputs: {\"focal_length_mm\": 30, \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"1\", 0]}\n [ComfyUI] Generated prompt_id: 91fa69bd-a3a0-4951-8933-081cd96330a3\n [ComfyUI] Generated prompt_id: 91fa69bd-a3a0-4951-8933-081cd96330a3\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [comfy-env] SubprocessWorker: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [comfy-env] SubprocessWorker: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI'}\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 237 DLLs\n [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 237 DLLs\n [ComfyUI] [ComfyUI-Sharp] python: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [ComfyUI-Sharp] python: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp']\n [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [SubprocessWorker] launching cmd=['C:\\\\Users\\\\runneradmin\\\\.pixi\\\\bin\\\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py', 'tcp://127.0.0.1:51977']...\n [ComfyUI] [SubprocessWorker] launching cmd=['C:\\\\Users\\\\runneradmin\\\\.pixi\\\\bin\\\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py', 'tcp://127.0.0.1:51977']...\n Frame 2 saved (frame_001.jpg, t=2.5s)\n [capture-periodic] freeze=4ms shot=140ms unfreeze=7ms saved=True\n [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.\n [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.\n Frame 3 saved (frame_002.jpg, t=4.7s)\n [capture-periodic] freeze=4ms shot=107ms unfreeze=3ms saved=True\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=1 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=1 sending call_method\n [capture-loop] iter=50 t=6.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=6 ram=4.9/16.0GB (31%) swap=0.2/2.9GB (7%) cpu=44% browser_rss=0.71GB\n [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] sharp_2572gikvuh.pt: 0%| | 0.00/2.81G [00:00\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 535, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 535, in execute\n [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)\n [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)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 335, in get_output_data\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 335, in get_output_data\n [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)\n [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)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] result = f(**inputs)\n [ComfyUI] result = f(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] result = worker.call_method(\n [ComfyUI] result = worker.call_method(\n [ComfyUI] module_name=mod,\n [ComfyUI] module_name=mod,\n [ComfyUI] ...<4 lines>...\n [ComfyUI] ...<4 lines>...\n [ComfyUI] timeout=600.0,\n [ComfyUI] timeout=600.0,\n [ComfyUI] )\n [ComfyUI] )\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] raise WorkerError(\n [ComfyUI] raise WorkerError(\n [ComfyUI] ...<2 lines>...\n [ComfyUI] ...<2 lines>...\n [ComfyUI] )\n [ComfyUI] )\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py\", line 1762, in main\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] result = method(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Prompt executed in 27.88 seconds\n [ComfyUI] Prompt executed in 27.88 seconds\n Execution complete (t=28.3s)\n Execution error: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n module_name=mod,\\n ...<4 lines>...\\n timeout=600.0,\\n )\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n ...<2 lines>...\\n )\\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0757\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n ...,\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': [\"{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544}\n Status: FAILED\n Error: Workflow execution failed: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n module_name=mod,\\n ...<4 lines>...\\n timeout=600.0,\\n )\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n ...<2 lines>...\\n )\\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0757\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n ...,\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': [\"{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', \n... (truncated)", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD"}}, "sharp_exif": {"src": "", "title": "sharp_exif", "status": "fail", "duration": "7.57", "log": "Capturing execution frames: sharp_exif.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Node 7: SharpPredict\n [ComfyUI] Node 7: SharpPredict\n Queuing workflow for execution...\n [ComfyUI] Inputs: {\"focal_length_mm\": [\"9\", 2], \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"9\", 0]}\n [ComfyUI] Inputs: {\"focal_length_mm\": [\"9\", 2], \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"9\", 0]}\n [ComfyUI] Node 8: GeomPackPreviewGaussian\n [ComfyUI] Node 8: GeomPackPreviewGaussian\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"7\", 0], \"extrinsics\": [\"7\", 1], \"intrinsics\": [\"7\", 2]}\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"7\", 0], \"extrinsics\": [\"7\", 1], \"intrinsics\": [\"7\", 2]}\n [ComfyUI] Node 9: LoadImageWithExif\n [ComfyUI] Node 9: LoadImageWithExif\n [ComfyUI] Inputs: {\"image\": \"eth3d.png\", \"default_focal_mm\": 30}\n [ComfyUI] Inputs: {\"image\": \"eth3d.png\", \"default_focal_mm\": 30}\n [ComfyUI] Generated prompt_id: 649e627c-f8f2-4468-a244-3d9dd694e972\n [ComfyUI] Generated prompt_id: 649e627c-f8f2-4468-a244-3d9dd694e972\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] Running LoadImageWithExif: image: 'eth3d.png', default_focal_mm: 30.0\n [ComfyUI] [comfy-env] Running LoadImageWithExif: image: 'eth3d.png', default_focal_mm: 30.0\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_image_exif.LoadImageWithExif.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_image_exif.LoadImageWithExif.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=3 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=3 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadImageWithExif done (0.64s): result: NodeOutput\n [ComfyUI] [comfy-env] LoadImageWithExif done (0.64s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=4 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=4 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSharpModel done (0.37s): result: NodeOutput\n [ComfyUI] [comfy-env] LoadSharpModel done (0.37s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu\n [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=5 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=5 sending call_method\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 2022, 3040, 3]\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 2022, 3040, 3]\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [SubprocessWorker] got response: error\n [ComfyUI] [SubprocessWorker] got response: error\n [ComfyUI] !!! Exception during processing !!! No module named 'transformers'\n [ComfyUI] !!! Exception during processing !!! No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py\", line 1762, in main\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] result = method(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 535, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 535, in execute\n [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)\n [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)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 335, in get_output_data\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 335, in get_output_data\n [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)\n [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)\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] result = f(**inputs)\n [ComfyUI] result = f(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] result = worker.call_method(\n [ComfyUI] result = worker.call_method(\n [ComfyUI] module_name=mod,\n [ComfyUI] module_name=mod,\n [ComfyUI] ...<4 lines>...\n [ComfyUI] ...<4 lines>...\n [ComfyUI] timeout=600.0,\n [ComfyUI] timeout=600.0,\n [ComfyUI] )\n [ComfyUI] )\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] raise WorkerError(\n [ComfyUI] raise WorkerError(\n [ComfyUI] ...<2 lines>...\n [ComfyUI] ...<2 lines>...\n [ComfyUI] )\n [ComfyUI] )\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py\", line 1762, in main\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] result = method(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n Execution complete (t=1.6s)\n [ComfyUI] Prompt executed in 1.35 seconds\n [ComfyUI] Prompt executed in 1.35 seconds\n Execution error: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n module_name=mod,\\n ...<4 lines>...\\n timeout=600.0,\\n )\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n ...<2 lines>...\\n )\\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0757\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\\n [0.2275, 0.1608, 0.1608],\\n [0.2275, 0.1647, 0.1529],\\n ...,\\n [0.4471, 0.4745, 0.4863],\\n [0.4510, 0.4745, 0.4863],\\n [0.4431, 0.4745, 0.4745]],\\n\\n [[0.2196, 0.1686, 0.1569],\\n [0.2314, 0.1647, 0.1608],\\n [0.2353, 0.1647, 0.1647],\\n ...,\\n [0.4549, 0.4784, 0.4706],\\n [0.4549, 0.4706, 0.4784],\\n [0.4431, 0.4706, 0.4667]],\\n\\n [[0.2314, 0.1725, 0.1569],\\n [0.2510, 0.1725, 0.1608],\\n [0.2392, 0.1725, 0.1686],\\n ...,\\n [0.4588, 0.4745, 0.4627],\\n [0.4510, 0.4745, 0.4667],\\n [0.4471, 0.4706, 0.4627]],\\n\\n ...,\\n\\n [[0.1569, 0.1647, 0.1843],\\n [0.1647, 0.1725, 0.1882],\\n [0.1490, 0.1686, 0.1922],\\n ...,\\n [0.1020, 0.1137, 0.1373],\\n [0.1137, 0.1176, 0.1412],\\n [0.0863, 0.1176, 0.1373]],\\n\\n [[0.1569, 0.1686, 0.1804],\\n [0.1569, 0.1647, 0.1961],\\n [0.1490, 0.1647, 0.1961],\\n ...,\\n [0.1059, 0.1216, 0.1294],\\n [0.1176, 0.1216, 0.1333],\\n [0.1059, 0.1137, 0.1373]],\\n\\n [[0.1608, 0.1686, 0.1843],\\n [0.1608, 0.1686, 0.1882],\\n [0.1569, 0.1686, 0.1882],\\n ...,\\n [0.1059, 0.1176, 0.1333],\\n [0.1137, 0.1176, 0.1333],\\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': [\"{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667}\n Status: FAILED\n Error: Workflow execution failed: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n module_name=mod,\\n ...<4 lines>...\\n timeout=600.0,\\n )\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n ...<2 lines>...\\n )\\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0757\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\\n [0.2275, 0.1608, 0.1608],\\n [0.2275, 0.1647, 0.1529],\\n ...,\\n [0.4471, 0.4745, 0.4863],\\n [0.4510, 0.4745, 0.4863],\\n [0.4431, 0.4745, 0.4745]],\\n\\n [[0.2196, 0.1686, 0.1569],\\n [0.2314, 0.1647, 0.1608],\\n [0.2353, 0.1647, 0.1647],\\n ...,\\n [0.4549, 0.4784, 0.4706],\\n [0.4549, 0.4706, 0.4784],\\n [0.4431, 0.4706, 0.4667]],\\n\\n [[0.2314, 0.1725, 0.1569],\\n [0.2510, 0.1725, 0.1608],\\n [0.2392, 0.1725, 0.1686],\\n ...,\\n [0.4588, 0.4745, 0.4627],\\n [0.4510, 0.4745, 0.4667],\\n [0.4471, 0.4706, 0.4627]],\\n\\n ...,\\n\\n [[0.1569, 0.1647, 0.1843],\\n [0.1647, 0.1725, 0.1882],\\n [0.1490, 0.1686, 0.1922],\\n ...,\\n [0.1020, 0.1137, 0.1373],\\n [0.1137, 0.1176, 0.1412],\\n [0.0863, 0.1176, 0.1373]],\\n\\n [[0.1569, 0.1686, 0.1804],\\n [0.1569, 0.1647, 0.1961],\\n [0.1490, 0.1647, 0.1961],\\n ...,\\n [0.1059, 0.1216, 0.1294],\\n [0.1176, 0.1216, 0.1333],\\n [0.1059, 0.1137, 0.1373]],\\n\\n [[0.1608, 0.1686, 0.1843],\\n [0.1608, 0.1686, 0.1882],\\n [0.1569, 0.1686, 0.1882],\\n ...,\\n [0.1059, 0.1176, 0.1333],\\n [0.1137, 0.1176, 0.1333],\\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': [\"{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667}\n Details: Workflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-50ml6u2s\\ComfyUI-Sharp\\workflows\\sharp_exif.json\nNode error: SharpPredict", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD"}}}; + const workflowData = {"sharp_basic": {"src": "", "title": "sharp_basic", "status": "fail", "duration": "33.77", "log": "Capturing execution frames: sharp_basic.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Node 1: LoadImage\n [ComfyUI] Inputs: {\"image\": \"beach.jpg\"}\n [ComfyUI] Inputs: {\"image\": \"beach.jpg\"}\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Node 4: GeomPackPreviewGaussian\n [ComfyUI] Node 4: GeomPackPreviewGaussian\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"5\", 0], \"extrinsics\": [\"5\", 1], \"intrinsics\": [\"5\", 2]}\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"5\", 0], \"extrinsics\": [\"5\", 1], \"intrinsics\": [\"5\", 2]}\n Queuing workflow for execution...\n [ComfyUI] Node 5: SharpPredict\n [ComfyUI] Node 5: SharpPredict\n [ComfyUI] Inputs: {\"focal_length_mm\": 30, \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"1\", 0]}\n [ComfyUI] Inputs: {\"focal_length_mm\": 30, \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"1\", 0]}\n [ComfyUI] Generated prompt_id: 0d1be8d3-9c78-4d37-85ce-856d246ff005\n [ComfyUI] Generated prompt_id: 0d1be8d3-9c78-4d37-85ce-856d246ff005\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [comfy-env] SubprocessWorker: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [comfy-env] SubprocessWorker: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI'}\n [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI'}\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 236 DLLs\n [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 236 DLLs\n [ComfyUI] [ComfyUI-Sharp] python: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [ComfyUI-Sharp] python: C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp']\n [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages', 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp']\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\python.exe\n [ComfyUI] [SubprocessWorker] launching cmd=['C:\\\\Users\\\\runneradmin\\\\.pixi\\\\bin\\\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py', 'tcp://127.0.0.1:57385']...\n [ComfyUI] [SubprocessWorker] launching cmd=['C:\\\\Users\\\\runneradmin\\\\.pixi\\\\bin\\\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py', 'tcp://127.0.0.1:57385']...\n Frame 2 saved (frame_001.jpg, t=2.4s)\n [capture-periodic] freeze=7ms shot=127ms unfreeze=7ms saved=True\n [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.\n [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available.\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=1 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=1 sending call_method\n [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n [ComfyUI] \n [ComfyUI] \n Frame 3 saved (frame_002.jpg, t=4.7s)\n [capture-periodic] freeze=6ms shot=125ms unfreeze=6ms saved=True\n [capture-loop] iter=50 t=6.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=8 ram=5.1/16.0GB (32%) swap=0.2/2.9GB (6%) cpu=47% browser_rss=0.70GB\n [ComfyUI] sharp_2572gikvuh.pt: 0%| | 0.00/2.81G [00:00\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 535, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 535, in execute\n [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)\n [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)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 335, in get_output_data\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 335, in get_output_data\n [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)\n [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)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] result = f(**inputs)\n [ComfyUI] result = f(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] result = worker.call_method(\n [ComfyUI] result = worker.call_method(\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] raise WorkerError(\n [ComfyUI] raise WorkerError(\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py\", line 1762, in main\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] result = method(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Prompt executed in 24.14 seconds\n [ComfyUI] Prompt executed in 24.14 seconds\n Execution complete (t=24.5s)\n Execution error: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0800\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n ...,\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': [\"{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707}\n Status: FAILED\n Error: Workflow execution failed: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0800\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n ...,\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': [\"{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707}\n Details: Workflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-17ziq1kb\\ComfyUI-Sharp\\workflows\\sharp_basic.json\nNode error: SharpPredict", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD"}}, "sharp_exif": {"src": "", "title": "sharp_exif", "status": "fail", "duration": "7.19", "log": "Capturing execution frames: sharp_exif.json\n Frame 1 saved (frame_000.jpg, t=0.0s)\n Validating workflow...\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] === /validate endpoint called ===\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Received JSON with keys: ['prompt']\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Prompt has 4 nodes\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Node 2: LoadSharpModel\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Inputs: {\"precision\": \"auto\"}\n [ComfyUI] Node 7: SharpPredict\n [ComfyUI] Node 7: SharpPredict\n [ComfyUI] Inputs: {\"focal_length_mm\": [\"9\", 2], \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"9\", 0]}\n [ComfyUI] Inputs: {\"focal_length_mm\": [\"9\", 2], \"output_prefix\": \"sharp\", \"model\": [\"2\", 0], \"image\": [\"9\", 0]}\n Queuing workflow for execution...\n [ComfyUI] Node 8: GeomPackPreviewGaussian\n [ComfyUI] Node 8: GeomPackPreviewGaussian\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"7\", 0], \"extrinsics\": [\"7\", 1], \"intrinsics\": [\"7\", 2]}\n [ComfyUI] Inputs: {\"preview_gaussian\": \"\", \"ply_path\": [\"7\", 0], \"extrinsics\": [\"7\", 1], \"intrinsics\": [\"7\", 2]}\n [ComfyUI] Node 9: LoadImageWithExif\n [ComfyUI] Node 9: LoadImageWithExif\n [ComfyUI] Inputs: {\"image\": \"eth3d.png\", \"default_focal_mm\": 30}\n [ComfyUI] Inputs: {\"image\": \"eth3d.png\", \"default_focal_mm\": 30}\n [ComfyUI] Generated prompt_id: 2440ae15-c32b-415d-b065-aace32fcab2f\n [ComfyUI] Generated prompt_id: 2440ae15-c32b-415d-b065-aace32fcab2f\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Calling execution.validate_prompt()...\n [ComfyUI] Validation result: valid=True\n [ComfyUI] Validation result: valid=True\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] === Validation PASSED ===\n [ComfyUI] got prompt\n [ComfyUI] got prompt\n [ComfyUI] [comfy-env] Running LoadImageWithExif: image: 'eth3d.png', default_focal_mm: 30.0\n [ComfyUI] [comfy-env] Running LoadImageWithExif: image: 'eth3d.png', default_focal_mm: 30.0\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_image_exif.LoadImageWithExif.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_image_exif.LoadImageWithExif.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=3 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=3 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadImageWithExif done (0.44s): result: NodeOutput\n [ComfyUI] [comfy-env] LoadImageWithExif done (0.44s): result: NodeOutput\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto'\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=4 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=4 sending call_method\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [SubprocessWorker] got response: ok\n [ComfyUI] [comfy-env] LoadSharpModel done (0.15s): result: NodeOutput\n [ComfyUI] [comfy-env] LoadSharpModel done (0.15s): result: NodeOutput\n [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu\n [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu\n [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [SubprocessWorker] acquired lock, ensuring started...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)...\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [ComfyUI-Sharp] Health check: ok\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [SubprocessWorker] worker started/confirmed\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] serializing kwargs to shm...\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] created 0 shm blocks\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] sending request via socket...\n [ComfyUI] [SubprocessWorker] call_id=5 sending call_method\n [ComfyUI] [SubprocessWorker] call_id=5 sending call_method\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size']\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 2022, 3040, 3]\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 2022, 3040, 3]\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 2022, 3040, 3])\n [ComfyUI] [SubprocessWorker] got response: error\n [ComfyUI] [SubprocessWorker] got response: error\n [ComfyUI] !!! Exception during processing !!! No module named 'transformers'\n [ComfyUI] !!! Exception during processing !!! No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py\", line 1762, in main\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] result = method(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 535, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 535, in execute\n [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)\n [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)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 335, in get_output_data\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 335, in get_output_data\n [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)\n [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)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 309, in _async_map_node_over_list\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] await process_inputs(input_dict, i)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py\", line 297, in process_inputs\n [ComfyUI] result = f(**inputs)\n [ComfyUI] result = f(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py\", line 556, in proxy\n [ComfyUI] result = worker.call_method(\n [ComfyUI] result = worker.call_method(\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py\", line 674, in call_method\n [ComfyUI] raise WorkerError(\n [ComfyUI] raise WorkerError(\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Worker traceback:\n [ComfyUI] Worker traceback:\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] Traceback (most recent call last):\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py\", line 1762, in main\n [ComfyUI] File \"C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py\", line 1762, in main\n [ComfyUI] result = method(**inputs)\n [ComfyUI] result = method(**inputs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py\", line 1833, in EXECUTE_NORMALIZED\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] to_return = cls.execute(*args, **kwargs)\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] File \"C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py\", line 124, in decorate_context\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] return func(*args, **kwargs)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py\", line 111, in execute\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] patcher = _load_sharp_model(model)\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py\", line 75, in _load_sharp_model\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] import comfy.model_patcher\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py\", line 32, in \n [ComfyUI] import comfy.hooks\n [ComfyUI] import comfy.hooks\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py\", line 14, in \n [ComfyUI] import comfy.lora\n [ComfyUI] import comfy.lora\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py\", line 23, in \n [ComfyUI] import comfy.model_base\n [ComfyUI] import comfy.model_base\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py\", line 61, in \n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] import comfy.ldm.hidream_o1.model\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py\", line 20, in \n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py\", line 10, in \n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] from comfy import sd1_clip\n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] File \"D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py\", line 3, in \n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] from transformers import CLIPTokenizer\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] ModuleNotFoundError: No module named 'transformers'\n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] \n [ComfyUI] Prompt executed in 0.71 seconds\n [ComfyUI] Prompt executed in 0.71 seconds\n Execution complete (t=0.9s)\n Execution error: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0800\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\\n [0.2275, 0.1608, 0.1608],\\n [0.2275, 0.1647, 0.1529],\\n ...,\\n [0.4471, 0.4745, 0.4863],\\n [0.4510, 0.4745, 0.4863],\\n [0.4431, 0.4745, 0.4745]],\\n\\n [[0.2196, 0.1686, 0.1569],\\n [0.2314, 0.1647, 0.1608],\\n [0.2353, 0.1647, 0.1647],\\n ...,\\n [0.4549, 0.4784, 0.4706],\\n [0.4549, 0.4706, 0.4784],\\n [0.4431, 0.4706, 0.4667]],\\n\\n [[0.2314, 0.1725, 0.1569],\\n [0.2510, 0.1725, 0.1608],\\n [0.2392, 0.1725, 0.1686],\\n ...,\\n [0.4588, 0.4745, 0.4627],\\n [0.4510, 0.4745, 0.4667],\\n [0.4471, 0.4706, 0.4627]],\\n\\n ...,\\n\\n [[0.1569, 0.1647, 0.1843],\\n [0.1647, 0.1725, 0.1882],\\n [0.1490, 0.1686, 0.1922],\\n ...,\\n [0.1020, 0.1137, 0.1373],\\n [0.1137, 0.1176, 0.1412],\\n [0.0863, 0.1176, 0.1373]],\\n\\n [[0.1569, 0.1686, 0.1804],\\n [0.1569, 0.1647, 0.1961],\\n [0.1490, 0.1647, 0.1961],\\n ...,\\n [0.1059, 0.1216, 0.1294],\\n [0.1176, 0.1216, 0.1333],\\n [0.1059, 0.1137, 0.1373]],\\n\\n [[0.1608, 0.1686, 0.1843],\\n [0.1608, 0.1686, 0.1882],\\n [0.1569, 0.1686, 0.1882],\\n ...,\\n [0.1059, 0.1176, 0.1333],\\n [0.1137, 0.1176, 0.1333],\\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': [\"{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518}\n Status: FAILED\n Error: Workflow execution failed: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0800\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\\n [0.2275, 0.1608, 0.1608],\\n [0.2275, 0.1647, 0.1529],\\n ...,\\n [0.4471, 0.4745, 0.4863],\\n [0.4510, 0.4745, 0.4863],\\n [0.4431, 0.4745, 0.4745]],\\n\\n [[0.2196, 0.1686, 0.1569],\\n [0.2314, 0.1647, 0.1608],\\n [0.2353, 0.1647, 0.1647],\\n ...,\\n [0.4549, 0.4784, 0.4706],\\n [0.4549, 0.4706, 0.4784],\\n [0.4431, 0.4706, 0.4667]],\\n\\n [[0.2314, 0.1725, 0.1569],\\n [0.2510, 0.1725, 0.1608],\\n [0.2392, 0.1725, 0.1686],\\n ...,\\n [0.4588, 0.4745, 0.4627],\\n [0.4510, 0.4745, 0.4667],\\n [0.4471, 0.4706, 0.4627]],\\n\\n ...,\\n\\n [[0.1569, 0.1647, 0.1843],\\n [0.1647, 0.1725, 0.1882],\\n [0.1490, 0.1686, 0.1922],\\n ...,\\n [0.1020, 0.1137, 0.1373],\\n [0.1137, 0.1176, 0.1412],\\n [0.0863, 0.1176, 0.1373]],\\n\\n [[0.1569, 0.1686, 0.1804],\\n [0.1569, 0.1647, 0.1961],\\n [0.1490, 0.1647, 0.1961],\\n ...,\\n [0.1059, 0.1216, 0.1294],\\n [0.1176, 0.1216, 0.1333],\\n [0.1059, 0.1137, 0.1373]],\\n\\n [[0.1608, 0.1686, 0.1843],\\n [0.1608, 0.1686, 0.1882],\\n [0.1569, 0.1686, 0.1882],\\n ...,\\n [0.1059, 0.1176, 0.1333],\\n [0.1137, 0.1176, 0.1333],\\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': [\"{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518}\n Details: Workflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-17ziq1kb\\ComfyUI-Sharp\\workflows\\sharp_exif.json\nNode error: SharpPredict", "hardware": {"os": "Windows-10-10.0.26100-SP0", "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD"}}}; const workflowNames = Object.keys(workflowData); const videoData = {}; diff --git a/dev/windows-cpu/logs/sharp_basic.log b/dev/windows-cpu/logs/sharp_basic.log index d44e2c7..6c08f38 100644 --- a/dev/windows-cpu/logs/sharp_basic.log +++ b/dev/windows-cpu/logs/sharp_basic.log @@ -15,17 +15,17 @@ Capturing execution frames: sharp_basic.json [ComfyUI] Node 2: LoadSharpModel [ComfyUI] Inputs: {"precision": "auto"} [ComfyUI] Inputs: {"precision": "auto"} + [ComfyUI] Node 4: GeomPackPreviewGaussian + [ComfyUI] Node 4: GeomPackPreviewGaussian + [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["5", 0], "extrinsics": ["5", 1], "intrinsics": ["5", 2]} + [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["5", 0], "extrinsics": ["5", 1], "intrinsics": ["5", 2]} Queuing workflow for execution... - [ComfyUI] Node 4: GeomPackPreviewGaussian - [ComfyUI] Node 4: GeomPackPreviewGaussian - [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["5", 0], "extrinsics": ["5", 1], "intrinsics": ["5", 2]} - [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["5", 0], "extrinsics": ["5", 1], "intrinsics": ["5", 2]} [ComfyUI] Node 5: SharpPredict [ComfyUI] Node 5: SharpPredict [ComfyUI] Inputs: {"focal_length_mm": 30, "output_prefix": "sharp", "model": ["2", 0], "image": ["1", 0]} [ComfyUI] Inputs: {"focal_length_mm": 30, "output_prefix": "sharp", "model": ["2", 0], "image": ["1", 0]} - [ComfyUI] Generated prompt_id: 91fa69bd-a3a0-4951-8933-081cd96330a3 - [ComfyUI] Generated prompt_id: 91fa69bd-a3a0-4951-8933-081cd96330a3 + [ComfyUI] Generated prompt_id: 0d1be8d3-9c78-4d37-85ce-856d246ff005 + [ComfyUI] Generated prompt_id: 0d1be8d3-9c78-4d37-85ce-856d246ff005 [ComfyUI] Calling execution.validate_prompt()... [ComfyUI] Calling execution.validate_prompt()... [ComfyUI] Validation result: valid=True @@ -38,168 +38,154 @@ Capturing execution frames: sharp_basic.json [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' [ComfyUI] [comfy-env] SubprocessWorker: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe [ComfyUI] [comfy-env] SubprocessWorker: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe - [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI'} - [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI'} + [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI'} + [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI'} [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... - [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 237 DLLs - [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 237 DLLs + [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 236 DLLs + [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 236 DLLs [ComfyUI] [ComfyUI-Sharp] python: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe [ComfyUI] [ComfyUI-Sharp] python: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe - [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp'] - [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp'] + [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp'] + [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp'] [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe - [ComfyUI] [SubprocessWorker] launching cmd=['C:\\Users\\runneradmin\\.pixi\\bin\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py', 'tcp://127.0.0.1:51977']... - [ComfyUI] [SubprocessWorker] launching cmd=['C:\\Users\\runneradmin\\.pixi\\bin\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py', 'tcp://127.0.0.1:51977']... - Frame 2 saved (frame_001.jpg, t=2.5s) - [capture-periodic] freeze=4ms shot=140ms unfreeze=7ms saved=True + [ComfyUI] [SubprocessWorker] launching cmd=['C:\\Users\\runneradmin\\.pixi\\bin\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py', 'tcp://127.0.0.1:57385']... + [ComfyUI] [SubprocessWorker] launching cmd=['C:\\Users\\runneradmin\\.pixi\\bin\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py', 'tcp://127.0.0.1:57385']... + Frame 2 saved (frame_001.jpg, t=2.4s) + [capture-periodic] freeze=7ms shot=127ms unfreeze=7ms saved=True [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. + [ComfyUI] [SubprocessWorker] worker started/confirmed + [ComfyUI] [SubprocessWorker] worker started/confirmed + [ComfyUI] [SubprocessWorker] serializing kwargs to shm... + [ComfyUI] [SubprocessWorker] serializing kwargs to shm... + [ComfyUI] [SubprocessWorker] created 0 shm blocks + [ComfyUI] [SubprocessWorker] created 0 shm blocks + [ComfyUI] [SubprocessWorker] sending request via socket... + [ComfyUI] [SubprocessWorker] sending request via socket... + [ComfyUI] [SubprocessWorker] call_id=1 sending call_method + [ComfyUI] [SubprocessWorker] call_id=1 sending call_method + [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. + [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. + [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. + [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. + [ComfyUI] + [ComfyUI] Frame 3 saved (frame_002.jpg, t=4.7s) - [capture-periodic] freeze=4ms shot=107ms unfreeze=3ms saved=True - [ComfyUI] [SubprocessWorker] worker started/confirmed - [ComfyUI] [SubprocessWorker] worker started/confirmed - [ComfyUI] [SubprocessWorker] serializing kwargs to shm... - [ComfyUI] [SubprocessWorker] serializing kwargs to shm... - [ComfyUI] [SubprocessWorker] created 0 shm blocks - [ComfyUI] [SubprocessWorker] created 0 shm blocks - [ComfyUI] [SubprocessWorker] sending request via socket... - [ComfyUI] [SubprocessWorker] sending request via socket... - [ComfyUI] [SubprocessWorker] call_id=1 sending call_method - [ComfyUI] [SubprocessWorker] call_id=1 sending call_method - [capture-loop] iter=50 t=6.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=6 ram=4.9/16.0GB (31%) swap=0.2/2.9GB (7%) cpu=44% browser_rss=0.71GB - [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. - [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. - [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. - [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. - [ComfyUI] - [ComfyUI] + [capture-periodic] freeze=6ms shot=125ms unfreeze=6ms saved=True + [capture-loop] iter=50 t=6.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=8 ram=5.1/16.0GB (32%) swap=0.2/2.9GB (6%) cpu=47% browser_rss=0.70GB [ComfyUI] sharp_2572gikvuh.pt: 0%| | 0.00/2.81G [00:00 - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in [ComfyUI] import comfy.hooks [ComfyUI] import comfy.hooks - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in [ComfyUI] import comfy.lora [ComfyUI] import comfy.lora - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in [ComfyUI] import comfy.model_base [ComfyUI] import comfy.model_base - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in [ComfyUI] import comfy.ldm.hidream_o1.model [ComfyUI] import comfy.ldm.hidream_o1.model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in [ComfyUI] from comfy import sd1_clip [ComfyUI] from comfy import sd1_clip - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] ModuleNotFoundError: No module named 'transformers' @@ -298,46 +283,30 @@ Capturing execution frames: sharp_basic.json [ComfyUI] [ComfyUI] Traceback (most recent call last): [ComfyUI] Traceback (most recent call last): - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 535, in execute - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 535, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 535, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 535, in execute [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) [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) - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 335, in get_output_data - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 335, in get_output_data + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 335, in get_output_data + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 335, in get_output_data [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) [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) - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 309, in _async_map_node_over_list - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 309, in _async_map_node_over_list + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 309, in _async_map_node_over_list + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 309, in _async_map_node_over_list [ComfyUI] await process_inputs(input_dict, i) [ComfyUI] await process_inputs(input_dict, i) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 297, in process_inputs - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 297, in process_inputs + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 297, in process_inputs + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 297, in process_inputs [ComfyUI] result = f(**inputs) [ComfyUI] result = f(**inputs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy [ComfyUI] result = worker.call_method( [ComfyUI] result = worker.call_method( - [ComfyUI] module_name=mod, - [ComfyUI] module_name=mod, - [ComfyUI] ...<4 lines>... - [ComfyUI] ...<4 lines>... - [ComfyUI] timeout=600.0, - [ComfyUI] timeout=600.0, - [ComfyUI] ) - [ComfyUI] ) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method [ComfyUI] raise WorkerError( [ComfyUI] raise WorkerError( - [ComfyUI] ...<2 lines>... - [ComfyUI] ...<2 lines>... - [ComfyUI] ) - [ComfyUI] ) [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' [ComfyUI] @@ -346,52 +315,52 @@ Capturing execution frames: sharp_basic.json [ComfyUI] Worker traceback: [ComfyUI] Traceback (most recent call last): [ComfyUI] Traceback (most recent call last): - [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main - [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main + [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main + [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main [ComfyUI] result = method(**inputs) [ComfyUI] result = method(**inputs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED [ComfyUI] to_return = cls.execute(*args, **kwargs) [ComfyUI] to_return = cls.execute(*args, **kwargs) - [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context - [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context + [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context + [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context [ComfyUI] return func(*args, **kwargs) [ComfyUI] return func(*args, **kwargs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute [ComfyUI] patcher = _load_sharp_model(model) [ComfyUI] patcher = _load_sharp_model(model) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model [ComfyUI] import comfy.model_patcher [ComfyUI] import comfy.model_patcher - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in [ComfyUI] import comfy.hooks [ComfyUI] import comfy.hooks - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in [ComfyUI] import comfy.lora [ComfyUI] import comfy.lora - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in [ComfyUI] import comfy.model_base [ComfyUI] import comfy.model_base - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in [ComfyUI] import comfy.ldm.hidream_o1.model [ComfyUI] import comfy.ldm.hidream_o1.model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in [ComfyUI] from comfy import sd1_clip [ComfyUI] from comfy import sd1_clip - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] ModuleNotFoundError: No module named 'transformers' @@ -400,11 +369,11 @@ Capturing execution frames: sharp_basic.json [ComfyUI] [ComfyUI] [ComfyUI] - [ComfyUI] Prompt executed in 27.88 seconds - [ComfyUI] Prompt executed in 27.88 seconds - Execution complete (t=28.3s) - Execution error: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544} + [ComfyUI] Prompt executed in 24.14 seconds + [ComfyUI] Prompt executed in 24.14 seconds + Execution complete (t=24.5s) + Execution error: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707} Status: FAILED - Error: Workflow execution failed: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544} - Details: Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-50ml6u2s\ComfyUI-Sharp\workflows\sharp_basic.json + Error: Workflow execution failed: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707} + Details: Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-17ziq1kb\ComfyUI-Sharp\workflows\sharp_basic.json Node error: SharpPredict \ No newline at end of file diff --git a/dev/windows-cpu/logs/sharp_basic_console.log b/dev/windows-cpu/logs/sharp_basic_console.log index ba67420..987ce75 100644 --- a/dev/windows-cpu/logs/sharp_basic_console.log +++ b/dev/windows-cpu/logs/sharp_basic_console.log @@ -7,12 +7,8 @@ [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) -[Console-warning] WARNING: Multiple instances of Three.js being imported. -[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension -[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension... -[Console-log] [CompareSMPLBVH] Extension registered: comfy3d.comparesmplbvh -[Console-log] [GeomPack] Loading mesh preview extension... -[Console-log] [GeomPack] Mesh preview extension registered +[Console-log] [GeomPack] Loading VTK.js textured mesh preview extension... +[Console-log] [GeomPack] VTK.js textured mesh preview extension registered [Console-log] [FBX Preview] Auto-registering for all known FBX preview node types... [Console-log] [UniRig] Loading FBX mesh preview extension... [Console-log] [UniRig] Detected extension folder: ComfyUI-GeometryPack @@ -26,24 +22,28 @@ [Console-log] [MotionCapture] Loading FBX mesh preview extension... [Console-log] [MotionCapture] Detected extension folder: ComfyUI-GeometryPack [Console-log] [MotionCapture] FBX mesh preview extension registered -[Console-log] [GeomPack Gaussian] Loading extension... -[Console-log] [GeomPack Multi JS] Loading mesh_preview_multi.js extension [Console-log] [UniRig Compare] Loading compare skeleton widget... [Console-log] [UniRig Compare] Detected extension folder: ComfyUI-GeometryPack [Console-log] [UniRig Compare] Compare skeleton widget registered +[Console-log] [GeomPack] Loading UV mesh preview extension... +[Console-log] [GeomPack] UV mesh preview extension registered [Console-log] [BVHViewer] Loading BVH Viewer extension [Console-log] [BVHViewer] Loading BVH viewer extension... [Console-log] [BVHViewer] Extension registered: comfy3d.bvhviewer [Console-log] [UniRig Debug] Loading FBX mesh preview extension... [Console-log] [UniRig Debug] Detected extension folder: ComfyUI-GeometryPack [Console-log] [UniRig Debug] FBX mesh preview extension registered +[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension +[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension... +[Console-log] [CompareSMPLBVH] Extension registered: comfy3d.comparesmplbvh +[Console-log] [GeomPack Multi JS] Loading mesh_preview_multi.js extension [Console-log] [FBXAnimationViewer] Loading FBX Animation Viewer extension [Console-log] [FBXAnimationViewer] Loading FBX Animation Viewer extension... [Console-log] [FBXAnimationViewer] Extension registered: comfy3d.fbxanimationviewer -[Console-log] [GeomPack] Loading VTK.js textured mesh preview extension... -[Console-log] [GeomPack] VTK.js textured mesh preview extension registered -[Console-log] [GeomPack] Loading UV mesh preview extension... -[Console-log] [GeomPack] UV mesh preview extension registered +[Console-log] [GeomPack Gaussian] Loading extension... +[Console-log] [GeomPack] Loading mesh preview extension... +[Console-log] [GeomPack] Mesh preview extension registered +[Console-warning] WARNING: Multiple instances of Three.js being imported. [Console-log] [VTK Bundle] GLTFImporter included in bundle [Console-warning] [MaskEditor] ComfyApp.open_maskeditor is deprecated. Plugins should migrate to using the command system or direct node context menu integration. [Console-log] [GeomPack] Registering Preview Mesh node @@ -51,8 +51,8 @@ [Console-log] [GeomPack Gaussian] Registering Preview Gaussian node [Console-log] [GaussianViewer] Initialized successfully [Console-log] [GaussianViewer] Ready - waiting for LOAD_MESH message -[Console-warning] [.WebGL-0x43ac08c92400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels -[Console-warning] [.WebGL-0x43ac08c92400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels -[Console-warning] [.WebGL-0x43ac08c92400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels -[Console-warning] [.WebGL-0x43ac08c92400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat) +[Console-warning] [.WebGL-0x155c040b0400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels +[Console-warning] [.WebGL-0x155c040b0400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels +[Console-warning] [.WebGL-0x155c040b0400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels +[Console-warning] [.WebGL-0x155c040b0400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat) [Console-log] [comfy-test] graphToPrompt: 4 nodes, missing class_type: [], sample: {"inputs":{"image":"beach.jpg"},"class_type":"LoadImage","_meta":{"title":"Load Image"}} \ No newline at end of file diff --git a/dev/windows-cpu/logs/sharp_basic_resources.csv b/dev/windows-cpu/logs/sharp_basic_resources.csv index b35d775..0765e2d 100644 --- a/dev/windows-cpu/logs/sharp_basic_resources.csv +++ b/dev/windows-cpu/logs/sharp_basic_resources.csv @@ -1,39 +1,35 @@ # total_ram_gb=16.0 t,ram_gb,vram_gb -0.0,0.5, -1.0,0.5, -2.0,0.51, -3.0,0.51, -4.0,0.51, -5.0,0.51, -6.0,0.51, -7.0,0.51, -8.0,0.51, -9.1,0.51, -10.1,0.63, -11.1,0.72, -12.1,0.75, -13.1,0.75, +0.0,0.45, +1.0,0.45, +2.0,0.46, +3.0,0.46, +4.0,0.46, +5.0,0.46, +6.1,0.46, +7.1,0.46, +8.1,0.46, +9.1,0.46, +10.1,0.55, +11.1,0.65, +12.1,0.68, +13.1,0.7, 14.1,0.75, -15.5,0.78, -16.5,0.79, -17.5,0.81, -18.5,0.89, -19.6,1.21, -20.6,1.21, -21.6,1.31, -22.7,1.65, -23.7,1.93, -24.7,1.9, -25.7,2.01, -26.7,1.41, -27.7,0.91, -28.7,0.82, -29.7,0.84, -30.8,0.85, -31.8,0.86, -32.8,0.87, -33.8,0.88, -34.8,0.89, -35.8,0.9, -36.8,0.91, +15.2,0.94, +16.4,1.46, +17.4,1.5, +18.8,1.91, +19.8,2.08, +20.9,2.27, +21.9,1.99, +22.9,1.42, +24.0,0.92, +25.0,0.76, +26.0,0.76, +27.0,0.78, +28.0,0.79, +29.0,0.81, +30.0,0.81, +31.0,0.82, +32.0,0.83, +33.0,0.84, diff --git a/dev/windows-cpu/logs/sharp_exif.log b/dev/windows-cpu/logs/sharp_exif.log index fa7cf0a..9098653 100644 --- a/dev/windows-cpu/logs/sharp_exif.log +++ b/dev/windows-cpu/logs/sharp_exif.log @@ -13,9 +13,9 @@ Capturing execution frames: sharp_exif.json [ComfyUI] Inputs: {"precision": "auto"} [ComfyUI] Node 7: SharpPredict [ComfyUI] Node 7: SharpPredict + [ComfyUI] Inputs: {"focal_length_mm": ["9", 2], "output_prefix": "sharp", "model": ["2", 0], "image": ["9", 0]} + [ComfyUI] Inputs: {"focal_length_mm": ["9", 2], "output_prefix": "sharp", "model": ["2", 0], "image": ["9", 0]} Queuing workflow for execution... - [ComfyUI] Inputs: {"focal_length_mm": ["9", 2], "output_prefix": "sharp", "model": ["2", 0], "image": ["9", 0]} - [ComfyUI] Inputs: {"focal_length_mm": ["9", 2], "output_prefix": "sharp", "model": ["2", 0], "image": ["9", 0]} [ComfyUI] Node 8: GeomPackPreviewGaussian [ComfyUI] Node 8: GeomPackPreviewGaussian [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["7", 0], "extrinsics": ["7", 1], "intrinsics": ["7", 2]} @@ -24,8 +24,8 @@ Capturing execution frames: sharp_exif.json [ComfyUI] Node 9: LoadImageWithExif [ComfyUI] Inputs: {"image": "eth3d.png", "default_focal_mm": 30} [ComfyUI] Inputs: {"image": "eth3d.png", "default_focal_mm": 30} - [ComfyUI] Generated prompt_id: 649e627c-f8f2-4468-a244-3d9dd694e972 - [ComfyUI] Generated prompt_id: 649e627c-f8f2-4468-a244-3d9dd694e972 + [ComfyUI] Generated prompt_id: 2440ae15-c32b-415d-b065-aace32fcab2f + [ComfyUI] Generated prompt_id: 2440ae15-c32b-415d-b065-aace32fcab2f [ComfyUI] Calling execution.validate_prompt()... [ComfyUI] Calling execution.validate_prompt()... [ComfyUI] Validation result: valid=True @@ -56,8 +56,8 @@ Capturing execution frames: sharp_exif.json [ComfyUI] [SubprocessWorker] call_id=3 sending call_method [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [SubprocessWorker] got response: ok - [ComfyUI] [comfy-env] LoadImageWithExif done (0.64s): result: NodeOutput - [ComfyUI] [comfy-env] LoadImageWithExif done (0.64s): result: NodeOutput + [ComfyUI] [comfy-env] LoadImageWithExif done (0.44s): result: NodeOutput + [ComfyUI] [comfy-env] LoadImageWithExif done (0.44s): result: NodeOutput [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED @@ -80,8 +80,8 @@ Capturing execution frames: sharp_exif.json [ComfyUI] [SubprocessWorker] call_id=4 sending call_method [ComfyUI] [SubprocessWorker] got response: ok [ComfyUI] [SubprocessWorker] got response: ok - [ComfyUI] [comfy-env] LoadSharpModel done (0.37s): result: NodeOutput - [ComfyUI] [comfy-env] LoadSharpModel done (0.37s): result: NodeOutput + [ComfyUI] [comfy-env] LoadSharpModel done (0.15s): result: NodeOutput + [ComfyUI] [comfy-env] LoadSharpModel done (0.15s): result: NodeOutput [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED @@ -120,52 +120,52 @@ Capturing execution frames: sharp_exif.json [ComfyUI] Worker traceback: [ComfyUI] Traceback (most recent call last): [ComfyUI] Traceback (most recent call last): - [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main - [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main + [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main + [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main [ComfyUI] result = method(**inputs) [ComfyUI] result = method(**inputs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED [ComfyUI] to_return = cls.execute(*args, **kwargs) [ComfyUI] to_return = cls.execute(*args, **kwargs) - [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context - [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context + [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context + [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context [ComfyUI] return func(*args, **kwargs) [ComfyUI] return func(*args, **kwargs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute [ComfyUI] patcher = _load_sharp_model(model) [ComfyUI] patcher = _load_sharp_model(model) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model [ComfyUI] import comfy.model_patcher [ComfyUI] import comfy.model_patcher - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in [ComfyUI] import comfy.hooks [ComfyUI] import comfy.hooks - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in [ComfyUI] import comfy.lora [ComfyUI] import comfy.lora - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in [ComfyUI] import comfy.model_base [ComfyUI] import comfy.model_base - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in [ComfyUI] import comfy.ldm.hidream_o1.model [ComfyUI] import comfy.ldm.hidream_o1.model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in [ComfyUI] from comfy import sd1_clip [ComfyUI] from comfy import sd1_clip - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] ModuleNotFoundError: No module named 'transformers' @@ -174,46 +174,30 @@ Capturing execution frames: sharp_exif.json [ComfyUI] [ComfyUI] Traceback (most recent call last): [ComfyUI] Traceback (most recent call last): - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 535, in execute - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 535, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 535, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 535, in execute [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) [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) - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 335, in get_output_data - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 335, in get_output_data + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 335, in get_output_data + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 335, in get_output_data [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) [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) - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 309, in _async_map_node_over_list - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 309, in _async_map_node_over_list + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 309, in _async_map_node_over_list + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 309, in _async_map_node_over_list [ComfyUI] await process_inputs(input_dict, i) [ComfyUI] await process_inputs(input_dict, i) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 297, in process_inputs - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 297, in process_inputs + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 297, in process_inputs + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 297, in process_inputs [ComfyUI] result = f(**inputs) [ComfyUI] result = f(**inputs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy [ComfyUI] result = worker.call_method( [ComfyUI] result = worker.call_method( - [ComfyUI] module_name=mod, - [ComfyUI] module_name=mod, - [ComfyUI] ...<4 lines>... - [ComfyUI] ...<4 lines>... - [ComfyUI] timeout=600.0, - [ComfyUI] timeout=600.0, - [ComfyUI] ) - [ComfyUI] ) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method [ComfyUI] raise WorkerError( [ComfyUI] raise WorkerError( - [ComfyUI] ...<2 lines>... - [ComfyUI] ...<2 lines>... - [ComfyUI] ) - [ComfyUI] ) [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' [ComfyUI] @@ -222,52 +206,52 @@ Capturing execution frames: sharp_exif.json [ComfyUI] Worker traceback: [ComfyUI] Traceback (most recent call last): [ComfyUI] Traceback (most recent call last): - [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main - [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main + [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main + [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main [ComfyUI] result = method(**inputs) [ComfyUI] result = method(**inputs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED [ComfyUI] to_return = cls.execute(*args, **kwargs) [ComfyUI] to_return = cls.execute(*args, **kwargs) - [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context - [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context + [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context + [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context [ComfyUI] return func(*args, **kwargs) [ComfyUI] return func(*args, **kwargs) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute [ComfyUI] patcher = _load_sharp_model(model) [ComfyUI] patcher = _load_sharp_model(model) - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model [ComfyUI] import comfy.model_patcher [ComfyUI] import comfy.model_patcher - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in [ComfyUI] import comfy.hooks [ComfyUI] import comfy.hooks - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in [ComfyUI] import comfy.lora [ComfyUI] import comfy.lora - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in [ComfyUI] import comfy.model_base [ComfyUI] import comfy.model_base - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in [ComfyUI] import comfy.ldm.hidream_o1.model [ComfyUI] import comfy.ldm.hidream_o1.model - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in [ComfyUI] from comfy import sd1_clip [ComfyUI] from comfy import sd1_clip - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in - [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in + [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] from transformers import CLIPTokenizer [ComfyUI] ModuleNotFoundError: No module named 'transformers' @@ -276,11 +260,11 @@ Capturing execution frames: sharp_exif.json [ComfyUI] [ComfyUI] [ComfyUI] - Execution complete (t=1.6s) - [ComfyUI] Prompt executed in 1.35 seconds - [ComfyUI] Prompt executed in 1.35 seconds - Execution error: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667} + [ComfyUI] Prompt executed in 0.71 seconds + [ComfyUI] Prompt executed in 0.71 seconds + Execution complete (t=0.9s) + Execution error: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518} Status: FAILED - Error: Workflow execution failed: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667} - Details: Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-50ml6u2s\ComfyUI-Sharp\workflows\sharp_exif.json + Error: Workflow execution failed: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518} + Details: Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-17ziq1kb\ComfyUI-Sharp\workflows\sharp_exif.json Node error: SharpPredict \ No newline at end of file diff --git a/dev/windows-cpu/logs/sharp_exif_console.log b/dev/windows-cpu/logs/sharp_exif_console.log index e53f48e..ea4bd4a 100644 --- a/dev/windows-cpu/logs/sharp_exif_console.log +++ b/dev/windows-cpu/logs/sharp_exif_console.log @@ -7,14 +7,7 @@ [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) [Console-error] Failed to load resource: the server responded with a status of 404 (Not Found) -[Console-log] [FBXAnimationViewer] Loading FBX Animation Viewer extension -[Console-log] [FBXAnimationViewer] Loading FBX Animation Viewer extension... -[Console-log] [FBXAnimationViewer] Extension registered: comfy3d.fbxanimationviewer -[Console-log] [GeomPack] Loading VTK.js textured mesh preview extension... -[Console-log] [GeomPack] VTK.js textured mesh preview extension registered -[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension -[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension... -[Console-log] [CompareSMPLBVH] Extension registered: comfy3d.comparesmplbvh +[Console-log] [GeomPack Gaussian] Loading extension... [Console-log] [FBX Preview] Auto-registering for all known FBX preview node types... [Console-log] [UniRig] Loading FBX mesh preview extension... [Console-log] [UniRig] Detected extension folder: ComfyUI-GeometryPack @@ -28,23 +21,30 @@ [Console-log] [MotionCapture] Loading FBX mesh preview extension... [Console-log] [MotionCapture] Detected extension folder: ComfyUI-GeometryPack [Console-log] [MotionCapture] FBX mesh preview extension registered -[Console-log] [UniRig Compare] Loading compare skeleton widget... -[Console-log] [UniRig Compare] Detected extension folder: ComfyUI-GeometryPack -[Console-log] [UniRig Compare] Compare skeleton widget registered [Console-log] [GeomPack] Loading UV mesh preview extension... [Console-log] [GeomPack] UV mesh preview extension registered -[Console-log] [GeomPack Gaussian] Loading extension... +[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension +[Console-log] [CompareSMPLBVH] Loading Compare SMPL BVH extension... +[Console-log] [CompareSMPLBVH] Extension registered: comfy3d.comparesmplbvh [Console-log] [GeomPack] Loading mesh preview extension... [Console-log] [GeomPack] Mesh preview extension registered -[Console-log] [GeomPack Multi JS] Loading mesh_preview_multi.js extension [Console-log] [BVHViewer] Loading BVH Viewer extension [Console-log] [BVHViewer] Loading BVH viewer extension... [Console-log] [BVHViewer] Extension registered: comfy3d.bvhviewer [Console-log] [UniRig Debug] Loading FBX mesh preview extension... [Console-log] [UniRig Debug] Detected extension folder: ComfyUI-GeometryPack [Console-log] [UniRig Debug] FBX mesh preview extension registered -[Console-warning] WARNING: Multiple instances of Three.js being imported. +[Console-log] [GeomPack] Loading VTK.js textured mesh preview extension... +[Console-log] [GeomPack] VTK.js textured mesh preview extension registered +[Console-log] [UniRig Compare] Loading compare skeleton widget... +[Console-log] [UniRig Compare] Detected extension folder: ComfyUI-GeometryPack +[Console-log] [UniRig Compare] Compare skeleton widget registered +[Console-log] [FBXAnimationViewer] Loading FBX Animation Viewer extension +[Console-log] [FBXAnimationViewer] Loading FBX Animation Viewer extension... +[Console-log] [FBXAnimationViewer] Extension registered: comfy3d.fbxanimationviewer +[Console-log] [GeomPack Multi JS] Loading mesh_preview_multi.js extension [Console-log] [VTK Bundle] GLTFImporter included in bundle +[Console-warning] WARNING: Multiple instances of Three.js being imported. [Console-warning] [MaskEditor] ComfyApp.open_maskeditor is deprecated. Plugins should migrate to using the command system or direct node context menu integration. [Console-log] [GeomPack] Registering Preview Mesh node [Console-log] [GeomPack] Registering Preview Mesh UV node diff --git a/dev/windows-cpu/logs/sharp_exif_resources.csv b/dev/windows-cpu/logs/sharp_exif_resources.csv index a1cf7ea..38b867f 100644 --- a/dev/windows-cpu/logs/sharp_exif_resources.csv +++ b/dev/windows-cpu/logs/sharp_exif_resources.csv @@ -1,10 +1,10 @@ # total_ram_gb=16.0 t,ram_gb,vram_gb -0.0,0.91, -1.0,0.91, -2.0,0.91, -3.0,0.91, -4.0,0.91, -5.0,0.91, -6.0,0.91, -7.1,0.98, +0.0,0.84, +1.0,0.84, +2.0,0.85, +3.0,0.85, +4.0,0.85, +5.0,0.85, +6.1,0.85, +7.1,0.92, diff --git a/dev/windows-cpu/models.json b/dev/windows-cpu/models.json index dc2a9e3..e60c2a2 100644 --- a/dev/windows-cpu/models.json +++ b/dev/windows-cpu/models.json @@ -1,5 +1,5 @@ { - "models_dir": "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\models", + "models_dir": "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\models", "summary": { "total_files": 4, "total_size_bytes": 2809738556, diff --git a/dev/windows-cpu/results.json b/dev/windows-cpu/results.json index 138f4da..654a9c9 100644 --- a/dev/windows-cpu/results.json +++ b/dev/windows-cpu/results.json @@ -1,12 +1,12 @@ { - "timestamp": "2026-05-13T08:04:25.926760+00:00", + "timestamp": "2026-05-13T08:07:37.807233+00:00", "platform": "windows", "hardware": { "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD" + "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" }, "commit_hash": "9ee023dd8970af3107909c08ad6d54681cd97e05", - "run_url": "https://github.com/PozzettiAndrea/comfy-gpu-ci/actions/runs/25786138792", + "run_url": "https://github.com/PozzettiAndrea/comfy-gpu-ci/actions/runs/25786204437", "success": false, "summary": { "total": 3, @@ -24,34 +24,34 @@ { "name": "sharp_basic", "status": "fail", - "duration_seconds": 37.16, - "error": "Workflow execution failed: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n module_name=mod,\\n ...<4 lines>...\\n timeout=600.0,\\n )\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n ...<2 lines>...\\n )\\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0757\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n ...,\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': [\"{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544}\n\nDetails:\nWorkflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-50ml6u2s\\ComfyUI-Sharp\\workflows\\sharp_basic.json\nNode error: SharpPredict", + "duration_seconds": 33.77, + "error": "Workflow execution failed: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0800\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n [[0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n [0.0039, 0.4824, 0.9569],\\n ...,\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000],\\n [0.0510, 0.0275, 0.0000]],\\n\\n ...,\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235],\\n [0.5098, 0.4627, 0.4235]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]],\\n\\n [[0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n [0.6824, 0.6118, 0.5333],\\n ...,\\n [0.5059, 0.4588, 0.4392],\\n [0.5059, 0.4627, 0.4314],\\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': [\"{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707}\n\nDetails:\nWorkflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-17ziq1kb\\ComfyUI-Sharp\\workflows\\sharp_basic.json\nNode error: SharpPredict", "hardware": { "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD" + "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" }, "resources": { "ram": { - "peak": 2.01, + "peak": 2.27, "avg": 0.9 }, "total_ram_gb": 16.0, - "samples": 37 + "samples": 33 } }, { "name": "sharp_exif", "status": "fail", - "duration_seconds": 7.57, - "error": "Workflow execution failed: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_3xmq2ani\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\Lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n module_name=mod,\\n ...<4 lines>...\\n timeout=600.0,\\n )\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\.venv\\\\Lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n ...<2 lines>...\\n )\\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0757\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\\n [0.2275, 0.1608, 0.1608],\\n [0.2275, 0.1647, 0.1529],\\n ...,\\n [0.4471, 0.4745, 0.4863],\\n [0.4510, 0.4745, 0.4863],\\n [0.4431, 0.4745, 0.4745]],\\n\\n [[0.2196, 0.1686, 0.1569],\\n [0.2314, 0.1647, 0.1608],\\n [0.2353, 0.1647, 0.1647],\\n ...,\\n [0.4549, 0.4784, 0.4706],\\n [0.4549, 0.4706, 0.4784],\\n [0.4431, 0.4706, 0.4667]],\\n\\n [[0.2314, 0.1725, 0.1569],\\n [0.2510, 0.1725, 0.1608],\\n [0.2392, 0.1725, 0.1686],\\n ...,\\n [0.4588, 0.4745, 0.4627],\\n [0.4510, 0.4745, 0.4667],\\n [0.4471, 0.4706, 0.4627]],\\n\\n ...,\\n\\n [[0.1569, 0.1647, 0.1843],\\n [0.1647, 0.1725, 0.1882],\\n [0.1490, 0.1686, 0.1922],\\n ...,\\n [0.1020, 0.1137, 0.1373],\\n [0.1137, 0.1176, 0.1412],\\n [0.0863, 0.1176, 0.1373]],\\n\\n [[0.1569, 0.1686, 0.1804],\\n [0.1569, 0.1647, 0.1961],\\n [0.1490, 0.1647, 0.1961],\\n ...,\\n [0.1059, 0.1216, 0.1294],\\n [0.1176, 0.1216, 0.1333],\\n [0.1059, 0.1137, 0.1373]],\\n\\n [[0.1608, 0.1686, 0.1843],\\n [0.1608, 0.1686, 0.1882],\\n [0.1569, 0.1686, 0.1882],\\n ...,\\n [0.1059, 0.1176, 0.1333],\\n [0.1137, 0.1176, 0.1333],\\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': [\"{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667}\n\nDetails:\nWorkflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-50ml6u2s\\ComfyUI-Sharp\\workflows\\sharp_exif.json\nNode error: SharpPredict", + "duration_seconds": 7.19, + "error": "Workflow execution failed: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \\'transformers\\'\\n\\nWorker traceback:\\nTraceback (most recent call last):\\n File \"C:\\\\Users\\\\RUNNER~1\\\\AppData\\\\Local\\\\Temp\\\\comfyui_pvenv_673nc73q\\\\persistent_worker.py\", line 1762, in main\\n result = method(**inputs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy_api\\\\latest\\\\_io.py\", line 1833, in EXECUTE_NORMALIZED\\n to_return = cls.execute(*args, **kwargs)\\n File \"C:\\\\Users\\\\runneradmin\\\\AppData\\\\Local\\\\Programs\\\\comfy-env\\\\.pixi\\\\envs\\\\sharp-nodes\\\\lib\\\\site-packages\\\\torch\\\\utils\\\\_contextlib.py\", line 124, in decorate_context\\n return func(*args, **kwargs)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\predict.py\", line 111, in execute\\n patcher = _load_sharp_model(model)\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\custom_nodes\\\\ComfyUI-Sharp\\\\nodes\\\\load_model.py\", line 75, in _load_sharp_model\\n import comfy.model_patcher\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_patcher.py\", line 32, in \\n import comfy.hooks\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\hooks.py\", line 14, in \\n import comfy.lora\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\lora.py\", line 23, in \\n import comfy.model_base\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\model_base.py\", line 61, in \\n import comfy.ldm.hidream_o1.model\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\ldm\\\\hidream_o1\\\\model.py\", line 20, in \\n from comfy.text_encoders.qwen35 import Qwen35VisionModel\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\text_encoders\\\\qwen35.py\", line 10, in \\n from comfy import sd1_clip\\n File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\comfy\\\\sd1_clip.py\", line 3, in \\n from transformers import CLIPTokenizer\\nModuleNotFoundError: No module named \\'transformers\\'\\n\\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\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 \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 309, in _async_map_node_over_list\\n await process_inputs(input_dict, i)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\execution.py\", line 297, in process_inputs\\n result = f(**inputs)\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\metadata.py\", line 556, in proxy\\n result = worker.call_method(\\n', ' File \"D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\.venv\\\\lib\\\\site-packages\\\\comfy_env\\\\isolation\\\\workers\\\\subprocess.py\", line 674, in call_method\\n raise WorkerError(\\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': [\"{'model_path': 'D:\\\\\\\\a\\\\\\\\comfy-gpu-ci\\\\\\\\comfy-gpu-ci\\\\\\\\test_workspaces\\\\\\\\Sharp-0800\\\\\\\\ComfyUI\\\\\\\\models\\\\\\\\sharp\\\\\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}\"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\\n [0.2275, 0.1608, 0.1608],\\n [0.2275, 0.1647, 0.1529],\\n ...,\\n [0.4471, 0.4745, 0.4863],\\n [0.4510, 0.4745, 0.4863],\\n [0.4431, 0.4745, 0.4745]],\\n\\n [[0.2196, 0.1686, 0.1569],\\n [0.2314, 0.1647, 0.1608],\\n [0.2353, 0.1647, 0.1647],\\n ...,\\n [0.4549, 0.4784, 0.4706],\\n [0.4549, 0.4706, 0.4784],\\n [0.4431, 0.4706, 0.4667]],\\n\\n [[0.2314, 0.1725, 0.1569],\\n [0.2510, 0.1725, 0.1608],\\n [0.2392, 0.1725, 0.1686],\\n ...,\\n [0.4588, 0.4745, 0.4627],\\n [0.4510, 0.4745, 0.4667],\\n [0.4471, 0.4706, 0.4627]],\\n\\n ...,\\n\\n [[0.1569, 0.1647, 0.1843],\\n [0.1647, 0.1725, 0.1882],\\n [0.1490, 0.1686, 0.1922],\\n ...,\\n [0.1020, 0.1137, 0.1373],\\n [0.1137, 0.1176, 0.1412],\\n [0.0863, 0.1176, 0.1373]],\\n\\n [[0.1569, 0.1686, 0.1804],\\n [0.1569, 0.1647, 0.1961],\\n [0.1490, 0.1647, 0.1961],\\n ...,\\n [0.1059, 0.1216, 0.1294],\\n [0.1176, 0.1216, 0.1333],\\n [0.1059, 0.1137, 0.1373]],\\n\\n [[0.1608, 0.1686, 0.1843],\\n [0.1608, 0.1686, 0.1882],\\n [0.1569, 0.1686, 0.1882],\\n ...,\\n [0.1059, 0.1176, 0.1333],\\n [0.1137, 0.1176, 0.1333],\\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': [\"{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}\"], 'extra_pnginfo': [\"{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}\"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518}\n\nDetails:\nWorkflow: C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfy-test-run-17ziq1kb\\ComfyUI-Sharp\\workflows\\sharp_exif.json\nNode error: SharpPredict", "hardware": { "os": "Windows-10-10.0.26100-SP0", - "cpu": "AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD" + "cpu": "AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD" }, "resources": { "ram": { - "peak": 0.98, - "avg": 0.92 + "peak": 0.92, + "avg": 0.86 }, "total_ram_gb": 16.0, "samples": 8 diff --git a/dev/windows-cpu/session.log b/dev/windows-cpu/session.log index d585bae..3afbb40 100644 --- a/dev/windows-cpu/session.log +++ b/dev/windows-cpu/session.log @@ -1,4 +1,4 @@ -[00:00] Crash dump logging enabled: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0757\dev\windows-cpu\crash_dump.log +[00:00] Crash dump logging enabled: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0800\dev\windows-cpu\crash_dump.log [00:00] [00:00] [1/5] SYNTAX [00:00] ---------------------------------------- @@ -16,11 +16,11 @@ [DEBUG] server=None, server_url=None, api=None [00:00] Setting up ComfyUI... -[00:00] Creating virtual environment at D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv... -[00:00] Running: uv venv D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv --python 3.13 -[00:02] Cloning ComfyUI (latest) to D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI... -[00:02] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI -[00:03] Installing ComfyUI requirements into D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv... +[00:00] Creating virtual environment at D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv... +[00:00] Running: uv venv D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv --python 3.10 +[00:02] Cloning ComfyUI (latest) to D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI... +[00:02] Running: git clone --depth 1 https://github.com/comfyanonymous/ComfyUI.git D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI +[00:03] Installing ComfyUI requirements into D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv... [00:03] comfyui-frontend-package==1.43.18 [00:03] comfyui-workflow-templates==0.9.73 [00:03] comfyui-embedded-docs==0.5.0 @@ -58,593 +58,578 @@ Setting up ComfyUI... [00:03] pydantic-settings~=2.0 [00:03] PyOpenGL [00:03] glfw -[00:03] Running: uv pip install --python D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Scripts\python.exe -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\requirements.txt -[00:54] +[00:03] Running: uv pip install --python D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\Scripts\python.exe -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\requirements.txt +[00:52] Installing custom node... -[00:54] Copying ComfyUI-Sharp to D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp... -[00:54] Installing node requirements... -[00:54] comfy-env==0.3.87 -[00:54] comfy-3d-viewers==0.2.44 -[00:54] Running: uv pip install --python D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Scripts\python.exe -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\requirements.txt -[00:56] +[00:52] Copying ComfyUI-Sharp to D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp... +[00:52] Installing node requirements... +[00:52] comfy-env==0.3.87 +[00:52] comfy-3d-viewers==0.2.44 +[00:52] Running: uv pip install --python D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\Scripts\python.exe -r D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\requirements.txt +[00:53] Running install.py... -[00:56] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Scripts\python.exe D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\install.py -[00:57] [comfy-env] Enabled Windows long path support -[00:57] -[00:57] Installing 1 node dependencies... -[00:57] Cloning ComfyUI-GeometryPack... -[00:59] Installing requirements for ComfyUI-GeometryPack... -[01:00] Running install.py for ComfyUI-GeometryPack... -[01:00] [comfy-env] Enabled Windows long path support -[01:03] [comfy-env] _discover: scanning D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes -[01:03] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes\ComfyUI-GeometryPack\nodes\comfy-env.toml) -[01:03] [comfy-env] _discover: ComfyUI-Sharp -> sharp-nodes (custom_nodes\ComfyUI-Sharp\nodes\comfy-env.toml) -[01:03] [comfy-env] Workspace: C:\Users\runneradmin\AppData\Local\Programs\comfy-env -[01:03] [comfy-env] ComfyUI: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI -[01:03] [comfy-env] Found 2 node config(s): -[01:03] - geometrypack-nodes <- custom_nodes\ComfyUI-GeometryPack\nodes\comfy-env.toml (python=host) -[01:03] - sharp-nodes <- custom_nodes\ComfyUI-Sharp\nodes\comfy-env.toml (python=host) -[01:03] [comfy-env] Bootstrap interpreter has python 3.13 + torch 2.11.0 (cpu). Looking for cuda-only wheels matching cpu/torch2.11/cp313. -[01:07] [comfy-env] GPU: No GPU detected -[01:07] [comfy-env] No CUDA detected -- pinning comfyui torch to CPU index -[01:07] Generated C:\Users\runneradmin\AppData\Local\Programs\comfy-env\pixi.toml -[01:07] [comfy-env] Installing 2 environment(s): -[01:07] - geometrypack-nodes (python=host, 14 pypi deps, 1 cuda wheels) -[01:07] - sharp-nodes (python=host, 9 pypi deps) -[01:07] [comfy-env] Running `pixi install -e geometrypack-nodes -e sharp-nodes`... -[03:53] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false` -[03:53] - Scripts/.librsvg-pre-unlink.bat -[03:53] To enable them, run: -[03:53] pixi config set --local run-post-link-scripts insecure -[03:53] More info: -[03:53] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts -[04:19] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false` -[04:19] - Scripts/.librsvg-pre-unlink.bat -[04:19] To enable them, run: -[04:19] pixi config set --local run-post-link-scripts insecure -[04:19] More info: -[04:19] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts -[04:59] The following environments have been installed: geometrypack-nodes, sharp-nodes. -[04:59] [comfy-env] Recorded install hash a557d82bbd8c -> C:\Users\runneradmin\AppData\Local\Programs\comfy-env\install.hash -[04:59] [comfy-env] Install log: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\install.log -[04:59] -[04:59] Installation complete! -[05:00] -[05:00] [requirements] Re-installing main package requirements... -[05:00] Installing requirements for ComfyUI-Sharp... -[05:00] [comfy-env] _discover: scanning D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes -[05:00] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes\ComfyUI-GeometryPack\nodes\comfy-env.toml) -[05:00] [comfy-env] _discover: ComfyUI-Sharp -> sharp-nodes (custom_nodes\ComfyUI-Sharp\nodes\comfy-env.toml) -[05:00] [comfy-env] Workspace inputs unchanged (hash a557d82bbd8c) -- skipping install. Delete C:\Users\runneradmin\AppData\Local\Programs\comfy-env\install.hash to force. -[05:00] -[05:00] Installation complete! -[05:00] Installing 1 node dependency(ies)... -[05:00] ComfyUI-GeometryPack from PozzettiAndrea/ComfyUI-GeometryPack -[05:00] ComfyUI-GeometryPack already exists, skipping... -[05:00] Installing validation endpoint... -[05:00] Cloning PozzettiAndrea/ComfyUI-validate-endpoint... -[05:00] Running: git clone --depth 1 https://github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-validate-endpoint -[05:00] [INSTALL] PASSED -[05:00] -[05:00] [3/5] REGISTRATION -[05:00] ---------------------------------------- -[05:00] +[00:53] Running: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\Scripts\python.exe D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\install.py +[00:55] [comfy-env] Enabled Windows long path support +[00:55] +[00:55] Installing 1 node dependencies... +[00:55] Cloning ComfyUI-GeometryPack... +[00:57] Installing requirements for ComfyUI-GeometryPack... +[00:59] Running install.py for ComfyUI-GeometryPack... +[00:59] [comfy-env] Enabled Windows long path support +[01:00] [comfy-env] _discover: scanning D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes +[01:00] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes\ComfyUI-GeometryPack\nodes\comfy-env.toml) +[01:00] [comfy-env] _discover: ComfyUI-Sharp -> sharp-nodes (custom_nodes\ComfyUI-Sharp\nodes\comfy-env.toml) +[01:00] [comfy-env] Workspace: C:\Users\runneradmin\AppData\Local\Programs\comfy-env +[01:00] [comfy-env] ComfyUI: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI +[01:00] [comfy-env] Found 2 node config(s): +[01:00] - geometrypack-nodes <- custom_nodes\ComfyUI-GeometryPack\nodes\comfy-env.toml (python=host) +[01:00] - sharp-nodes <- custom_nodes\ComfyUI-Sharp\nodes\comfy-env.toml (python=host) +[01:00] [comfy-env] Bootstrap interpreter has python 3.10 + torch 2.11.0 (cpu). Looking for cuda-only wheels matching cpu/torch2.11/cp310. +[01:04] [comfy-env] GPU: No GPU detected +[01:04] [comfy-env] No CUDA detected -- pinning comfyui torch to CPU index +[01:04] Generated C:\Users\runneradmin\AppData\Local\Programs\comfy-env\pixi.toml +[01:04] [comfy-env] Installing 2 environment(s): +[01:04] - geometrypack-nodes (python=host, 14 pypi deps, 1 cuda wheels) +[01:04] - sharp-nodes (python=host, 9 pypi deps) +[01:04] [comfy-env] Running `pixi install -e geometrypack-nodes -e sharp-nodes`... +[04:21] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false` +[04:21] - Scripts/.librsvg-pre-unlink.bat +[04:21] To enable them, run: +[04:21] pixi config set --local run-post-link-scripts insecure +[04:21] More info: +[04:21] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts +[04:47] WARN Skipped running the post-link scripts because `run-post-link-scripts` = `false` +[04:47] - Scripts/.librsvg-pre-unlink.bat +[04:47] To enable them, run: +[04:47] pixi config set --local run-post-link-scripts insecure +[04:47] More info: +[04:47] https://pixi.sh/latest/reference/pixi_configuration/#run-post-link-scripts +[05:21] The following environments have been installed: geometrypack-nodes, sharp-nodes. +[05:22] [comfy-env] Recorded install hash a557d82bbd8c -> C:\Users\runneradmin\AppData\Local\Programs\comfy-env\install.hash +[05:22] [comfy-env] Install log: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\install.log +[05:22] +[05:22] Installation complete! +[05:22] +[05:22] [requirements] Re-installing main package requirements... +[05:22] Installing requirements for ComfyUI-Sharp... +[05:22] [comfy-env] _discover: scanning D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes +[05:22] [comfy-env] _discover: ComfyUI-GeometryPack -> geometrypack-nodes (custom_nodes\ComfyUI-GeometryPack\nodes\comfy-env.toml) +[05:22] [comfy-env] _discover: ComfyUI-Sharp -> sharp-nodes (custom_nodes\ComfyUI-Sharp\nodes\comfy-env.toml) +[05:22] [comfy-env] Workspace inputs unchanged (hash a557d82bbd8c) -- skipping install. Delete C:\Users\runneradmin\AppData\Local\Programs\comfy-env\install.hash to force. +[05:22] +[05:22] Installation complete! +[05:22] Installing 1 node dependency(ies)... +[05:22] ComfyUI-GeometryPack from PozzettiAndrea/ComfyUI-GeometryPack +[05:22] ComfyUI-GeometryPack already exists, skipping... +[05:22] Installing validation endpoint... +[05:22] Cloning PozzettiAndrea/ComfyUI-validate-endpoint... +[05:22] Running: git clone --depth 1 https://github.com/PozzettiAndrea/ComfyUI-validate-endpoint.git D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-validate-endpoint +[05:22] [INSTALL] PASSED +[05:22] +[05:22] [3/5] REGISTRATION +[05:22] ---------------------------------------- +[05:22] [DEBUG] server=None, server_url=None, api=None -[05:00] +[05:22] Starting ComfyUI server... -[05:00] Starting ComfyUI server on port 41894... -[05:00] Starting ComfyUI server on port 41894... -[05:00] Waiting for server to be ready (timeout: 600s)... -[05:02] [ComfyUI] setup plugin alembic.autogenerate.schemas -[05:02] [ComfyUI] setup plugin alembic.autogenerate.tables -[05:02] [ComfyUI] setup plugin alembic.autogenerate.types -[05:02] [ComfyUI] setup plugin alembic.autogenerate.constraints -[05:02] [ComfyUI] setup plugin alembic.autogenerate.defaults -[05:02] [ComfyUI] setup plugin alembic.autogenerate.comments -[05:02] [ComfyUI] [comfy-env] ComfyUI-GeometryPack: 1 isolation env(s): -[05:02] [ComfyUI] [comfy-env] nodes -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-GeometryPack\nodes -[05:02] [ComfyUI] [comfy-env] Workspace: C:\Users\runneradmin\AppData\Local\Programs\comfy-env -[05:02] [ComfyUI] [comfy-env] env: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes [OK] -[05:02] [ComfyUI] [comfy-env] prestartup complete -[05:03] [ComfyUI] [comfy-env] ComfyUI-Sharp: 1 isolation env(s): -[05:03] [ComfyUI] [comfy-env] nodes -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes -[05:03] [ComfyUI] [comfy-env] env: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes [OK] -[05:03] [ComfyUI] [comfy-env] prestartup complete -[05:03] [ComfyUI] -[05:03] [ComfyUI] Prestartup times for custom nodes: -[05:03] [ComfyUI] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp -[05:03] [ComfyUI] 0.3 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-GeometryPack -[05:03] [ComfyUI] -[05:08] [ComfyUI] Found comfy_kitchen backend cuda: {'available': False, 'disabled': True, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} -[05:08] [ComfyUI] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []} -[05:08] [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']} -[05:08] [ComfyUI] Checkpoint files will always be loaded safely. -[05:08] [ComfyUI] Total VRAM 16379 MB, total RAM 16379 MB -[05:08] [ComfyUI] pytorch version: 2.11.0+cpu -[05:08] [ComfyUI] Set vram state to: DISABLED -[05:08] [ComfyUI] Device: cpu -[05:09] [ComfyUI] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention -[05:16] [ComfyUI] Python version: 3.13.13 (tags/v3.13.13:01104ce, Apr 7 2026, 19:25:48) [MSC v.1944 64 bit (AMD64)] -[05:16] [ComfyUI] ComfyUI version: 0.21.0 -[05:16] [ComfyUI] comfy-aimdo version: 0.3.0 -[05:16] [ComfyUI] comfy-kitchen version: 0.2.8 -[05:16] [ComfyUI] ****** User settings have been changed to be stored on the server instead of browser storage. ****** -[05:16] [ComfyUI] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ****** -[05:16] [ComfyUI] ComfyUI frontend version: 1.43.18 -[05:16] [ComfyUI] [Prompt Server] web root: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfyui_frontend_package\static -[05:16] [ComfyUI] Asset seeder disabled -[05:19] [ComfyUI] loading... -[05:19] [ComfyUI] calling register_nodes -[05:19] [ComfyUI] [comfy-env] Version: 0.3.87 -[05:21] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GeometryPack -[05:21] [ComfyUI] [comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI -[05:21] [ComfyUI] [comfy-env] Found 1 isolation env(s) -[05:21] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)... -[05:21] [ComfyUI] [comfy-env] geometrypack-nodes: Library/bin has 613 DLLs -[05:21] [ComfyUI] [comfy-env] Metadata scan: C:\Users\runneradmin\.pixi\bin\pixi.exe run --as-is --manifest-path C:\Users\runneradmin\AppData\Local\Programs\comfy-env\pixi.toml -e geometrypack-nodes python C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_8fi6kp7e.py D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-GeometryPack nodes C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_out_bv7ylce7.pkl -[05:21] [ComfyUI] [comfy-env] Scan env PATH for nodes: -[05:21] [ComfyUI] [comfy-env] [0] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes -[05:21] [ComfyUI] [comfy-env] [1] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\Library\bin -[05:21] [ComfyUI] [comfy-env] [2] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\Scripts -[05:21] [ComfyUI] [comfy-env] [3] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\Lib\site-packages\bpy -[05:21] [ComfyUI] [comfy-env] [4] C:\Windows\System32 -[05:21] [ComfyUI] [comfy-env] [5] C:\Windows -[05:21] [ComfyUI] [comfy-env] [6] C:\Windows\System32\Wbem -[05:31] [ComfyUI] [comfy-env] Metadata scan stderr for nodes: -[05:31] [ComfyUI] [comfy-env] [meta-scan] importing nodes from D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-GeometryPack -[05:31] [ComfyUI] [comfy-env] ERROR:root:Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. -[05:31] [ComfyUI] [comfy-env] [meta-scan] import OK -[05:31] [ComfyUI] [comfy-env] Scanned nodes: 125 nodes (10.9s) -[05:31] [ComfyUI] [comfy-env] Scanned nodes root: 125 nodes (10.9s) -[05:31] [ComfyUI] [comfy-env] Imported nodes root: 125 nodes (isolation) -[05:31] [ComfyUI] [comfy-env] Registered 125 total nodes -[05:31] [ComfyUI] [comfy-env] Version: 0.3.87 -[05:32] [ComfyUI] [comfy-env] register_nodes: ComfyUI-Sharp -[05:32] [ComfyUI] [comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI -[05:32] [ComfyUI] [comfy-env] Found 1 isolation env(s) -[05:32] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)... -[05:32] [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 237 DLLs -[05:32] [ComfyUI] [comfy-env] Metadata scan: C:\Users\runneradmin\.pixi\bin\pixi.exe run --as-is --manifest-path C:\Users\runneradmin\AppData\Local\Programs\comfy-env\pixi.toml -e sharp-nodes python C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_mi6y2qqk.py D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp nodes C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_out_9f9zk_3g.pkl -[05:32] [ComfyUI] [comfy-env] Scan env PATH for nodes: -[05:32] [ComfyUI] [comfy-env] [0] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes -[05:32] [ComfyUI] [comfy-env] [1] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Library\bin -[05:32] [ComfyUI] [comfy-env] [2] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Scripts -[05:32] [ComfyUI] [comfy-env] [3] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\bpy -[05:32] [ComfyUI] [comfy-env] [4] C:\Windows\System32 -[05:32] [ComfyUI] [comfy-env] [5] C:\Windows -[05:32] [ComfyUI] [comfy-env] [6] C:\Windows\System32\Wbem -[05:39] [ComfyUI] [comfy-env] Metadata scan stderr for nodes: -[05:39] [ComfyUI] [comfy-env] [meta-scan] importing nodes from D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp -[05:39] [ComfyUI] [comfy-env] [meta-scan] import OK -[05:39] [ComfyUI] [comfy-env] Scanned nodes: 8 nodes (7.1s) -[05:39] [ComfyUI] [comfy-env] Scanned nodes root: 8 nodes (7.1s) -[05:39] [ComfyUI] [comfy-env] Imported nodes root: 8 nodes (isolation) -[05:39] [ComfyUI] [comfy-env] Registered 8 total nodes -[05:39] [ComfyUI] -[05:39] [ComfyUI] Import times for custom nodes: -[05:39] [ComfyUI] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\websocket_image_save.py -[05:39] [ComfyUI] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-validate-endpoint -[05:39] [ComfyUI] 7.1 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp -[05:39] [ComfyUI] 12.6 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-GeometryPack -[05:39] [ComfyUI] -[05:39] [ComfyUI] Context impl SQLiteImpl. -[05:39] [ComfyUI] Will assume non-transactional DDL. -[05:39] [ComfyUI] Context impl SQLiteImpl. -[05:39] [ComfyUI] Will assume non-transactional DDL. -[05:39] [ComfyUI] Running upgrade -> 0001_assets, Initial assets schema -[05:39] [ComfyUI] Revision ID: 0001_assets -[05:39] [ComfyUI] Revises: None -[05:39] [ComfyUI] Create Date: 2025-12-10 00:00:00 -[05:39] [ComfyUI] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table. -[05:39] [ComfyUI] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references. -[05:39] [ComfyUI] Change preview_id FK from assets.id to asset_references.id. -[05:39] [ComfyUI] Database upgraded from None to 0003_add_metadata_job_id -[05:39] [ComfyUI] Starting server -[05:39] [ComfyUI] -[05:39] [ComfyUI] To see the GUI go to: http://127.0.0.1:41894 -[05:39] Server responding, waiting for nodes to load... -[05:59] Server is ready! -[05:59] Checking for import errors in server logs... -[05:59] No import errors detected -[05:59] Found 847 registered nodes -[06:00] [REGISTRATION] PASSED -[06:00] -[06:00] [4/5] INSTANTIATION -[06:00] ---------------------------------------- -[06:00] -[DEBUG] server=, server_url=None, api= -[06:00] Testing node constructors... -[06:03] All 8 node(s) instantiated successfully! -[06:03] [INSTANTIATION] PASSED -[06:03] -[06:03] [5/5] EXECUTION -[06:03] ---------------------------------------- -[06:03] -[DEBUG] server=, server_url=None, api= -[06:03] CPU runner - will execute 2 workflow(s) -[06:03] Running 3 workflow(s) (all with videos)... -[06:03] Installing screenshot dependencies (playwright, pillow)... -[06:07] Packages installed, downloading chromium browser... -[06:26] Screenshot dependencies installed successfully -[06:27] Starting headless browser... -[06:27] Downloading Mesa llvmpipe for Windows... -[06:32] Copied opengl32.dll to Chromium dir -[06:32] Copied libgallium_wgl.dll to Chromium dir -[06:32] Using Mesa llvmpipe (desktop GL) -- multithreaded CPU rendering -[06:33] [1/3] SKIPPED (not in cpu list) pano.json -[06:33] Capturing execution frames: sharp_basic.json -[06:42] Frame 1 saved (frame_000.jpg, t=0.0s) -[06:42] Validating workflow... -[06:42] [ComfyUI] === /validate endpoint called === -[06:42] [ComfyUI] Received JSON with keys: ['prompt'] -[06:42] [ComfyUI] Prompt has 4 nodes -[06:42] [ComfyUI] Node 1: LoadImage -[06:42] [ComfyUI] Inputs: {"image": "beach.jpg"} -[06:42] [ComfyUI] Node 2: LoadSharpModel -[06:42] [ComfyUI] Inputs: {"precision": "auto"} -[06:42] Queuing workflow for execution... -[06:42] [ComfyUI] Node 4: GeomPackPreviewGaussian -[06:42] [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["5", 0], "extrinsics": ["5", 1], "intrinsics": ["5", 2]} -[06:42] [ComfyUI] Node 5: SharpPredict -[06:42] [ComfyUI] Inputs: {"focal_length_mm": 30, "output_prefix": "sharp", "model": ["2", 0], "image": ["1", 0]} -[06:42] [ComfyUI] Generated prompt_id: 91fa69bd-a3a0-4951-8933-081cd96330a3 -[06:42] [ComfyUI] Calling execution.validate_prompt()... -[06:42] [ComfyUI] Validation result: valid=True -[06:42] [ComfyUI] === Validation PASSED === -[06:42] [ComfyUI] got prompt -[06:42] [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' -[06:42] [ComfyUI] [comfy-env] SubprocessWorker: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe -[06:42] [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI'} -[06:42] [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED -[06:42] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... -[06:42] [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 237 DLLs -[06:42] [ComfyUI] [ComfyUI-Sharp] python: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe -[06:42] [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp'] -[06:42] [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe -[06:42] [ComfyUI] [SubprocessWorker] launching cmd=['C:\\Users\\runneradmin\\.pixi\\bin\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py', 'tcp://127.0.0.1:51977']... -[06:44] Frame 2 saved (frame_001.jpg, t=2.5s) -[06:44] [capture-periodic] freeze=4ms shot=140ms unfreeze=7ms saved=True -[06:46] [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. -[06:47] Frame 3 saved (frame_002.jpg, t=4.7s) -[06:47] [capture-periodic] freeze=4ms shot=107ms unfreeze=3ms saved=True -[06:47] [ComfyUI] [SubprocessWorker] worker started/confirmed -[06:47] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... -[06:47] [ComfyUI] [SubprocessWorker] created 0 shm blocks -[06:47] [ComfyUI] [SubprocessWorker] sending request via socket... -[06:47] [ComfyUI] [SubprocessWorker] call_id=1 sending call_method -[06:48] [capture-loop] iter=50 t=6.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=6 ram=4.9/16.0GB (31%) swap=0.2/2.9GB (7%) cpu=44% browser_rss=0.71GB -[06:49] [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. -[06:49] [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. -[06:50] [ComfyUI] -[06:53] [ComfyUI] sharp_2572gikvuh.pt: 0%| | 0.00/2.81G [00:00 D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-GeometryPack\nodes +[05:24] [ComfyUI] [comfy-env] Workspace: C:\Users\runneradmin\AppData\Local\Programs\comfy-env +[05:24] [ComfyUI] [comfy-env] env: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes [OK] +[05:24] [ComfyUI] [comfy-env] prestartup complete +[05:24] [ComfyUI] [comfy-env] ComfyUI-Sharp: 1 isolation env(s): +[05:24] [ComfyUI] [comfy-env] nodes -> D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes +[05:24] [ComfyUI] [comfy-env] env: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes [OK] +[05:24] [ComfyUI] [comfy-env] prestartup complete +[05:24] [ComfyUI] +[05:24] [ComfyUI] Prestartup times for custom nodes: +[05:24] [ComfyUI] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp +[05:24] [ComfyUI] 0.3 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-GeometryPack +[05:24] [ComfyUI] +[05:29] [ComfyUI] Found comfy_kitchen backend cuda: {'available': False, 'disabled': True, 'unavailable_reason': 'CUDA not available on this system', 'capabilities': []} +[05:29] [ComfyUI] Found comfy_kitchen backend triton: {'available': False, 'disabled': True, 'unavailable_reason': "ImportError: No module named 'triton'", 'capabilities': []} +[05:29] [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']} +[05:29] [ComfyUI] Checkpoint files will always be loaded safely. +[05:29] [ComfyUI] Total VRAM 16379 MB, total RAM 16379 MB +[05:29] [ComfyUI] pytorch version: 2.11.0+cpu +[05:29] [ComfyUI] Set vram state to: DISABLED +[05:29] [ComfyUI] Device: cpu +[05:30] [ComfyUI] Using sub quadratic optimization for attention, if you have memory or speed issues try using: --use-split-cross-attention +[05:36] [ComfyUI] Python version: 3.10.11 (tags/v3.10.11:7d4cc5a, Apr 5 2023, 00:38:17) [MSC v.1929 64 bit (AMD64)] +[05:36] [ComfyUI] ComfyUI version: 0.21.0 +[05:36] [ComfyUI] comfy-aimdo version: 0.3.0 +[05:36] [ComfyUI] comfy-kitchen version: 0.2.8 +[05:36] [ComfyUI] ****** User settings have been changed to be stored on the server instead of browser storage. ****** +[05:36] [ComfyUI] ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ****** +[05:36] [ComfyUI] ComfyUI frontend version: 1.43.18 +[05:36] [ComfyUI] [Prompt Server] web root: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfyui_frontend_package\static +[05:36] [ComfyUI] Asset seeder disabled +[05:38] [ComfyUI] loading... +[05:38] [ComfyUI] calling register_nodes +[05:38] [ComfyUI] [comfy-env] Version: 0.3.87 +[05:40] [ComfyUI] [comfy-env] register_nodes: ComfyUI-GeometryPack +[05:40] [ComfyUI] [comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI +[05:40] [ComfyUI] [comfy-env] Found 1 isolation env(s) +[05:40] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)... +[05:40] [ComfyUI] [comfy-env] geometrypack-nodes: Library/bin has 611 DLLs +[05:40] [ComfyUI] [comfy-env] Metadata scan: C:\Users\runneradmin\.pixi\bin\pixi.exe run --as-is --manifest-path C:\Users\runneradmin\AppData\Local\Programs\comfy-env\pixi.toml -e geometrypack-nodes python C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_rem6z5li.py D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-GeometryPack nodes C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_out_7vobqmp2.pkl +[05:40] [ComfyUI] [comfy-env] Scan env PATH for nodes: +[05:40] [ComfyUI] [comfy-env] [0] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes +[05:40] [ComfyUI] [comfy-env] [1] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\Library\bin +[05:40] [ComfyUI] [comfy-env] [2] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\Scripts +[05:40] [ComfyUI] [comfy-env] [3] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\Lib\site-packages\bpy +[05:40] [ComfyUI] [comfy-env] [4] C:\Windows\System32 +[05:40] [ComfyUI] [comfy-env] [5] C:\Windows +[05:40] [ComfyUI] [comfy-env] [6] C:\Windows\System32\Wbem +[05:50] [ComfyUI] [comfy-env] Metadata scan stderr for nodes: +[05:50] [ComfyUI] [comfy-env] [meta-scan] importing nodes from D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-GeometryPack +[05:50] [ComfyUI] [comfy-env] ERROR:root:Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. +[05:50] [ComfyUI] [comfy-env] [meta-scan] import OK +[05:50] [ComfyUI] [comfy-env] Exception in module unregister(): '_ops.py' +[05:50] [ComfyUI] [comfy-env] Traceback (most recent call last): +[05:50] [ComfyUI] [comfy-env] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\lib\site-packages\bpy\3.6\scripts\modules\addon_utils.py", line 421, in disable +[05:50] [ComfyUI] [comfy-env] mod.unregister() +[05:50] [ComfyUI] [comfy-env] TypeError: '_OpNamespace' object is not callable +[05:50] [ComfyUI] [comfy-env] Exception in module unregister(): '_classes.py' +[05:50] [ComfyUI] [comfy-env] Traceback (most recent call last): +[05:50] [ComfyUI] [comfy-env] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\geometrypack-nodes\lib\site-packages\bpy\3.6\scripts\modules\addon_utils.py", line 421, in disable +[05:50] [ComfyUI] [comfy-env] mod.unregister() +[05:50] [ComfyUI] [comfy-env] TypeError: '_ClassNamespace' object is not callable +[05:50] [ComfyUI] [comfy-env] Scanned nodes: 125 nodes (9.8s) +[05:50] [ComfyUI] [comfy-env] Scanned nodes root: 125 nodes (9.8s) +[05:50] [ComfyUI] [comfy-env] Imported nodes root: 125 nodes (isolation) +[05:50] [ComfyUI] [comfy-env] Registered 125 total nodes +[05:50] [ComfyUI] [comfy-env] Version: 0.3.87 +[05:50] [ComfyUI] [comfy-env] register_nodes: ComfyUI-Sharp +[05:50] [ComfyUI] [comfy-env] ComfyUI source dir: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI +[05:50] [ComfyUI] [comfy-env] Found 1 isolation env(s) +[05:50] [ComfyUI] [comfy-env] Scanning nodes metadata (isolation root)... +[05:50] [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 236 DLLs +[05:50] [ComfyUI] [comfy-env] Metadata scan: C:\Users\runneradmin\.pixi\bin\pixi.exe run --as-is --manifest-path C:\Users\runneradmin\AppData\Local\Programs\comfy-env\pixi.toml -e sharp-nodes python C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_v4ncywa4.py D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp nodes C:\Users\RUNNER~1\AppData\Local\Temp\comfy_meta_out_h6a1xlz0.pkl +[05:50] [ComfyUI] [comfy-env] Scan env PATH for nodes: +[05:50] [ComfyUI] [comfy-env] [0] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes +[05:50] [ComfyUI] [comfy-env] [1] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Library\bin +[05:50] [ComfyUI] [comfy-env] [2] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Scripts +[05:50] [ComfyUI] [comfy-env] [3] C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\bpy +[05:50] [ComfyUI] [comfy-env] [4] C:\Windows\System32 +[05:50] [ComfyUI] [comfy-env] [5] C:\Windows +[05:50] [ComfyUI] [comfy-env] [6] C:\Windows\System32\Wbem +[05:57] [ComfyUI] [comfy-env] Metadata scan stderr for nodes: +[05:57] [ComfyUI] [comfy-env] [meta-scan] importing nodes from D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp +[05:57] [ComfyUI] [comfy-env] [meta-scan] import OK +[05:57] [ComfyUI] [comfy-env] Scanned nodes: 8 nodes (7.2s) +[05:57] [ComfyUI] [comfy-env] Scanned nodes root: 8 nodes (7.2s) +[05:57] [ComfyUI] [comfy-env] Imported nodes root: 8 nodes (isolation) +[05:57] [ComfyUI] [comfy-env] Registered 8 total nodes +[05:57] [ComfyUI] +[05:57] [ComfyUI] Import times for custom nodes: +[05:57] [ComfyUI] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\websocket_image_save.py +[05:57] [ComfyUI] 0.0 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-validate-endpoint +[05:57] [ComfyUI] 7.2 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp +[05:57] [ComfyUI] 11.7 seconds: D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-GeometryPack +[05:57] [ComfyUI] +[05:57] [ComfyUI] Context impl SQLiteImpl. +[05:57] [ComfyUI] Will assume non-transactional DDL. +[05:57] [ComfyUI] Context impl SQLiteImpl. +[05:57] [ComfyUI] Will assume non-transactional DDL. +[05:58] [ComfyUI] Running upgrade -> 0001_assets, Initial assets schema +[05:58] [ComfyUI] Revision ID: 0001_assets +[05:58] [ComfyUI] Revises: None +[05:58] [ComfyUI] Create Date: 2025-12-10 00:00:00 +[05:58] [ComfyUI] Running upgrade 0001_assets -> 0002_merge_to_asset_references, Merge AssetInfo and AssetCacheState into unified asset_references table. +[05:58] [ComfyUI] Running upgrade 0002_merge_to_asset_references -> 0003_add_metadata_job_id, Add system_metadata and job_id columns to asset_references. +[05:58] [ComfyUI] Change preview_id FK from assets.id to asset_references.id. +[05:58] [ComfyUI] Database upgraded from None to 0003_add_metadata_job_id +[05:58] [ComfyUI] Starting server +[05:58] [ComfyUI] +[05:58] [ComfyUI] To see the GUI go to: http://127.0.0.1:41888 +[05:58] Server responding, waiting for nodes to load... +[06:18] Server is ready! +[06:18] Checking for import errors in server logs... +[06:18] No import errors detected +[06:19] Found 847 registered nodes +[06:19] [REGISTRATION] PASSED +[06:19] +[06:19] [4/5] INSTANTIATION +[06:19] ---------------------------------------- +[06:19] +[DEBUG] server=, server_url=None, api= +[06:19] Testing node constructors... +[06:22] All 8 node(s) instantiated successfully! +[06:22] [INSTANTIATION] PASSED +[06:22] +[06:22] [5/5] EXECUTION +[06:23] ---------------------------------------- +[06:23] +[DEBUG] server=, server_url=None, api= +[06:23] CPU runner - will execute 2 workflow(s) +[06:23] Running 3 workflow(s) (all with videos)... +[06:23] Installing screenshot dependencies (playwright, pillow)... +[06:25] Packages installed, downloading chromium browser... +[06:38] Screenshot dependencies installed successfully +[06:38] Starting headless browser... +[06:39] Downloading Mesa llvmpipe for Windows... +[06:43] Copied opengl32.dll to Chromium dir +[06:43] Copied libgallium_wgl.dll to Chromium dir +[06:43] Using Mesa llvmpipe (desktop GL) -- multithreaded CPU rendering +[06:44] [1/3] SKIPPED (not in cpu list) pano.json +[06:44] Capturing execution frames: sharp_basic.json +[06:53] Frame 1 saved (frame_000.jpg, t=0.0s) +[06:53] Validating workflow... +[06:53] [ComfyUI] === /validate endpoint called === +[06:53] [ComfyUI] Received JSON with keys: ['prompt'] +[06:53] [ComfyUI] Prompt has 4 nodes +[06:53] [ComfyUI] Node 1: LoadImage +[06:53] [ComfyUI] Inputs: {"image": "beach.jpg"} +[06:53] [ComfyUI] Node 2: LoadSharpModel +[06:53] [ComfyUI] Inputs: {"precision": "auto"} +[06:53] [ComfyUI] Node 4: GeomPackPreviewGaussian +[06:53] [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["5", 0], "extrinsics": ["5", 1], "intrinsics": ["5", 2]} +[06:53] [ComfyUI] Node 5: SharpPredict +[06:53] Queuing workflow for execution... +[06:53] [ComfyUI] Inputs: {"focal_length_mm": 30, "output_prefix": "sharp", "model": ["2", 0], "image": ["1", 0]} +[06:53] [ComfyUI] Generated prompt_id: 0d1be8d3-9c78-4d37-85ce-856d246ff005 +[06:53] [ComfyUI] Calling execution.validate_prompt()... +[06:53] [ComfyUI] Validation result: valid=True +[06:53] [ComfyUI] === Validation PASSED === +[06:53] [ComfyUI] got prompt +[06:53] [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' +[06:53] [ComfyUI] [comfy-env] SubprocessWorker: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe +[06:53] [ComfyUI] [comfy-env] env_vars: {'COMFYUI_BASE': 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI'} +[06:53] [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED +[06:53] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... +[06:53] [ComfyUI] [comfy-env] sharp-nodes: Library/bin has 236 DLLs +[06:53] [ComfyUI] [ComfyUI-Sharp] python: C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe +[06:53] [ComfyUI] [ComfyUI-Sharp] sys_path sent to worker: ['D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages', 'D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp'] +[06:53] [ComfyUI] [SubprocessWorker] is_pixi=True, python=C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\python.exe +[06:53] [ComfyUI] [SubprocessWorker] launching cmd=['C:\\Users\\runneradmin\\.pixi\\bin\\pixi.exe', 'run', '--as-is', '--manifest-path', 'C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\pixi.toml', '-e', 'sharp-nodes', 'python', 'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py', 'tcp://127.0.0.1:57385']... +[06:56] Frame 2 saved (frame_001.jpg, t=2.4s) +[06:56] [capture-periodic] freeze=7ms shot=127ms unfreeze=7ms saved=True +[06:56] [ComfyUI] [worker:ComfyUI-Sharp] ERROR: Failed to import comfy_kitchen, Error: No module named 'comfy_kitchen', fp8 and fp4 support will not be available. +[06:57] [ComfyUI] [SubprocessWorker] worker started/confirmed +[06:57] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... +[06:57] [ComfyUI] [SubprocessWorker] created 0 shm blocks +[06:57] [ComfyUI] [SubprocessWorker] sending request via socket... +[06:57] [ComfyUI] [SubprocessWorker] call_id=1 sending call_method +[06:58] [ComfyUI] Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. +[06:58] [ComfyUI] [worker:ComfyUI-Sharp] WARNING: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads. [06:58] [ComfyUI] -[06:58] [ComfyUI] sharp_2572gikvuh.pt: 46%|████▌ | 1.30G/2.81G [00:08<00:04, 313MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[06:58] Frame 6 saved (frame_005.jpg, t=15.9s) -[06:58] [capture-periodic] freeze=18ms shot=252ms unfreeze=6ms saved=True -[06:58] [ComfyUI] -[06:58] [ComfyUI] sharp_2572gikvuh.pt: 51%|█████ | 1.43G/2.81G [00:08<00:03, 376MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[06:58] [ComfyUI] -[06:58] [ComfyUI] sharp_2572gikvuh.pt: 53%|█████▎ | 1.50G/2.81G [00:08<00:03, 369MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[06:59] [ComfyUI] -[06:59] [ComfyUI] sharp_2572gikvuh.pt: 56%|█████▌ | 1.57G/2.81G [00:09<00:04, 264MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[06:59] [ComfyUI] -[06:59] [ComfyUI] sharp_2572gikvuh.pt: 63%|██████▎ | 1.77G/2.81G [00:09<00:02, 397MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[06:59] [ComfyUI] -[06:59] [ComfyUI] sharp_2572gikvuh.pt: 68%|██████▊ | 1.90G/2.81G [00:09<00:02, 434MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[06:59] [ComfyUI] -[06:59] [ComfyUI] sharp_2572gikvuh.pt: 72%|███████▏ | 2.04G/2.81G [00:09<00:01, 461MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[07:00] [ComfyUI] -[07:00] [ComfyUI] sharp_2572gikvuh.pt: 77%|███████▋ | 2.17G/2.81G [00:10<00:01, 482MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[07:00] [ComfyUI] -[07:00] [ComfyUI] sharp_2572gikvuh.pt: 82%|████████▏ | 2.30G/2.81G [00:10<00:01, 498MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[07:00] Frame 7 saved (frame_006.jpg, t=18.3s) -[07:00] [capture-periodic] freeze=7ms shot=125ms unfreeze=5ms saved=True -[07:00] [ComfyUI] -[07:00] [ComfyUI] sharp_2572gikvuh.pt: 87%|████████▋ | 2.44G/2.81G [00:10<00:00, 509MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 -[07:00] [ComfyUI] -[07:00] [ComfyUI] sharp_2572gikvuh.pt: 92%|█████████▏| 2.57G/2.81G [00:10<00:00, 517MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[06:58] Frame 3 saved (frame_002.jpg, t=4.7s) +[06:58] [capture-periodic] freeze=6ms shot=125ms unfreeze=6ms saved=True +[07:00] [capture-loop] iter=50 t=6.2s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=8 ram=5.1/16.0GB (32%) swap=0.2/2.9GB (6%) cpu=47% browser_rss=0.70GB +[07:01] [ComfyUI] sharp_2572gikvuh.pt: 0%| | 0.00/2.81G [00:00 -[07:10] [ComfyUI] import comfy.hooks -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in -[07:10] [ComfyUI] import comfy.lora -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in -[07:10] [ComfyUI] import comfy.model_base -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in -[07:10] [ComfyUI] import comfy.ldm.hidream_o1.model -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in -[07:10] [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in -[07:10] [ComfyUI] from comfy import sd1_clip -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in -[07:10] [ComfyUI] from transformers import CLIPTokenizer -[07:10] [ComfyUI] ModuleNotFoundError: No module named 'transformers' -[07:10] [ComfyUI] -[07:10] [ComfyUI] Traceback (most recent call last): -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 535, in execute -[07:10] [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) -[07:10] [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 335, in get_output_data -[07:10] [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) -[07:10] [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 309, in _async_map_node_over_list -[07:10] [ComfyUI] await process_inputs(input_dict, i) -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 297, in process_inputs -[07:10] [ComfyUI] result = f(**inputs) -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy -[07:10] [ComfyUI] result = worker.call_method( -[07:10] [ComfyUI] module_name=mod, -[07:10] [ComfyUI] ...<4 lines>... -[07:10] [ComfyUI] timeout=600.0, -[07:10] [ComfyUI] ) -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method -[07:10] [ComfyUI] raise WorkerError( -[07:10] [ComfyUI] ...<2 lines>... -[07:10] [ComfyUI] ) -[07:10] [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' -[07:10] [ComfyUI] -[07:10] [ComfyUI] Worker traceback: -[07:10] [ComfyUI] Traceback (most recent call last): -[07:10] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main -[07:10] [ComfyUI] result = method(**inputs) -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED -[07:10] [ComfyUI] to_return = cls.execute(*args, **kwargs) -[07:10] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context -[07:10] [ComfyUI] return func(*args, **kwargs) -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute -[07:10] [ComfyUI] patcher = _load_sharp_model(model) -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model -[07:10] [ComfyUI] import comfy.model_patcher -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in -[07:10] [ComfyUI] import comfy.hooks -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in -[07:10] [ComfyUI] import comfy.lora -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in -[07:10] [ComfyUI] import comfy.model_base -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in -[07:10] [ComfyUI] import comfy.ldm.hidream_o1.model -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in -[07:10] [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in -[07:10] [ComfyUI] from comfy import sd1_clip -[07:10] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in -[07:10] [ComfyUI] from transformers import CLIPTokenizer -[07:10] [ComfyUI] ModuleNotFoundError: No module named 'transformers' -[07:10] [ComfyUI] -[07:10] [ComfyUI] -[07:10] [ComfyUI] Prompt executed in 27.88 seconds -[07:10] Execution complete (t=28.3s) -[07:10] Execution error: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544} -[07:11] Capturing execution frames: sharp_exif.json -[07:17] Frame 1 saved (frame_000.jpg, t=0.0s) -[07:17] Validating workflow... -[07:17] [ComfyUI] === /validate endpoint called === -[07:17] [ComfyUI] Received JSON with keys: ['prompt'] -[07:17] [ComfyUI] Prompt has 4 nodes -[07:17] [ComfyUI] Node 2: LoadSharpModel -[07:17] [ComfyUI] Inputs: {"precision": "auto"} -[07:17] [ComfyUI] Node 7: SharpPredict -[07:17] [ComfyUI] Inputs: {"focal_length_mm": ["9", 2], "output_prefix": "sharp", "model": ["2", 0], "image": ["9", 0]} -[07:17] Queuing workflow for execution... -[07:17] [ComfyUI] Node 8: GeomPackPreviewGaussian -[07:17] [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["7", 0], "extrinsics": ["7", 1], "intrinsics": ["7", 2]} -[07:17] [ComfyUI] Node 9: LoadImageWithExif -[07:17] [ComfyUI] Inputs: {"image": "eth3d.png", "default_focal_mm": 30} -[07:17] [ComfyUI] Generated prompt_id: 649e627c-f8f2-4468-a244-3d9dd694e972 -[07:17] [ComfyUI] Calling execution.validate_prompt()... -[07:17] [ComfyUI] Validation result: valid=True -[07:17] [ComfyUI] === Validation PASSED === -[07:17] [ComfyUI] got prompt -[07:17] [ComfyUI] [comfy-env] Running LoadImageWithExif: image: 'eth3d.png', default_focal_mm: 30.0 -[07:17] [ComfyUI] [SubprocessWorker] call_method: nodes.load_image_exif.LoadImageWithExif.EXECUTE_NORMALIZED -[07:17] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... -[07:17] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... -[07:17] [ComfyUI] [ComfyUI-Sharp] Health check: ok -[07:17] [ComfyUI] [SubprocessWorker] worker started/confirmed -[07:17] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... -[07:17] [ComfyUI] [SubprocessWorker] created 0 shm blocks -[07:17] [ComfyUI] [SubprocessWorker] sending request via socket... -[07:17] [ComfyUI] [SubprocessWorker] call_id=3 sending call_method -[07:17] [ComfyUI] [SubprocessWorker] got response: ok -[07:17] [ComfyUI] [comfy-env] LoadImageWithExif done (0.64s): result: NodeOutput -[07:17] [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' -[07:17] [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED -[07:17] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... -[07:17] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... -[07:17] [ComfyUI] [ComfyUI-Sharp] Health check: ok -[07:17] [ComfyUI] [SubprocessWorker] worker started/confirmed -[07:17] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... -[07:17] [ComfyUI] [SubprocessWorker] created 0 shm blocks -[07:17] [ComfyUI] [SubprocessWorker] sending request via socket... -[07:17] [ComfyUI] [SubprocessWorker] call_id=4 sending call_method -[07:18] [ComfyUI] [SubprocessWorker] got response: ok -[07:18] [ComfyUI] [comfy-env] LoadSharpModel done (0.37s): result: NodeOutput -[07:18] [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu -[07:18] [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED -[07:18] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... -[07:18] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... -[07:18] [ComfyUI] [ComfyUI-Sharp] Health check: ok -[07:18] [ComfyUI] [SubprocessWorker] worker started/confirmed -[07:18] [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 2022, 3040, 3]) -[07:18] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... -[07:18] [ComfyUI] [SubprocessWorker] created 0 shm blocks -[07:18] [ComfyUI] [SubprocessWorker] sending request via socket... -[07:18] [ComfyUI] [SubprocessWorker] call_id=5 sending call_method -[07:18] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size'] -[07:18] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 2022, 3040, 3] -[07:18] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 2022, 3040, 3]) -[07:18] [ComfyUI] [SubprocessWorker] got response: error +[07:01] [ComfyUI] sharp_2572gikvuh.pt: 10%|█ | 292M/2.81G [00:03<00:24, 104MB/s] [SubprocessWorker] callback 'report_progress' from call_id=1 +[07:02] [ComfyUI] +[07:02] [ComfyUI] sharp_2572gikvuh.pt: 13%|█▎ | 359M/2.81G [00:04<00:29, 82.3MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:03] [ComfyUI] +[07:03] [ComfyUI] sharp_2572gikvuh.pt: 15%|█▌ | 427M/2.81G [00:05<00:26, 90.9MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:03] Frame 4 saved (frame_003.jpg, t=9.5s) +[07:03] [capture-periodic] freeze=29ms shot=246ms unfreeze=88ms saved=True +[07:03] [ComfyUI] +[07:03] [ComfyUI] sharp_2572gikvuh.pt: 20%|█▉ | 561M/2.81G [00:05<00:15, 144MB/s] [SubprocessWorker] callback 'report_progress' from call_id=1 +[07:03] [ComfyUI] +[07:03] [ComfyUI] sharp_2572gikvuh.pt: 22%|██▏ | 628M/2.81G [00:05<00:12, 168MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:03] [ComfyUI] +[07:03] [ComfyUI] sharp_2572gikvuh.pt: 25%|██▍ | 695M/2.81G [00:05<00:11, 182MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:04] [ComfyUI] +[07:04] [ComfyUI] sharp_2572gikvuh.pt: 27%|██▋ | 768M/2.81G [00:06<00:14, 142MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:05] [ComfyUI] +[07:05] [ComfyUI] sharp_2572gikvuh.pt: 30%|██▉ | 829M/2.81G [00:06<00:12, 159MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:05] [ComfyUI] +[07:05] [ComfyUI] sharp_2572gikvuh.pt: 32%|███▏ | 896M/2.81G [00:07<00:10, 187MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:05] [ComfyUI] +[07:05] [ComfyUI] sharp_2572gikvuh.pt: 34%|███▍ | 963M/2.81G [00:07<00:09, 199MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:05] [ComfyUI] +[07:05] [ComfyUI] sharp_2572gikvuh.pt: 39%|███▉ | 1.10G/2.81G [00:07<00:05, 297MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:05] Frame 5 saved (frame_004.jpg, t=12.0s) +[07:05] [capture-periodic] freeze=10ms shot=183ms unfreeze=6ms saved=True +[07:05] [ComfyUI] +[07:05] [ComfyUI] sharp_2572gikvuh.pt: 44%|████▍ | 1.23G/2.81G [00:07<00:04, 360MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:06] [ComfyUI] +[07:06] [ComfyUI] sharp_2572gikvuh.pt: 51%|█████ | 1.43G/2.81G [00:08<00:02, 481MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:06] [ComfyUI] +[07:06] [ComfyUI] sharp_2572gikvuh.pt: 56%|█████▌ | 1.57G/2.81G [00:08<00:02, 497MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:06] [ComfyUI] +[07:06] [ComfyUI] sharp_2572gikvuh.pt: 63%|██████▎ | 1.77G/2.81G [00:08<00:01, 586MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:06] [ComfyUI] +[07:06] [ComfyUI] sharp_2572gikvuh.pt: 68%|██████▊ | 1.90G/2.81G [00:08<00:01, 571MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:07] [ComfyUI] +[07:07] [ComfyUI] sharp_2572gikvuh.pt: 72%|███████▏ | 2.04G/2.81G [00:09<00:01, 561MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:07] [ComfyUI] +[07:07] [ComfyUI] sharp_2572gikvuh.pt: 77%|███████▋ | 2.17G/2.81G [00:09<00:01, 553MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:07] [ComfyUI] +[07:07] [ComfyUI] sharp_2572gikvuh.pt: 82%|████████▏ | 2.30G/2.81G [00:09<00:00, 549MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:07] [ComfyUI] +[07:07] [ComfyUI] sharp_2572gikvuh.pt: 87%|████████▋ | 2.44G/2.81G [00:09<00:00, 545MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:08] Frame 6 saved (frame_005.jpg, t=14.2s) +[07:08] [capture-periodic] freeze=5ms shot=128ms unfreeze=4ms saved=True +[07:08] [ComfyUI] +[07:08] [ComfyUI] sharp_2572gikvuh.pt: 92%|█████████▏| 2.57G/2.81G [00:10<00:00, 543MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:08] [ComfyUI] +[07:08] [ComfyUI] sharp_2572gikvuh.pt: 96%|█████████▋| 2.71G/2.81G [00:10<00:00, 540MB/s][SubprocessWorker] callback 'report_progress' from call_id=1 +[07:08] [ComfyUI] [SubprocessWorker] callback 'report_progress' from call_id=1 +[07:08] [ComfyUI] +[07:08] [ComfyUI] sharp_2572gikvuh.pt: 100%|██████████| 2.81G/2.81G [00:10<00:00, 272MB/s] +[07:08] [capture-loop] iter=100 t=15.0s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=7 ram=5.3/16.0GB (33%) swap=0.2/2.9GB (5%) cpu=78% browser_rss=0.75GB +[07:09] [ComfyUI] [SubprocessWorker] got response: ok +[07:09] [ComfyUI] [comfy-env] LoadSharpModel done (15.35s): result: NodeOutput +[07:09] [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 30.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,1024,1536,3] cpu +[07:09] [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED +[07:09] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... +[07:09] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... +[07:09] [ComfyUI] [ComfyUI-Sharp] Health check: ok +[07:09] [ComfyUI] [SubprocessWorker] worker started/confirmed +[07:09] [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 1024, 1536, 3]) +[07:09] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... +[07:09] [ComfyUI] [SubprocessWorker] created 0 shm blocks +[07:09] [ComfyUI] [SubprocessWorker] sending request via socket... +[07:09] [ComfyUI] [SubprocessWorker] call_id=2 sending call_method +[07:10] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size'] +[07:10] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 1024, 1536, 3] +[07:10] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 1024, 1536, 3]) +[07:10] Frame 7 saved (frame_006.jpg, t=16.5s) +[07:10] [capture-periodic] freeze=5ms shot=109ms unfreeze=4ms saved=True +[07:11] [ComfyUI] [worker:ComfyUI-Sharp] WARNING: No comfy kitchen, using old apply_rope functions. +[07:14] [capture-loop] iter=150 t=20.8s state={'complete': False, 'error': None, 'executedCount': 0, 'wsState': 1} eval_ms=6 ram=5.3/16.0GB (33%) swap=0.2/2.9GB (5%) cpu=38% browser_rss=0.75GB +[07:17] [ComfyUI] [SubprocessWorker] got response: error [07:18] [ComfyUI] !!! Exception during processing !!! No module named 'transformers' [07:18] [ComfyUI] [07:18] [ComfyUI] Worker traceback: [07:18] [ComfyUI] Traceback (most recent call last): -[07:18] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main +[07:18] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main [07:18] [ComfyUI] result = method(**inputs) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED [07:18] [ComfyUI] to_return = cls.execute(*args, **kwargs) -[07:18] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context +[07:18] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context [07:18] [ComfyUI] return func(*args, **kwargs) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute [07:18] [ComfyUI] patcher = _load_sharp_model(model) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model [07:18] [ComfyUI] import comfy.model_patcher -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in [07:18] [ComfyUI] import comfy.hooks -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in [07:18] [ComfyUI] import comfy.lora -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in [07:18] [ComfyUI] import comfy.model_base -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in [07:18] [ComfyUI] import comfy.ldm.hidream_o1.model -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in [07:18] [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in [07:18] [ComfyUI] from comfy import sd1_clip -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in [07:18] [ComfyUI] from transformers import CLIPTokenizer [07:18] [ComfyUI] ModuleNotFoundError: No module named 'transformers' [07:18] [ComfyUI] [07:18] [ComfyUI] Traceback (most recent call last): -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 535, in execute +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 535, in execute [07:18] [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) -[07:18] [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 335, in get_output_data +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 335, in get_output_data [07:18] [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) -[07:18] [ComfyUI] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 309, in _async_map_node_over_list +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 309, in _async_map_node_over_list [07:18] [ComfyUI] await process_inputs(input_dict, i) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\execution.py", line 297, in process_inputs +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 297, in process_inputs [07:18] [ComfyUI] result = f(**inputs) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy [07:18] [ComfyUI] result = worker.call_method( -[07:18] [ComfyUI] module_name=mod, -[07:18] [ComfyUI] ...<4 lines>... -[07:18] [ComfyUI] timeout=600.0, -[07:18] [ComfyUI] ) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\.venv\Lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method [07:18] [ComfyUI] raise WorkerError( -[07:18] [ComfyUI] ...<2 lines>... -[07:18] [ComfyUI] ) [07:18] [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' [07:18] [ComfyUI] [07:18] [ComfyUI] Worker traceback: [07:18] [ComfyUI] Traceback (most recent call last): -[07:18] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_3xmq2ani\persistent_worker.py", line 1762, in main +[07:18] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main [07:18] [ComfyUI] result = method(**inputs) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED [07:18] [ComfyUI] to_return = cls.execute(*args, **kwargs) -[07:18] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context +[07:18] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context [07:18] [ComfyUI] return func(*args, **kwargs) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute [07:18] [ComfyUI] patcher = _load_sharp_model(model) -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model [07:18] [ComfyUI] import comfy.model_patcher -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_patcher.py", line 32, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in [07:18] [ComfyUI] import comfy.hooks -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\hooks.py", line 14, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in [07:18] [ComfyUI] import comfy.lora -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\lora.py", line 23, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in [07:18] [ComfyUI] import comfy.model_base -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\model_base.py", line 61, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in [07:18] [ComfyUI] import comfy.ldm.hidream_o1.model -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in [07:18] [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in [07:18] [ComfyUI] from comfy import sd1_clip -[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0757\ComfyUI\comfy\sd1_clip.py", line 3, in +[07:18] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in [07:18] [ComfyUI] from transformers import CLIPTokenizer [07:18] [ComfyUI] ModuleNotFoundError: No module named 'transformers' [07:18] [ComfyUI] [07:18] [ComfyUI] -[07:18] [ComfyUI] Prompt executed in 1.35 seconds -[07:18] Execution complete (t=1.6s) -[07:18] Execution error: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667} -[07:18] Results saved to D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0757\dev\windows-cpu\results.json -[07:18] Model report: 4 files, 2.6 GB -> D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0757\dev\windows-cpu\models.json -[07:18] Saved: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0757\dev\windows-cpu\index.html -[07:18] +[07:18] [ComfyUI] Prompt executed in 24.14 seconds +[07:18] Execution complete (t=24.5s) +[07:18] Execution error: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707} +[07:18] Capturing execution frames: sharp_exif.json +[07:25] Frame 1 saved (frame_000.jpg, t=0.0s) +[07:25] Validating workflow... +[07:25] [ComfyUI] === /validate endpoint called === +[07:25] [ComfyUI] Received JSON with keys: ['prompt'] +[07:25] [ComfyUI] Prompt has 4 nodes +[07:25] [ComfyUI] Node 2: LoadSharpModel +[07:25] [ComfyUI] Inputs: {"precision": "auto"} +[07:25] [ComfyUI] Node 7: SharpPredict +[07:25] [ComfyUI] Inputs: {"focal_length_mm": ["9", 2], "output_prefix": "sharp", "model": ["2", 0], "image": ["9", 0]} +[07:25] [ComfyUI] Node 8: GeomPackPreviewGaussian +[07:25] Queuing workflow for execution... +[07:25] [ComfyUI] Inputs: {"preview_gaussian": "", "ply_path": ["7", 0], "extrinsics": ["7", 1], "intrinsics": ["7", 2]} +[07:25] [ComfyUI] Node 9: LoadImageWithExif +[07:25] [ComfyUI] Inputs: {"image": "eth3d.png", "default_focal_mm": 30} +[07:25] [ComfyUI] Generated prompt_id: 2440ae15-c32b-415d-b065-aace32fcab2f +[07:25] [ComfyUI] Calling execution.validate_prompt()... +[07:25] [ComfyUI] Validation result: valid=True +[07:25] [ComfyUI] === Validation PASSED === +[07:25] [ComfyUI] got prompt +[07:25] [ComfyUI] [comfy-env] Running LoadImageWithExif: image: 'eth3d.png', default_focal_mm: 30.0 +[07:25] [ComfyUI] [SubprocessWorker] call_method: nodes.load_image_exif.LoadImageWithExif.EXECUTE_NORMALIZED +[07:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... +[07:25] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... +[07:25] [ComfyUI] [ComfyUI-Sharp] Health check: ok +[07:25] [ComfyUI] [SubprocessWorker] worker started/confirmed +[07:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... +[07:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks +[07:25] [ComfyUI] [SubprocessWorker] sending request via socket... +[07:25] [ComfyUI] [SubprocessWorker] call_id=3 sending call_method +[07:25] [ComfyUI] [SubprocessWorker] got response: ok +[07:25] [ComfyUI] [comfy-env] LoadImageWithExif done (0.44s): result: NodeOutput +[07:25] [ComfyUI] [comfy-env] Running LoadSharpModel: precision: 'auto' +[07:25] [ComfyUI] [SubprocessWorker] call_method: nodes.load_model.LoadSharpModel.EXECUTE_NORMALIZED +[07:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... +[07:25] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... +[07:25] [ComfyUI] [ComfyUI-Sharp] Health check: ok +[07:25] [ComfyUI] [SubprocessWorker] worker started/confirmed +[07:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... +[07:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks +[07:25] [ComfyUI] [SubprocessWorker] sending request via socket... +[07:25] [ComfyUI] [SubprocessWorker] call_id=4 sending call_method +[07:25] [ComfyUI] [SubprocessWorker] got response: ok +[07:25] [ComfyUI] [comfy-env] LoadSharpModel done (0.15s): result: NodeOutput +[07:25] [ComfyUI] [comfy-env] Running SharpPredict: focal_length_mm: 20.0, output_prefix: 'sharp', model: dict, image: torch.float32 [1,2022,3040,3] cpu +[07:25] [ComfyUI] [SubprocessWorker] call_method: nodes.predict.SharpPredict.EXECUTE_NORMALIZED +[07:25] [ComfyUI] [SubprocessWorker] acquired lock, ensuring started... +[07:25] [ComfyUI] [ComfyUI-Sharp] Health check: ping (timeout=5.0s)... +[07:25] [ComfyUI] [ComfyUI-Sharp] Health check: ok +[07:25] [ComfyUI] [SubprocessWorker] worker started/confirmed +[07:25] [ComfyUI] [comfy-env] PRE-SERIALIZE 'image' shape: torch.Size([1, 2022, 3040, 3]) +[07:25] [ComfyUI] [SubprocessWorker] serializing kwargs to shm... +[07:25] [ComfyUI] [SubprocessWorker] created 0 shm blocks +[07:25] [ComfyUI] [SubprocessWorker] sending request via socket... +[07:25] [ComfyUI] [SubprocessWorker] call_id=5 sending call_method +[07:25] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] _from_shm got dict with keys: ['__type__', 'strategy', 'manager_path', 'storage_key', 'storage_size'] +[07:25] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZE TensorRef: tensor_size=[1, 2022, 3040, 3] +[07:25] [ComfyUI] [worker:ComfyUI-Sharp] [comfy-env] DESERIALIZED tensor shape: torch.Size([1, 2022, 3040, 3]) +[07:25] [ComfyUI] [SubprocessWorker] got response: error +[07:25] [ComfyUI] !!! Exception during processing !!! No module named 'transformers' +[07:25] [ComfyUI] +[07:25] [ComfyUI] Worker traceback: +[07:25] [ComfyUI] Traceback (most recent call last): +[07:25] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main +[07:25] [ComfyUI] result = method(**inputs) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED +[07:25] [ComfyUI] to_return = cls.execute(*args, **kwargs) +[07:25] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context +[07:25] [ComfyUI] return func(*args, **kwargs) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute +[07:25] [ComfyUI] patcher = _load_sharp_model(model) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model +[07:25] [ComfyUI] import comfy.model_patcher +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in +[07:25] [ComfyUI] import comfy.hooks +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in +[07:25] [ComfyUI] import comfy.lora +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in +[07:25] [ComfyUI] import comfy.model_base +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in +[07:25] [ComfyUI] import comfy.ldm.hidream_o1.model +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in +[07:25] [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in +[07:25] [ComfyUI] from comfy import sd1_clip +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in +[07:25] [ComfyUI] from transformers import CLIPTokenizer +[07:25] [ComfyUI] ModuleNotFoundError: No module named 'transformers' +[07:25] [ComfyUI] +[07:25] [ComfyUI] Traceback (most recent call last): +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 535, in execute +[07:25] [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) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 335, in get_output_data +[07:25] [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) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 309, in _async_map_node_over_list +[07:25] [ComfyUI] await process_inputs(input_dict, i) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\execution.py", line 297, in process_inputs +[07:25] [ComfyUI] result = f(**inputs) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\metadata.py", line 556, in proxy +[07:25] [ComfyUI] result = worker.call_method( +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\.venv\lib\site-packages\comfy_env\isolation\workers\subprocess.py", line 674, in call_method +[07:25] [ComfyUI] raise WorkerError( +[07:25] [ComfyUI] comfy_env.isolation.workers.base.WorkerError: No module named 'transformers' +[07:25] [ComfyUI] +[07:25] [ComfyUI] Worker traceback: +[07:25] [ComfyUI] Traceback (most recent call last): +[07:25] [ComfyUI] File "C:\Users\RUNNER~1\AppData\Local\Temp\comfyui_pvenv_673nc73q\persistent_worker.py", line 1762, in main +[07:25] [ComfyUI] result = method(**inputs) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy_api\latest\_io.py", line 1833, in EXECUTE_NORMALIZED +[07:25] [ComfyUI] to_return = cls.execute(*args, **kwargs) +[07:25] [ComfyUI] File "C:\Users\runneradmin\AppData\Local\Programs\comfy-env\.pixi\envs\sharp-nodes\lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context +[07:25] [ComfyUI] return func(*args, **kwargs) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\predict.py", line 111, in execute +[07:25] [ComfyUI] patcher = _load_sharp_model(model) +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\custom_nodes\ComfyUI-Sharp\nodes\load_model.py", line 75, in _load_sharp_model +[07:25] [ComfyUI] import comfy.model_patcher +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_patcher.py", line 32, in +[07:25] [ComfyUI] import comfy.hooks +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\hooks.py", line 14, in +[07:25] [ComfyUI] import comfy.lora +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\lora.py", line 23, in +[07:25] [ComfyUI] import comfy.model_base +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\model_base.py", line 61, in +[07:25] [ComfyUI] import comfy.ldm.hidream_o1.model +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\ldm\hidream_o1\model.py", line 20, in +[07:25] [ComfyUI] from comfy.text_encoders.qwen35 import Qwen35VisionModel +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\text_encoders\qwen35.py", line 10, in +[07:25] [ComfyUI] from comfy import sd1_clip +[07:25] [ComfyUI] File "D:\a\comfy-gpu-ci\comfy-gpu-ci\test_workspaces\Sharp-0800\ComfyUI\comfy\sd1_clip.py", line 3, in +[07:25] [ComfyUI] from transformers import CLIPTokenizer +[07:25] [ComfyUI] ModuleNotFoundError: No module named 'transformers' +[07:25] [ComfyUI] +[07:25] [ComfyUI] +[07:25] [ComfyUI] Prompt executed in 0.71 seconds +[07:25] Execution complete (t=0.9s) +[07:25] Execution error: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518} +[07:26] Results saved to D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0800\dev\windows-cpu\results.json +[07:26] Model report: 4 files, 2.6 GB -> D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0800\dev\windows-cpu\models.json +[07:26] Saved: D:\a\comfy-gpu-ci\comfy-gpu-ci\comfy-test-logs\Sharp-0800\dev\windows-cpu\index.html +[07:26] windows: FAILED -[07:18] Error: Workflow execution failed (2 error(s)) -[07:18] Details: sharp_basic.json: Workflow execution failed: {'prompt_id': 'e2eb66a0-bb54-4f43-8918-14996e3946ad', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '4', '1', '5'], 'timestamp': 1778659457544} +[07:26] Error: Workflow execution failed (2 error(s)) +[07:26] Details: sharp_basic.json: Workflow execution failed: {'prompt_id': 'dbfa75e8-edb0-438e-a8bb-39ec68a69d59', 'node_id': '5', 'node_type': 'SharpPredict', 'executed': ['2', '1'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [30], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n [[0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n [0.0039, 0.4824, 0.9569],\n ...,\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000],\n [0.0510, 0.0275, 0.0000]],\n\n ...,\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235],\n [0.5098, 0.4627, 0.4235]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]],\n\n [[0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n [0.6824, 0.6118, 0.5333],\n ...,\n [0.5059, 0.4588, 0.4392],\n [0.5059, 0.4627, 0.4314],\n [0.5059, 0.4627, 0.4314]]]])'], 'prompt': ["{'1': {'inputs': {'image': 'beach.jpg'}, 'class_type': 'LoadImage', '_meta': {'title': 'Load Image'}, 'is_changed': ['ee4f94632a5ec7038826e875829a62a81dc2a9b85ed59440f2eaa37b3704fa24']}, '2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '4': {'inputs': {'preview_gaussian': '', 'ply_path': ['5', 0], 'extrinsics': ['5', 1], 'intrinsics': ['5', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '5': {'inputs': {'focal_length_mm': 30.0, 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['1', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 5, 'last_link_id': 10, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [6]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 1, 'type': 'LoadImage', 'pos': [-150, -100], 'size': [274, 340], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'IMAGE', 'type': 'IMAGE', 'links': [7]}, {'name': 'MASK', 'type': 'MASK', 'links': []}], 'properties': {'Node name for S&R': 'LoadImage', 'cnr_id': 'comfy-core', 'ver': '0.5.1'}, 'widgets_values': ['beach.jpg', 'image']}, {'id': 5, 'type': 'SharpPredict', 'pos': [181.546875, -251.55078125], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 6}, {'name': 'image', 'type': 'IMAGE', 'link': 7}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [8]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [9]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [10]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'aa98b213e3d0770477bbf46046094c5cb8ff6052'}, 'widgets_values': [30, 'sharp']}, {'id': 4, 'type': 'GeomPackPreviewGaussian', 'pos': [629.92578125, -322.046875], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 8}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 9}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 10}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'b7df285fc5b3fef7aad434d8b6e8698efed6358b', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[6, 2, 0, 5, 0, 'SHARP_MODEL'], [7, 1, 0, 5, 1, 'IMAGE'], [8, 5, 0, 4, 0, 'STRING'], [9, 5, 1, 4, 1, 'EXTRINSICS'], [10, 5, 2, 4, 2, 'INTRINSICS']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1, 'offset': [300.79296875, 604.72265625]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['4', '2', '5', '1'], 'timestamp': 1778659649707} Details: -Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-50ml6u2s\ComfyUI-Sharp\workflows\sharp_basic.json +Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-17ziq1kb\ComfyUI-Sharp\workflows\sharp_basic.json Node error: SharpPredict -sharp_exif.json: Workflow execution failed: {'prompt_id': '437618bf-3d88-4fe9-9166-25915987ebb1', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_3xmq2ani\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\Lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\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 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n module_name=mod,\n ...<4 lines>...\n timeout=600.0,\n )\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0757\\.venv\\Lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n ...<2 lines>...\n )\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0757\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['2', '8', '7', '9'], 'timestamp': 1778659465667} +sharp_exif.json: Workflow execution failed: {'prompt_id': '97172370-b500-4843-90cc-799f5a285b82', 'node_id': '7', 'node_type': 'SharpPredict', 'executed': ['2', '9'], 'exception_message': 'No module named \'transformers\'\n\nWorker traceback:\nTraceback (most recent call last):\n File "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\comfyui_pvenv_673nc73q\\persistent_worker.py", line 1762, in main\n result = method(**inputs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy_api\\latest\\_io.py", line 1833, in EXECUTE_NORMALIZED\n to_return = cls.execute(*args, **kwargs)\n File "C:\\Users\\runneradmin\\AppData\\Local\\Programs\\comfy-env\\.pixi\\envs\\sharp-nodes\\lib\\site-packages\\torch\\utils\\_contextlib.py", line 124, in decorate_context\n return func(*args, **kwargs)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\predict.py", line 111, in execute\n patcher = _load_sharp_model(model)\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\custom_nodes\\ComfyUI-Sharp\\nodes\\load_model.py", line 75, in _load_sharp_model\n import comfy.model_patcher\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_patcher.py", line 32, in \n import comfy.hooks\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\hooks.py", line 14, in \n import comfy.lora\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\lora.py", line 23, in \n import comfy.model_base\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\model_base.py", line 61, in \n import comfy.ldm.hidream_o1.model\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\ldm\\hidream_o1\\model.py", line 20, in \n from comfy.text_encoders.qwen35 import Qwen35VisionModel\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\text_encoders\\qwen35.py", line 10, in \n from comfy import sd1_clip\n File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\comfy\\sd1_clip.py", line 3, in \n from transformers import CLIPTokenizer\nModuleNotFoundError: No module named \'transformers\'\n\n', 'exception_type': 'comfy_env.isolation.workers.base.WorkerError', 'traceback': [' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\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 "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 309, in _async_map_node_over_list\n await process_inputs(input_dict, i)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\ComfyUI\\execution.py", line 297, in process_inputs\n result = f(**inputs)\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\metadata.py", line 556, in proxy\n result = worker.call_method(\n', ' File "D:\\a\\comfy-gpu-ci\\comfy-gpu-ci\\test_workspaces\\Sharp-0800\\.venv\\lib\\site-packages\\comfy_env\\isolation\\workers\\subprocess.py", line 674, in call_method\n raise WorkerError(\n'], 'current_inputs': {'focal_length_mm': [20], 'output_prefix': ['sharp'], 'model': ["{'model_path': 'D:\\\\a\\\\comfy-gpu-ci\\\\comfy-gpu-ci\\\\test_workspaces\\\\Sharp-0800\\\\ComfyUI\\\\models\\\\sharp\\\\sharp_2572gikvuh.pt', 'precision': 'auto', 'dtype': 'fp32'}"], 'image': ['tensor([[[[0.2157, 0.1647, 0.1569],\n [0.2275, 0.1608, 0.1608],\n [0.2275, 0.1647, 0.1529],\n ...,\n [0.4471, 0.4745, 0.4863],\n [0.4510, 0.4745, 0.4863],\n [0.4431, 0.4745, 0.4745]],\n\n [[0.2196, 0.1686, 0.1569],\n [0.2314, 0.1647, 0.1608],\n [0.2353, 0.1647, 0.1647],\n ...,\n [0.4549, 0.4784, 0.4706],\n [0.4549, 0.4706, 0.4784],\n [0.4431, 0.4706, 0.4667]],\n\n [[0.2314, 0.1725, 0.1569],\n [0.2510, 0.1725, 0.1608],\n [0.2392, 0.1725, 0.1686],\n ...,\n [0.4588, 0.4745, 0.4627],\n [0.4510, 0.4745, 0.4667],\n [0.4471, 0.4706, 0.4627]],\n\n ...,\n\n [[0.1569, 0.1647, 0.1843],\n [0.1647, 0.1725, 0.1882],\n [0.1490, 0.1686, 0.1922],\n ...,\n [0.1020, 0.1137, 0.1373],\n [0.1137, 0.1176, 0.1412],\n [0.0863, 0.1176, 0.1373]],\n\n [[0.1569, 0.1686, 0.1804],\n [0.1569, 0.1647, 0.1961],\n [0.1490, 0.1647, 0.1961],\n ...,\n [0.1059, 0.1216, 0.1294],\n [0.1176, 0.1216, 0.1333],\n [0.1059, 0.1137, 0.1373]],\n\n [[0.1608, 0.1686, 0.1843],\n [0.1608, 0.1686, 0.1882],\n [0.1569, 0.1686, 0.1882],\n ...,\n [0.1059, 0.1176, 0.1333],\n [0.1137, 0.1176, 0.1333],\n [0.1333, 0.1176, 0.1333]]]])'], 'prompt': ["{'2': {'inputs': {'precision': 'auto'}, 'class_type': 'LoadSharpModel', '_meta': {'title': '(Down)Load SHARP Model'}}, '7': {'inputs': {'focal_length_mm': ['9', 2], 'output_prefix': 'sharp', 'model': ['2', 0], 'image': ['9', 0]}, 'class_type': 'SharpPredict', '_meta': {'title': 'SHARP Predict (Image to PLY)'}}, '8': {'inputs': {'preview_gaussian': '', 'ply_path': ['7', 0], 'extrinsics': ['7', 1], 'intrinsics': ['7', 2]}, 'class_type': 'GeomPackPreviewGaussian', '_meta': {'title': 'Preview Gaussian'}}, '9': {'inputs': {'image': 'eth3d.png', 'default_focal_mm': 30.0}, 'class_type': 'LoadImageWithExif', '_meta': {'title': 'Load Image with EXIF (Focal Length)'}}}"], 'extra_pnginfo': ["{'workflow': {'id': 'sharp-basic-workflow', 'revision': 0, 'last_node_id': 10, 'last_link_id': 21, 'nodes': [{'id': 2, 'type': 'LoadSharpModel', 'pos': [-150, -400], 'size': [270, 106.65625], 'flags': {}, 'order': 0, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'model_config', 'type': 'SHARP_MODEL_CONFIG', 'links': [11]}], 'properties': {'Node name for S&R': 'LoadSharpModel', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': '9f1b9c726e2cfc0118866c3df783e7f6bc895226'}, 'widgets_values': ['auto']}, {'id': 9, 'type': 'LoadImageWithExif', 'pos': [-208.74978010739324, -99.02778023242435], 'size': [342.28125, 420], 'flags': {}, 'order': 1, 'mode': 0, 'inputs': [], 'outputs': [{'name': 'image', 'type': 'IMAGE', 'links': [19]}, {'name': 'mask', 'type': 'MASK', 'links': None}, {'name': 'focal_length_mm', 'type': 'FLOAT', 'links': [20]}], 'properties': {'Node name for S&R': 'LoadImageWithExif', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': ['eth3d.png', 30, 'image']}, {'id': 7, 'type': 'SharpPredict', 'pos': [226.15696022727278, -245.70490056818184], 'size': [298.890625, 212], 'flags': {}, 'order': 2, 'mode': 0, 'inputs': [{'name': 'model', 'type': 'SHARP_MODEL_CONFIG', 'link': 11}, {'name': 'image', 'type': 'IMAGE', 'link': 19}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': None}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': None}, {'name': 'focal_length_mm', 'shape': 7, 'type': 'FLOAT', 'widget': {'name': 'focal_length_mm'}, 'link': 20}], 'outputs': [{'name': 'ply_path', 'type': 'STRING', 'links': [16]}, {'name': 'extrinsics', 'type': 'EXTRINSICS', 'links': [17]}, {'name': 'intrinsics', 'type': 'INTRINSICS', 'links': [18]}], 'properties': {'Node name for S&R': 'SharpPredict', 'aux_id': 'PozzettiAndrea/ComfyUI-Sharp', 'ver': 'c69751a59b587c3b83d0e37cfe2bab3bc838574a'}, 'widgets_values': [30, 'sharp']}, {'id': 8, 'type': 'GeomPackPreviewGaussian', 'pos': [641.9426914835157, -275.49795068697], 'size': [512, 658], 'flags': {}, 'order': 3, 'mode': 0, 'inputs': [{'name': 'ply_path', 'type': 'STRING', 'link': 16}, {'name': 'extrinsics', 'shape': 7, 'type': 'EXTRINSICS', 'link': 17}, {'name': 'intrinsics', 'shape': 7, 'type': 'INTRINSICS', 'link': 18}], 'outputs': [], 'properties': {'Node name for S&R': 'GeomPackPreviewGaussian', 'aux_id': 'PozzettiAndrea/ComfyUI-GeometryPack', 'ver': 'df6bf3d73d0dda9c6ad7428eb58a00dc8cbaf6ed', 'cnr_id': 'comfyui-geometrypack'}, 'widgets_values': ['']}], 'links': [[11, 2, 0, 7, 0, 'SHARP_MODEL'], [16, 7, 0, 8, 0, 'STRING'], [17, 7, 1, 8, 1, 'EXTRINSICS'], [18, 7, 2, 8, 2, 'INTRINSICS'], [19, 9, 0, 7, 1, 'IMAGE'], [20, 9, 2, 7, 4, 'FLOAT']], 'groups': [], 'config': {}, 'extra': {'ds': {'scale': 1.1, 'offset': [292.8560303656579, 525.3669699599554]}, 'workflowRendererVersion': 'LG', 'frontendVersion': '1.43.18'}, 'version': 0.4}}"]}, 'current_outputs': ['7', '2', '8', '9'], 'timestamp': 1778659657518} Details: -Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-50ml6u2s\ComfyUI-Sharp\workflows\sharp_exif.json +Workflow: C:\Users\RUNNER~1\AppData\Local\Temp\comfy-test-run-17ziq1kb\ComfyUI-Sharp\workflows\sharp_exif.json Node error: SharpPredict -[07:18] Stopping ComfyUI server... +[07:26] Stopping ComfyUI server... diff --git a/dev/windows-cpu/videos/sharp_basic/frame_000.jpg b/dev/windows-cpu/videos/sharp_basic/frame_000.jpg index fd31c74c37150ea4d52fa60b5ba2b2d98d304f37..2d2349d16e58875cfc3355dcfd4811baafd05acb 100644 GIT binary patch delta 1370 zcmdmdlWogQwuUW?R~FX?ow2<>X_G+l_ehQe!^y}0GsMmLR(R~pyLZZ=>~7m>`z=SJZo9^ z{fgkP0Oo*)SANM{YfZbd(t5!Gh5jmr%UgHv*iv4d8KqWYxH0&ue_+5>|E>0mE`D47 zCH_={j*ruko9_%mG(UMhc>mTG#O^jH~7Uax4!9CeM%8Oz9iY)V4 zb584iIhH9})~3MRe|UXV^xk^EZ{O~5SI=&%SRm1Bzz}D6`$p-ik^n|m5mX$++}87} z_}7(^EsTr9W(V%8OrE-4k7pu}+cD=Ua>uu(sJv@tXtI5IKdat#0k8M%-@AXhOy6#F z?m>ch&f}LaL!K!n<$RY|^`8MK|7Vq@N~Yb%KN^fv%l+!FyxVeZ%58~LrxvDoCP#`k zSW5D6Jh-Z*!F2c7((2-}@4+#r(#q~cm|1>1?v?uW$@lNR#U%%q6_^_YmT;jj{t4W{(yT#&J8VeZG`ifme7}~dA zoAO*F&_RRUgy*6wgUqwOj71I1a{|wb1TYx8TQ2Hiuv`F=XE$lye+?L*mDAs>Vw9X7 zw~~?FQ1R_opnNbk#pq@+@%?9rikoh;no(vtA5gCW%-&IJ@dt7}$$<=t)ndnUz*y(Y zkOalwS(%SOp*?aD#cv9|TfXF<|Ie@%C@^3Bd-T6w{~2BfeyT6s|9<_yt-vTRkJRJk%AgBK6pnvcpZ?;qUh6KLbcRCtfEZ`H~6hx*)hKkX__>!@d!Sz?@P4|0V#)D}9*& delta 1475 zcmdmTlWp@&wuUW?R~FZYUFE$#B~`=tMCq-=Jzs39OIIpiK78)wOuq|D7#2)BdCZN^ z@W&P2vh!-+`jqzYwiX$%F`SRTHuu{#%U~Wi8wTNL2aXlqw>@9Q(EsM?x*n~=T*viq zFkZR3heWnf>bt0)uL#Q;`1-QA5bZE|>~=;R3<+b7F* z3QX?UEIGO08ONk7f$8#EjGWW|X)-$3V;IXSv4D%g`r=DB%f%uLa#Oan6uN0J!~w0b zz67!?2H6P^wU?)_e^5Vh+2dJ7f8VcA{<45=;o+5EEZ1_KT^UsF*x)Glg>iXyd11!8 zZtFw3|5S#E8Lge0?v(!ZoV@N{Rfo(8B*kNsrK=Y z0A{Usb64KYT&uawaOza26O)c@(qu0jpuN4Vk`aH{WQ5OTU zLWXC}bASfPTrhSOVJM#EeET(!UOqi<6{FPj)2kS{bXa8nZP^1f5ltbwIinWB!yYZ9 zFoLumSCBpe##@EWhUYgPP3L@Ze?Blj0R`;*-);Z<^*_V4#ZUgduD>7uH%nsy!yEZS z_rG5UD(Ij5d+mRQ+WN067Bz@NHBCk+WQH-}rU0YA9?n^MsLK2~&}g8bKir_7_PZcv z1LGXd#%9li9DArMaH-^n8M?AyUhmKU3?NquKZ%9<1MUo<^>8+lFIl0kTLO0lvOUck T>bc>;AuIAvt;rK;&i|VL;z+D{ diff --git a/dev/windows-cpu/videos/sharp_basic/frame_001.jpg b/dev/windows-cpu/videos/sharp_basic/frame_001.jpg index 57d6d1647159f24f1d6b0ed6f0343a90b6b7aa22..8c5047249faab0211870259382ed4c35db1a6e29 100644 GIT binary patch delta 1554 zcmZ4UiEZsCwuUW?IUDMO)^=ns>9Gt+;W^r_!JlMXRaYv1TjGpL#-fBJiCj+#4A|G% zO9j?yox9|=Vt0p*L4={~zoZOCg{{IdHkHXwn+g`IZhYxK@1k;a|B!uJsGejABSpUsntVR--lXourb+Ip#KYuNQ=1Xr6cafw9M)xX)#WEKd zUpl^Y)0n)cOj1yM|Fym^&HJxSM-o+-d}+##$#GK!B1Fm;a2cLu;Jy9Y@uf#~ZKlVg z2C)f&T?`AD_sUI4o@MC3h|OT-E`})A_g@!_0L^U>$EI>J-;Ym|zf2LFtUr~#9@QjP zpvJul@4qfRZo*I%P!-t4fw0rE>L2@0sXWW&`uBb{*?Tc$$ym*Io^@f(t*PoI5-fu6 z9i+;(my7ki&((H0*Jh?wweppg)XHzmzeL$x`Pcn3fVHzDVz%uutyVivDgQn7T&WBq zfvybomcRZn{|wR=NjT+^P{i>j5~;*uuE7y1u@=USra?XOVY!nBLB*wbhz)M8|jDW6^k^{Qjx# zD!uCW>{}U(*1fzn_u8yWvy&wwLv%WIvXwTlD=Rk2NG)|`h~9B!eO}(ZSJ^Xt&fV^2 zJ8pO5rO&=S^ZvbDmp8-Y9NRN4wnuD6h4=5RzUaW}VSlxM<-e)2_WvSRd{=9bbQSRr zV00CMV86W1FaMTxX)rt&DRvcM;JJ7%V^M>^w_lg$JOTrLlko zWK2ESoc_tb*Fub5)W8pCW3z_sFw7A+R5HMIP3L@Ze?G*KxEd|8D{S?wHlh delta 1297 zcmZ4ciEYg%wuUW?IUDMO*EVhGao%>I>xlp}&lh%eriH(gC0lw$d_;N_WBS+_z8-(< zxLeIr;;>{S!@VUNS)Nub~A z2iNc2yS?e&vxoCE*pz)3#CyuV$!5(JVF+|Z#UTw37u(JGw^de`A>-<@EBW&xo@SqJ zR&f^GIN>S##F2>teyYbS@+DhBMmt*c4WX|C|Bf@)xC*|?}z2S=*xF*!EmJj}`WmW%YbKpB) z2BR*G1xzqJ=dSR}zrG>?jOR3-b!jk2E}nDIl|k|C*QJ(6fr4k5r#o(E6q~+bD7U$ zZvOAr{~6W-)2wXskLZ8DKq@}fm+pVR{@+%S04AuWAY_GbwmaOMz<}DLf={@4+5#w>MpD~NUL)Yaxzg)!6ggF`~bE<-$Z}GVHpmNC`i=SoR9j7%D!OgDRy9A%Dz-$L7xU=ruhDAJwbf`8KM~CU`i*y{wAkz;qJaI z$+MhqzjolN3c4hCRAK=`;JpTo<0cGM0abxr9MeCVFiHrqzW=&-ufqGUOHst-C-+U> zK7BzTqd)}IKIXDt7pj8f?neb#EMQ$ClGLEV@ZNo?#Iv3N2CSw(Y7m=P{Ws$%(C7uM z*i=qF`|Wc*gGl)TF2l17a#Q4{BsJkOnGtBvdk^csnT41t{o?jF{&Sn%mwEd8z6Jf4 z8l>9!mS1?bMcZtt=Up~Nmg);^bJyNIx_I|(uZzYDd%NbXs_JT6RlD-9SpQc0MPdI! z7?YC3)Xo=nE%cw{Hu=5$p_vY>B7qKkb^9Csg>)U2Fq$MG(_}4Wbt!;#uXEs@E6*bH zml=Dk-eSlgQzu(>>F%rY?b|*?-??Lal;KEb1JlR8dxzHsPi|xvuAd-dl74yqwZ%&p z@JemD)%*Fh%-YI=l#V1bBbf!?Y*#C)mq@S(zW4hb{7aW1EAIZ?`=?a)?wnT6%&9%4sNVJzs)LGf4%ztUD>mj@ftVoY--%m*fXd6`>HPij6wWg zlV8;@b@%_zFfGgWfT)d3xS9Mw#gjK)nW}+B;o#8>7?+w6>n)Kn6xC^DMqXU^Esxfa335 z#`7+X1*{J~9iE@u6{EhmuKsTpFy4RK@4El}IxnuPYWcFmI^muD>7u zH_Oid-S)p<|1(^x2PO@uCVwP_{BSnh9AN5!v!`>uxIZ6gc9#Yt+@!@%{=Ej94Rjxj z3716J;<({I1H=trb@dQE$O_@?rH87_p99?p)QoT&+zrU?LH46K)NPYtjzDq`-@!k+ Th_EOL{xOT4Q>{yb`TtD-KU>&& delta 1292 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 delta 53243 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 GxBm}!jVIy& diff --git a/dev/windows-cpu/videos/sharp_basic/frame_004.jpg b/dev/windows-cpu/videos/sharp_basic/frame_004.jpg index 74b785dffea6b5ba6425f5b85defa70a6f1325d8..a3776119d8937eb5a62b2ad380b816c705c2ddcd 100644 GIT binary patch delta 53530 zcmc$_2UJwS(k{A3BuECySqYMJmZV6|Ig12|k`V-i4Jx8!W`L2LlO&OxL9$31a?V+D zk~F-*bI$*t|E~YNb?l*X4Pc9dydd#$LJnLXvn#{a1ejpH0`ByRi~#}i+nWmiEFBSXOJ{|=tsX!L7R3eI z6(9rIA`Z@|53_nfl*me})tAy|gIT>Ur{G?O3^wC!rb7HVN>J^8RL*)heVul>p?T;0 zuataEQp*9lsU~3g4d9P0QH2r&B?r)Cas!~G|J##-f93wOf`7Ii-FfvkVjK|#ay3uh z08PQv)T6geVkuz6hpaa#(jcs62GQ&?LxDlWGSs@}vjI_EK2+P4kveE#!~RToleVX} z4r&r+OBpHSZY{cSfBFU}*5lk=t@xruO=In>y1zU)3LhCWqUdvg%C$s3Tqg?J3cT+^A z8Zi7cIykC0Htebu2Zv$rBA`Hox2)ZsfjMV`lXUE~7xjm4_n6MDF$Tc0z2oeLiuisv+dj+wq@=1OrYU_u9NzDP0nc)U<~Xy~Kney(m&9@U9Y>rRnIi^^+N#K_3(Zpzx9*q< zt|r-F!1mE_XjNje+spuOL^t$xEL!Ay=~6*CKc`m(B+or#;5J?_vD-MRgJ3d*O1Y+8 zG}0g&zp}{+S~|tLSf^M%9b!p<<wfUZr&qhqjJ6+HUej3P z=MDOfR1KSii52fs>CSDn#-Mo)6wp-)ig#)C+n%=euL;wY~7uH zEwLOPBwzY256|UJ*CI|X8+hE)FSfx} z?C6ypxSf%$!bzKNULsPG^$z84#^7)@cZrkfSiWd{e|(?q9o4$wlH#=qD;o^( z=_i@Xu1)=bS?Bm23h0_1!>dqDtWPWM_yLWYB zzw)6^bUE)cU_BMG9yJ!oq48pW(!{h747tC)iWVofeAHUNT~V-DXZTRc(Z^yUD6mmp zAk8?DR-f5$Ofe;naWg22m+z&duZJ2GiSwx;;c69+7{fI^<)_kSOtgm#$#Pj8R3XB` zX(*YOk>YC0$a6ZzLy$KE{?jQZuu~&%d@48oVrtQt?d?jqI6r^BrB}(E52?Tw_)Uo^ z`#h%L%g?+XrF(brrJO?|GXn)!s`;Ma1~-qrbBp{US`gnaT;(0PA`z4BZ59I9=I%ZB zXRG#px+MCM+I^2xU99*1^tO(Iw+m@<45KNpXBTvV!~nT3hKz*}mbv_1Yp@5-19iKY zXpWATa^T9Ihtj^h%N~5D=)fICa6M*VT^+6y>8OU{hJGl$pkmz4swl*b3NWv+hFleIvOhgt@3HP|{2 zlZC#pYs(6a72`=hHLD;%xjB8|P}cN2r6p1MbstR(S}7?Rw6b%Gs*+jtT6?iZv#y7wuFF3G|I_0G=j`3I^Hvmr?^7;mV zbt>7xbd-Xr*$7;U9d7{Z)*C>&4f*E=*dFx!LU7egaCrt3QtX7$D(Z_xKfbp2J1%~S zc<|`XAK&W%WTUKG_5g9hgO@3iI;E>hi(AZo0jgvVlf0VeJ#CRBbSbQoc1)IKBCw!G z^wstfJXn{M7%TQnU#o5V7Z71&eAp;!yoL=SsxQ(tSS z09-F`up=`9xMGcs0>5V64OJt0+Vz@89-D+-bseRo7;#Up*nr3bmO7ut6z1NBX2zsA z-LL0WQERxr*SR~I@&u>c85LW#RQNW~8SW-S268-TA8M(4TDwPLS+rs#$)J;#=51{JB)YTMCK;#b-m1xnDe+0-)=hoc_uSyh>86SY_5 z7SD0gr3{qHnU5UTR_r`8Ea!xhJ{9(!fuN-o+nK$wo-R7TQ}5d=j_wi4pTUl@VZ3{( ziGfa<=bxqavcPy!B7eX=rtVum1~Q?LY>v9N_5k-ne1N!ty85R_1!NwzhCj=_n%E$o zncX5ZH3hpI1W&jGx{G9hvy6?T0;ffSQ3^-nPHi~xV@{+I)87R`3B^mrxcf$ zKYw=g)rt8~$@FTH#yd-W{CMM)GtX6b`{@AUg5$$0Q!Jhzs_jDkp^c!3^qba@K`GLh(Gw0)ky#lH#yPldY5wk5V zqJ3^jx4qMiR`PJ}D4w%Rh%I1Mh7xFXIiRZ4bN%MfL>rIeIL(@k9EQGt&1BnJU}COG z9d8SLvE#G9aL#jd@^SKdz8Jr$DZXIQW{ZotZ2Fp+L6VaDw=LM%T>HJjh_qBMm8UAq zT9X8gr!agy&_U98)5SnDM0TV&J=y#mAzEwL9`l=?_tiq6Z|Kn!D_X`ua69>PHhatZ zNX4I>xCgW?Z?l*ztDNJ-c1rqdJ#wC#6g~QVHpI`>9*OyrH}BC5ZwXl_uq#AQC`(qF zD~Btt*Z!0Ot^WXI3J+=So2Ji^+S5c7%^TPIy?;DEd#=d!NNtI)|97G$e1MURcp;2S?3u&jE2CnavQ{o&)J&lWXL zms!Ib_-H@Mtks0Fq7AN%dgd3sEGH-IakP>wvdfftJE{YJ@i-i&)%T{V@9RL}7VmST zS=9(fVs&OtwDkv1&Rs<%uoqa<37*x~O-!A1j1@ZxMa(?K|qaxiTybA z2kH#GJqK@plc-bM=mwZAdY`P{6f_2&IWnY*Q_X=tLI#d`Lk{u|uVoW4>;}rx>8%W@ zLtrf?r0}K$2o7xe4-;Gh4k4>{iidQd$>L>(vI3d8RaMZnr!hO{@@t$e=ychM-|F;+ zmGhfSIJo!tOi2Nn`)Lk9mYkirp?pkI61jkJ>Caz^Kdaoj&ybaAu)$?1P*_mo&uQI1 z*6>Dk=^6Z}#9RIbh*By2LvT`bacsZjA1u1*S2~)^9aT}l<%|6E`!83P?+xGsiZ9z0 zA`xKkpQx==+n0@CLvsrC_+{_;IJF%8l*Tzoc#)Sd>0-Xevo3#vJVd_k98x%iAj7iT3F(znQ$%%Q^CO z#^a*WN7to@?97IX@>7_5)w(WYFDbF~ZC=zr2<4nnJvV^kan|3ofHfWKD($pcS>iT< zh64X0g10>Xx75Exwm#}~?JXILIHuPmEg}D2DO3dJ)xlNaEJ}-6EF8#q2u@wI-X`qI zY!G@Fa(q+aHqq9Df2)fSY2YMxKKd=Gk!Sou`#(9KDr@2pk`QYE*fMr@_GNkN(p*-= zd}i|SZ1WbV3RgM%cUOLa^VcOW!mX+1ocvfz%?E$nyEKy47*UNfhLBXe`z8`E3!#EV zt$(OiGl4vZloLKNgn+2iORyq`i?qel{6UL>SFA#$JMd^zpE>fkdYa9&BklKKefy92 z0nUy14iSwbICf4Y7Ty{HztHLJ`}qbi@?hHU7R|Vwk~^*OGnhJgGh{Xg?gZX9tV>mi zVjh&G3VddFu9NERw=R^VGiOR&n3v={I05lU26)k*$e@c|Jc5BgML5vR|IVXk)I9o1 z3jW)Bqxn0!v_i4Xw;m_ggj#Z>pKD-5-3*}4BJe9P{9T*iPfbOJ_wQKIyjC;9x6ohh zG!L0Q10NN%4ipP7u{w41{n9@Wh~mNOjg#qxx}6kxCF;-D8A#dk#7m2ek0rwmh?PhS(F=u15zsmwE$<%p%0+VMEo)QJrByWmUL+OxO@VHXNt$%v1#i`b{HY zA_d7~B4yXe1uFac8hh1J!SIzA@vl~V>9uw=;!l;VSgoox{j%Bfj_!m7y(V?ug;Ewl zDaKrbhm;pU&x!#7k2NaE(c~91?MjuWT0V|hlslYIe`-D1)S3I8x~zHhFq|SoyNDb!rD2RR z{wWP5HNN}R_43}fvh5c*ive>d^_n#A*-7StQv=`U-QwWb099TArX;b=)`7R+C_TX! zxJjjemGg4=#lrGQ2mO>o)eenocXrn|G(Kz7aAJ~U=?GiRmJ_PQlSYz0t_~!e-?ZH{ zfl(Hk*TgrLmg7JU%`Q{&;CPq^R9Z|tAIP1>NwR6B_wf@w7F@;1%$W&(+|yMVx_sAK z6WwWhEV}ouabI9NIsLW)y;~zTDAk10BiczZf?&~d6mZ_VkOTM|42VPZzBNPxa{KB8 z>hEwOM{#%Q@rd6QMm3H{Ap+U8jEU_dzx`N}>n*UIZ3%Z9K|X}yaoaz-$H?Sh%E}zl z*ZJmTVGtdgeaZfaSO4+TG8)_H>}Ap186%}T<>f4c?c9cUT4-!ZAo|JI_cyQAg#YmX zXzR58XvKu`OWFbS%8!rJiR9(&;5r46hyO+G$uRgg9Vo+O^v{FMi}F->m$dm1I*FEH zQZR{@3_8hac##sz%7Y#XJSgARV=WpRwFzspuO@3R1R~q!0x9K4G$FS?4WiVw7^y!6 zc92x_MmqCGsZhWczNY}+(|=TzINy7;%(j*uBLL27$ZBb#Ni_SS{`^UR0iL-ip1CwR zK%n<5tM@E#NCx-tdgJhV^Z5UfiHM(QKufJ)K>1yu;IT`i$YtCoU(e!3>OD2&swFX> zi7t{v3e1R*UK&`vNJ^zlVD^h(S-w`AB7WA?7damy9av;<>F2Xj9sTw|O!g1egOuWu zhc)3>2cm9&^qWI74gP?AaC)GB17H)V$FX!buh*a~T{Y^5H$dt#@>~!? zzo_{5+QF#|9I&_n-X_Y#;3BWUd6q!N+Xk{H$*<1n&w8?~&5vgO=1Pid{n1VOS83Qc zM+sPq6B(E-*;L8>ugcLMie974gI~-Bbwp?*@cu=Ojl`TsQb% zo%r{mlDW{Ww?vIx8*1eK4g&1T@g=b~K5DTgy)r+VKn+neldN|5@IA$(6e4EgU6^t8};Y+xGSf-^`&+E2x9opOMtTISZ=$YI;QtNXp2P?5A%`Qn;WywvyfA;#f8OU&Y`5`z68vt~xwz)y-Bz#EnQqo0j+4Tm~< zRlD`WJw_kc+fNFT;)%y&aLB8!X|rz<9VUn1P4~7WhK6`$;pX4Iqy3E5IgHm zNPoWykDn60o~uQk?sa}z11k)tu9{SwMexQCOTa4DjQZerp{&_xu)Wau44sdp zLICK?Ge&iH%@eLYt!t=}P}C0AVqca$$eE6pQ{{Ov4j6?7 zb1Fx^m%vuW@ZJ`h9U0TE;jbM=nLGRRd zZd2Qo!e*2(QO;-S3-yq>huVS|{%Vyl{Wg5?j-OAAZkzb-=g2o(c_UhG{56J)W@V3N zF$>P5PS8mJuY7h(*L(SPXd3dD!(gppNRHFSysyg{2Vo?KL)xu2%a?a$bk(e-@vxd( zV_JgJiEs7y>O|L|C$iAcuy~$;pkmXwGH9hDz>?rC{T8}Mxs8Q)79z$6ZBr%G3JvzX z=FbHgvd{v`XZLS^x%hPKr5_^kZk#<-F}gpfj^hO}6dBmPZ%$ zlkEA8igiF_2Gj;*3@~e45M18STRSiE=Z|)OXa3*f#RG z6B^5(#kvku;m;t2?o=La0T{8f>&{B&6yo}gGqFp-#oB!vli@`!j-d4Y_In6cr zjHF&8qkza&U@lL17^|T#jay*Emab+yw0)+a;(|&zO;(?lN`!qG_py%M9ooD>gzj-T zgl6!rpmr)AGeDvx2aqiMemrcKj_Km!AW~f^913`yo@V*^>7cT}|0eH$F-yDsL@-uM zhRRoDF6sJbyI9A+mhAE7e>v|%gvu7h8j5{LQd#6Rwy!zp_Y0{!x##5b>_ueCxdRf` zzKK|S^IoT(E)krsGO}LbDfBtKN#uFdPEJ9iNZPeJu$|ajZLSAlf`CkE2YckB%{j6< zN~nGOz~AITR}jK|dAfa& z70uzptH7CqPH~%BUsklTF$o($F!CnIjd56t|VqJ(j6_ChYSY&uBUVF=) z^D?E#os97TX8a2u)6_40ZX=qQZWc?8{0OWs)L%j-e`ySB#w6RjL1=IBDE(sQt`VlG5}r z(AN^G=BMs&cW;Loy1S7Cva@nOkUzBUnkPQ#O7Cz-!7{JrSP^UW^(j(A_JXO;dt;nv zN=S7vRPT5CJ5)6<`O&KPYJS8jku~kTpAlmaSol7fuCfO;cLEqj9*mqwS4BjUTA@XnqH=L)`#UX=DR^SVAZMk|=^+-ylzDd&^vym^^ zDinjS=^#5Z^e!wWloz!B=UEsNIz5cSBCXt9XMk)1@aWo+@VNM^y)w?okJL(=Yc$5O zn5dtwJ~YE${cv8_HNBgicIaMII%WALj^{$UWaN1{gjkwC_qYMd_3`C=B|GD6J*?xQ z&#<4>TS*RYIQD0oLBHERHVnT&JXN)4B(e5IU8M|D1j0%!!r@>tL?*o&$`TdF1=!yM zjTG^^nO^5HHymX|`!hr@^{E=jf# zO|-Wa$62VBUy}f+{;;C*Q{(`Ve~6N&C3DLN{!erM?_mW0r=_tdguice!KFT?m*sHaL^@>J|U@aH}%Wfy06o#H7maXkNTv zOJ3}q9;?kx_R8Xsc&I=}HD`{xgI2!UcP94mm<(0IfEWHg7n*?J=0~F`AsLz3`aRoR zNe8`QuemR_(d>9#B^1GXk(2q>&GFCfeHYSu`4XTL4u_1zo5|b1JhIm1`AGfExc4E@z^Y_@o}y<(tWqWt%4g&m-|Ih6Ow zBBcI&-TQmXc*iO-7f!bp>82nE0+3z1E=e^sL61b>skpl@BBo2{)}2V*O$I}<5AaJA zOScKc^%xn7@=y@VN(9~#H#YQg+T!LttV*SLEqZlnNoKyJA#120n%Bh?Bl>2h5PzvE zPfO0d$4r1KHaShuED>4B)mU_pEMZOM0^_+la`~C9W^*Es!{`^62a-6=`J&9pw`m7? zy$a`Pvp2xqR0o)2usjKJIY3Y3bap-4{0s#wQejlT@o0y^K7NOJeRRK%a`#HQbUs4x zT&~;z5tt?o6iYCU;5rz2a5VVoW&NFs9_z=s*Hie}iD8${`|H=5f05jit;&v* z(SCg+CG*{&AT>XVZLb>u2$(Zwf-f14@(|0Jm{?uLO2k~rmw#F=$V$X_Gtx~;F6px$ z){Ka@nn4t>x5j;X;f^KAh8mdk@~`jp8yog3k8@2;e|YU_LZ-XG?eKB7$mGQN{hFh! zk>7RagVqGUKrKU@pT$f}Y&5S0QLbjFtD;<9w3(quUlg9bE(m<^Tsg^MjLeNby+9-{ z1>*W80%w9AGJOEWdO;TILwP6&0z_Rp@{+fnUx@&UXqB29lqiN`I1@w>6a;DhmXZ-a z^aT+|CH|CBX#u~o&~|ZFdBfSR zqru->6?E$wE;dDuBPue=<;#z9H%~u<{a~E+yn{$x5XeOuE=Z#wwSUGPBic1V6+2+j-|MJrCs! z4b_4Wb#UFtqnandF+G&WU$;>T+~$ci0{W#NjFf+~yAW>@OV;};W0@Z}IZv%o-Ql|m zO*L87^eEI%F8G^AWo_3IJ_n0^cFKF@=}(&J%ikzSzL}~xuP(kQk{1Y6ys*tNJ7MXV z-u4Si3OAlsV2zy{f3;&h~;k->4DKKUtt+vmk z3-VE)Rmb#o)U8%S=b>l;d-W;D3U{dA4uZAWv#qQ^tM&kez5I{U>wjfZ2EInEi?wL) zi@`g~skd`jtdC|8fJJ}e){c%$POWHIL#>#>JE$$|UrWR37E~m4=$sO}T2GZ%%uxHK zYn>|7wXNght8sN@2F{lu1tDp2ru9`pT+20;adRS;AH)~l@garOVLS?I@aC@&DqK{9 zh!tN1+W58%4*VbtLI+R9hLFSh#~eVR1|E^PC9Ee4%0(fE14pE3{^XM|ksffnv;fyN&LS!OZMtfluKAW59xUqZoo*(-J`);msvu)|1YoPW!L z?L{&u$=G4;qbvx2g8h8E^n2A$u6v~SGXBSspu5K91{h48j$BDQ8$`i}uL#xL9>HC3 zp-uOuLJb#Qi;~j9$|BieGLejT-wo0)z*-`yd36QTiDdw&FGPlT_n(5WqC{gtp@AWP zbZkDF_!zS-y~#Fjh|E#Ec&{}GlZ|9#^?Gsx+`&W{Gn#j&NpFBrKC5d4FGyes97KuaeWN_C*|1k{fJ%FDGVNCMlZ}O6 z^RG3=ucXC08k_1yn2&gvZM)<)3Xe%mU*O_u#Uy&69B19;Vvjc!L3Kqms0Q%5*inPP z!NAJn8P_uMxQoVLd{BU6Kd&W1q6gQCdmYdpD&IeeB8MZMD~lJIdmp1tq_; z14@Rmyi$%t4Yp#XFZLs169}DP|bT^cfPo7%r zx?=Xes~2CFUe?>Sksp@ouO>?RG^84ib-i?|=@-|113dg#gw>zexkY)`1#Op|!a`|b z`AUv)TD&s^*P8h~OIuvm`4xv=iC2$AuY0rP7sKvYTQ71(kg{9Sp3_;2p~5CbU(Tq9 z`TTCAw73&TP~?6u^#|x9d5OTEPlO&$bu(EfJSRh`EwZqvwv)osGgYf^RuVRLtFVN$ zbcWZGGTZu8iaN}BQ++P1hlvZy_Zh74_BNGUEI+;EqkN{Z`u^Rey0o}N!n5ZtvB>9c z&GudE#;}I(4|#fBd}zFuW?0%7mRDQN8kHVN)(_7;VM%^F86(_6YRvZMtrfPF#QNOF zYBXXL76{iOg4j`@Ig588*H4590^)?a3{f5t$lQ$Xz6T-jG;9bN3Xf%hfRLOVHRi_3 z<1%4dD^nV@E7`Fka|d{Im^rr`oi+B(W#tOgXVa+4TYfT)FT1R}-i%t5QEcb9(0$A6 z@b`S~4=+}|^XVWN96t}Cu_#>FH=CmgYgXEjoR_18^{o>2B(6++4>(Dc#2(cSAifSl z)SW*cBXg6~18yII_#<~JzQ9WaAT8h>-fqUJ>IRvB(Hwi@z?JVl&i)6;2ZcB^V>{88 zE+2Tf>UwODmQhc}Z-CJ3_Fs&Mc-Ysqa2<+s>5+D+yc3iqr>n==yk&VozvjRWe2-tU zLz6MeHg8HnWG>T z)I_E@*5o*9tZ1ygDZ5CY7Tb>x+gA@gH~Gyk{|28wkMSzcYtPG|`{f7-u_ zp;|vbf3U#fkRQM&$mlaFAKZa;!gZ+o_!ZBT<-V42H_!?1bkQ5HnYTyAa0*lTrz8is zYdq|vI1kTbAXYl}n6ONL{~WA)Zwfb1TofUOGb^X0@wP6D?QP4@K6>vN>rd0`_Tmhu zK-KB2NbV{YJK)vw>Ur5frO30g`l>-83a5@_?;-P|$GiFxo*N?J9;SW$m3|V!u7#hp z`}t@rIZJ%{H6&pALIgx}=F>B6ocbHwHb&WYqd{|7l$3&y@tky%+2^37)Ku@KJO}IB zma@F~@|E2w8Yddd+9*=255{leoXE8gr+3~>JI}1I_Rqt;#FsK^4up1od8;r9Pw%EH zvP5$@zi6Z`5%F6pV?`TEe`j4aIMJGi$5u=@C-mcoz?OT!t7{HIJL6}kr!KhF0Redu zWz+0C6G7HfIJU`FG_Q+5T3PKh%}|6`ybxLRC!H6J?2_)jD7&|EH@GPc`<2G;Q=8xs z+DV%kkAeJj{P?q0t#eM!z8Uu}{%30aecwMi)x+((yG-duF1e)TKh7IfmpOiZRCSNK z@y7$oBVZ=kty|I&W3L@g%KE)}SyhdXzHO=?bMO0T`6aKT5&TLCu!$ojtCnzcjJI(P zul-YT0tLysG>hp9dD(23pja412dGU4O1u4UdtJqpP+`J}n?)09M z6Rv?X6FXskL|_X?1sF9h2ytu+=^3iruApyHc^RR&g;sU%D)^Q8#?V7d z`=r%+=siqyjoWa9kjC%5O2)SJC$G_Dnf$6wHay;U3)z?x&-IcFRp>9M*~Lc$I}>T# z^%zeC#z1_#{Z!lsh$uo-?-#U@gqzrA@?=in6`q_t_p8o+?fwGbQ!DL{FQ_slJqe-<4WZwaWdC zc1!~Coo+K$m`3dm^@Xh<6P*V?`eEyoiCuTU+gwiBzOK%siBI2~N3|h+_gOVqIKu;5 zQo6Pz9n2oLi-Z1kCbKhhQ+QD(<5I$>Qf8=Pxp?3%4>W697~FmKHg(!EHnup450_4uM|y;(@5Fsp zu@Jd{%~KRf^5`U~G>GsrsT)yJGGRJ$;1acB9tveSErCAik?2lR{RWjxQ}rP%xXBA| zXM(21((g&|*gQCBY>fMnovMqFZw+Ku{zywuQ(S8)WvW!t@q$O~>fy+J=~;|17A?_D`Ne8TMk&xsni?0gKSW-XX$han9^~8!xkJT_s!3( zHyNLy)bXH{4(pV>55i4=ZY=U3q!O z)M7kG9pp%ZQ9RLIt@biGLZ@j`1vF90J)>hlOAaJKB_x3E&<)Vl@O~)v1`z+48+H9G zO%GWCq1;qaR6x1aqVJt#HQq+dbO{2!n!Z}0SWAIqFb3SjLWs4e7{bS7+=iX&r4c_DP5|wg z%MG(?QcmGhA}`Penw^^}f6X{vB%eLCaJ9fWvx?e{DlJ{s-QC^gVJ0?HJrsGBn)YNW zF4&Tda>Wa3V9(^N!q+1h8v;-@=h~emCj7eho$g2)=a26&Yewp9&jS8Q`OC%4)vz7$ z@WPj`#F+nBO6M)>2aINK7^&PPug(JB3;2&po9|z3lbxP!Yr=mud}$Krkuy)vX0*CA zS4Mp7qZ;T>%9~=o0mP7cF#r6yt-DF}A73ID78Mrtur^V4X{Z+t0CO?@09eISlkb?ryK5hd{fEkcs?RqPkn zB8~f%sU2N=sL;>rF4oEV4dr4=IHkgv{`$>Oq{x?v$OKw+`Klv+azkr&jHOm}K9rU? zq|M3S;PkNlci7n%HiiJf_39UvhG&Wh?wt($fYcix7?71yT2Wi~kXubO)6mTMeLCYM-?zxRg-x@5BN5*MUPKzk$HG~F10joVbmCp)29yKcS5PG(d+jk)x^Vt8%Mq z$?<&YxF>y{RNwKe6haJwJR~?)XY!9}Q4^b)Y&2 zi8;UcQ1H@OjJbO@YV*$^1}|=ZeqcE)@GHNX)3n_k)`0Qiey$g&YkHsa>D$1&v25{@ zr0jyIXVpi!8_qA0sbF(@kx5}vSdZ$sc17vdEasqBHly+0^GSk9K|8sen&ki~ud~yO zlOlC@B{8NI*vQZytz_IpD|`=)kCY`S<73(WrE_Rz-2mo9ex+Ye`a^|R@@8NNTFgn$ z)z|UQJk%-`#FLy#ZjX0(Dx6y|(*kDw?M)5%vJgdrpT?F=V?h=w={H`k8B9j0B$KAY}6#tLY;L`08`7z=Dav-JfUTDVrf-M}ki6m;?5EnZa{wk==< z)`FHeTE2gp=OrSj;zIA0^gb%jxc0g<$6nSZ!ggJ4c!&4~K%vs?JxwE^%j-L8vu)pR z09V(n{cJ|n$v?hbVZD<)%(VLS^%r1-6rPK6bt<22Hr9WdDkX0LacoS)7sF%vYWo5K z^RO0g9-Kd(CEQzDLL<=p78@pARFuR&P>rM)&SqxpQ>H#5*tA)Jcu_q+l0zL$eTrR) z7bSX}tiY9Sa!%oOs9S1fn4Ad53|{x{_@#E+>y|^SpeMaoU%hCMg42HAp!Uk#cRI7q z-Uk5ZQRY9&?6SUaI!!5-+S0iHis=kGVDhFm5=h0SZ%lI_d-IEpMkiB!%pr8TrF9ls z`&+R{nYHG1ZJ7(x!AxxY(!Gh+Z||js!>Ca%tF3if!E5_3!JNsq$v{N~r;cZ_~&^&1z z%8f%!ZrPI!SDDE5YtBcp9OZyQaK zAIrpD*NfXH#V&sob}GdX>xy;Z#@+J`vSZSw1RIV?lI*7u{?`cw3a={@Fl4``rlY?6 zAY%!LV@Pd5M%p!S|A|C&&)KqNag?T;S@|Ehs)-xB@~-0I9YT%u4mSe< zp}vvwZ*7XJ-L&65WO~7ftp1$$YR=d%YL3KY{L&nvE`{A5%Rgrb4f>VSq?VV_ry`tz z3!AGk=xA3Cixy>cdG22jFzdo3Z5yjtR)G~9_vAtBy6C{ef(a;;tQi=miXc7Am^Q;$}P>yedzSB@Xlvd>b(TErv?91ayWty zMW1yLi$tWv+OCOpQ!?)7r8~&tCn2NB3=BRmdntVWeoqrDw$(2iS-vl?3R5nm34>AP zaq_j$hxqms1js&t$;_~V1{T9FtxH=tLZM{ zxf1SgC-YRW)6eeRRW%-ChQ7qxEYXWmS?6tsYP`VkRbW?f+hAVPFYkj1D$d!C9FJ8~ zbe)1e=dmu~%ySB>nvYlu3z)OL_v1SudtHm_-PrnL{H8yS?mdhY1Q`SrC(s12e5fzn;6nMHNTt5LE1V=E2>QL1K;`{1i zePl9E>vXVoRfpvxhzoi8+R)~uVz(n$1B+cA-d`#DC=4baKxOh~wuHxt)d`Y`4Yfo_ z(ZA=_^eJ3t5KLPofsQ*SAZs}8y0fIORys-X3%{f<=~2|#FR~=d&ED)+hD?U59+63! zdx>2bFxt9~!DCEWdm`Gb#;59^ESd5AUen99+Mb zFYunU^b|;!dG^vL>5me9x&h)fPmp=Xq-lj)uq_do%G$4JuCV% zPiSn!79}?f<(_-hsBt3wxyY}+H)&I3P92fjl8QO#Ns4`TF*KL*uCNJ1WBp)l~3l9i-suC77&SpF91yE>QNq`fpZ;`%VE=1dw9U1Bcc ztNuRr+Y>)uQ2~)z9h5Oo&|l`_Qc`*EZEsK5@-8a=DE;dKAezVAgiUNXx$9j zB_VyOq=rPUj)h1`AUsnns3Y@ZRD~MKNe@p>4p8|o1!Rb?GhNO%>@J_p9}SM^YTj-B z|5_aUKihl~_u6zVJJZC z-d{uv*G--kmhn9d&X5Js0rijTSw>!C?dbj3?Xl^S5fel>P2Q`Bn;1f7N@pN#p!JXT zJ3dzvbsiSxFZS9Vk#_&{Y|FCDqf1|^C{Wg%=}$2nnTQNUz*RjYrd2f+h&1P{6VMnX z-TLID5+sNecMr(IsE5os(~qUq(^710?A_x?-OZ#77y0i!5QI646uH#o`r4w@Np+Y? zs_2Rp6LY2+g5m9Ve>t){5u|PvlVilInRA7WnFL2)FJg2zCjNB`f(O>(CrJ!(6h13v zQMDWR2&QLKd9Lw2>RFBDHkaTQf4{dQ7g!)?Ps^P2`^UW{?*yEMD!y=JvNlWd09p4h z?Z>K&#GGk7jG~>=#+)tvnI%2B>KVd<+PfeRQIl77MqWoAX~RchJ6rq?g&P{33;`?;)ip(&;&FrY$l?rwlfhuB7rx#Yq}?Gd=Wa z`O5M7%TUv+31nJ?>g!7tA-;`7cR6snFV-C_xKgt+o1HaRY1;LQJ;hAFz<(DwGWnm{ zxde3rm{+>NLAJHzhf>aU1i$;1E%;+PgdyH1>)>FpF5tp+jE!gJ)mEmSSqJ>tXx5pk z>c~w<54?DfGre1geLX6511y2;cUJc>Co-oRR|bg~s~BzR+k*7FFIJFxj_vS>T;qGM z##nbB`RANQOaMoF)1}28B2>sc$-x9?+y?=_-L3~EuR*FjZ*LDDR_K;ZOucROpjVEC z;YWEN+U&T=mA?k|m-KZK57l(ofF%uF+6Hp3njIa|2m#G18bhf)?woP6=klHt;7mH_so{ncjaf4nDjr&FHw<;IVjfA2_J>2l$Iebw z)P8a8Jg=v{{1bJnIR4yK?3Vd(|NOwz=~thd2j_2IgqS7ftHf|HKMG}+W)~Fb>xr$3X?KrA8L8JU_>kN6v@%$Hot>y4NsP83x?5leJ=$ zo7yy2J8^Y_K<8?r4sn)Kr|`bdMPg@WO3R>Q*yB$bmm0}*B$JguTX?cZs`v#Jbn0U2 z@e`6_!BCPY<{=|@U&2{~!=gGi(|bj`RER^4U`oE4SH719b`mQ87jJI?7S-Rb3(t@e zf+!%}C@tNo(%mUYcMe^P5Y&+#TBJLrQ@W8ZrIBt)CI8>Tf9`kh_w4zs34GsEOs zi?x31`9075-1oh5u2VjnJBhE0vFr~6d3ieqtbd%t*_`%9nspP7j}V`es7;T$n)Z;1 zwse=Eqt>!SSzs=3kD`g9s(vFQgLAkXYVkNkHOAIrydyzPdSm;3PF&q;0-ar0XEPf;W9#vO}oQy3y8+I9N9) z9nf>VP#Ejm?g>00FSs+=IDPi)Opye)LO+5p@VK_6cDlsG64ahPrc2FDxXnvALJ_5P z4-xO`u!N8vj0aD}f+D@A-hSYwrX!1X2l$19?M);Gq<)~M!B6=lw{~7k&ILr@{(51; z35xxmAvj{J5RvHEOphx;OzmUiV^wsKV@6+r6Z6&ZXB*}#UM{n=wCLp-QT zMR3-WB9bc001Ufj*?l!)a)cKqW~rB0xSZXK4q=l24_vB7onoDu%ALzxgXwitb zv}h+D$zY2!qQv0nn2LClQGzhva?TtXj8GPtwA)2W{K`5@DW$NSffLytn-6t}3oce= zu|R3(wGcUSsv5YEjZix`J<1gSMisV;^pEV0X4MM zr4FZf8tjC^w(sQatjhQN0#MhY{}dyyS<4UzMW+>B*>)1cEd3?Ffshwib951ht{SAHm{3S z&z;l!>#okGVza!MlP2RbchwFFHfG)4ej)3@-A8=ixmYjK(G%HQb>DO{SP_lWz)gsO zO-z2`-Th)D=>iqPrJc~|HyCSV;#iZV%?Ix45ry3|KnUBWkgTmfBMSqgZ zQ1Je76>d;J8Dq6(%+i1KXq+eY zy{vg-JW<};csiWVgJC#;;En6z?nbn+j&D<}2b|Nyi)`p%#jG}9+n?RV zf3GSq3lSl7a?PI;bi^GoDz8ZT)F2^}n0PDF$hk}LQHK4e{vxiIJdNFBUN#|LPUw&$ zyTe&fEyr_ZKW0R`Tz|k#aU$NAI1vWHBAo`on%&AlDV>eH;45;6J{B z9>Qxc&c5=PY$KvMG`ps`CSpXAS&=4$w$D||AoUfW=2iX(CgDes!Otqv;bZKosb5Q* zJoP$uyB~SIqbO@6yJn8Ath1HxEyXwMUM}C+dy#&~mT(4RjGKta2UPZl!7#4Il?Y(j z05&mnI!)F5y1L(qyqC--(!Mm9M-CR*z&n8f22c{Let|hWc`AEK+Lv=|A)|9u?kFUV zOfIP9sY#AXO%9#jV~Op_-0FMi$gA3SlXu7y4rVNVY?plt>R%qTf|*r12%grhgXQv; z#Fi8TEgX%NDxneqB}KHh-cPuZhUP!`FJSHjYF;QEV#~z_k*aj(zmFFb|2baVLSVmI zC}0~Uq1X$013(TD`qRLs|J|zKtogomzB-Wo)H#JS75&Oe)RJ0yV(Q?X0sU!CvfqFe zgrf8CDxkzT+w4Y4eM;4c>kgP^fqpH;U-UkKF=DF?7IvW}l`b|ReIoXGOk3lIq>6)x zs{WDZG(XQkZ>RtwW~;$)?gS(VtDClVp#k6z=hEJdR-E9^3F7eHFDI&6oM`JkbZY{T(~Q zsMb`wRLuioYQ=tC)imr@H`*f}+Al)A83Z&En7#W)zFD*d{0Cc-iTDgf!HS9f+h!rE z_yVy6Eq%cw>qUcjp<3ZdI%RHl!9Pb(TyII<++<+(Kyh$NITaJvvNC^@buq$OKE$vd ze5>E1O5o6fnj<2HQ?UMlLRN11FhJ3NNgTo5o397m2f^%)vvBWG!4SWV8zio4MxMT# z(NaU%l)y)zV-0lWLR)e9(>**xlzFohW^T*Bc&V zJdJ75g0(w;&~|u}FVm$r?szx+M4QUec-0$T=&d#_FydbF?Jm!~c?r_< zC*+REz&$H(oVhVds3jsE8f&FlW@Bb-X9FWR~g;JJ79Cbt=!Z^>ZXohg-x; zVtx&Y)|C}#yE_R$<)+V$vYt^zn|jhd>ph9CqH2y}s5Zvt!N8949cL;2{Hrk&zx3kvp<-i--GQ)Cou{Ll5`$ zNMLJpWT`mF^FiznF!O`XLTZlhZoFEqe}GwYI`^|1-9Mh9nI>~6FFw3F1}+c4YEtTF z%f@@qJQ29Iff$piA}9ukQ6O1l;|SHyM2O{n3NaN_F<+zO!QUVUEjQJq-$0DU5#(Z0ImGd=4}oDmkf`+= zBK&x+w^7~+pCZ7OAg>^@;-|Vo z_2xKVvR{wUb)wcoo=?_&IfTYic#3^c(EA9-8Ia})tT+3k%*dhKrUj`lRz$tSaxdu# z>OIJt+PUYM^k-*_!ypDJfnh!|UXP0Iieg|Ylf__Zg=gEhK77%Hx9I~;QW?atnya-{ zsoQild@Nx&t9OXIMT97~v_n6TH*)RTSLn+4?6GicAOHXkpszpvd8qlLj9=JnDAbE8GhuEFn9LDIfiT$ZeG z6)lB+hj2K+s zG(F!87zy0v?oiRTvtFf+&T|JCJHXxR7XU(yo{V&iL?Cacgm$0N=v7A1#8}WM(gQy1E%5F?9W@8 z-yny&N9E56Y#~n4an$im8nM2x8gA%~6ZR8*E3a8ZE*2MzLoPZM7>4P3196ti1*fPr zp|+t7IvNA_d-Ln&JnbU9Edmogvj|GQ`N-Jw6cEm%IQPC~5NChjgcA63N)ZWL6*L$_ z#y0`|I=YBJ0}u{zVk&5#TxMyTd3^ZIq>TVNnvxaL`wVG@73@3|bz%vM(>xFJhHcAB z&HRA}!H;Pw^N}$BI^`Gs4!Xa_ku-Ne!V@&8>|X^v1`+^CC*(&)bP1Xs+Zi>a-~!%m z&7z}}m+k54NN`_Cl;A;>JYNc%o-ZFSXC%&iEeFYaKqI>krKoa@WB8mLVfT`j9t<&7 z1u&EbtuyolvgF{UM=jJnsWJ=y#3gH-z4bPG)@b|q1=NEvf}j@bD6q}q@#4pHY)s~l zmEU729U6g}hKI+AkMUmDYCgx5@*s2&#A{v8Z1}$LKD#)wXx^aW)3|=enNt?T&0=^u zJsn34zUB7CB(i4^+d2J>!E@dah$+@gl^Z#!jL+px<9b85zB+Goj~zZV4uwLRd=vR? zW1+kV+*5HUZ9nP!^zVATT zMlxiDq4eWVK)PO0j$HKHX=yS0>p{%>QmnPK$W)d*yhTf!ELA)8w6^6u$!MJNmHqE0 z7|0^K1NdhU0qC>#@5WBY1qFmOh zmXEBqnTBmpXHzSGT=EYpTvab%v#w!sUJDZc)lmjxJ0N0%#S(dnca3|@9h-Ii9C&s$ zNYBn%a+UdFjrOGp9_Kx$ehAs|p3==|tXx=hXL%+*9>jf5L}KHym|l+LLlZW(bTv(@ zy`|@OdQBnAfjfwlw4oF?0bV9)Y>v#VZUTwTdGFL}DL7ke)tD~oXO%e&bS6DbS~11U z)EPwY7?89asu6e99v+449Y!|E#85|Q(d1=pB`5V}%qvl{8;2usPiwjP!TI{SyxT(m zEPXiK4BL!gm2yMZRV7hpv}pp_(16<}ri+P*d|TWO+6xJDVR`^CrVTN@Zz^LZ;_ses zNoC5xe-UV%U4fODQFk9lqpDEK|Gnh>#epX?wEz>49c2VL3{Dj&1gBV5S%Bp&CxL=o zeo25Q);QUvTJ=>4ZN0`o$7(9>d@IE#&%#($C%VXtya}o(7seaQYKSP@GHFjbX-^y% zB{;gR#H;C<2a|&Dd$YP!4*Xh%Y?*Bluht{#J7Ft1H&Fds( zfep=jXga4eD!-k>My!oxP;4dRDC{QK7_CAmJIWqm$NM<36kHq#P;qGkU6 zU8Jt@;##%dG`Ey!RrSZ1==2f2zl>mHbUu8ml~=6pGd_20+zu4 zuV9IUPcG18M5ICu&8?%~AMjHECd~EL0Bi;pach!sTcy{n6yzX&&e8+qn@Ib-BebcN z`+Hp)y-rUDb>DY!DOA#Fxz|{1Ys7nHYFV-s6R{7xbP;qd1^nTVy|U9wl<{h@%6Z*B zm`AN~O?Av;lRH8wwZs(fbog$lY=2rDyUr3c)IsE3?j_iHKw|JOqL?Xu-yJBK@&D}; zsQ>qiiCW4XkpJxoq5|RI%kh2mgSFM`72s+UTHUz3awfv1K8cI^pg#JbbrrB ztQoccj5L@`J6o063Tv5ce>Mvgc)2i|vT8lzfc4Y8S`W}?O;V3pPLckqHwNRIyQlB? zu_;AMh~#w=M>4~TXZ8a#+AMPyK{!kM8WYoANbrj$$!v}AwWA|tfo_}P(Q~y5bnO}c zqm*FD0CNI&a!zYwxGKw?N5k>t-*tk+FqL<=LRwPxNX+4{EY6bx+aTVf77rOmwavyY zfN*(YV<8=uKqFCIVc*4TyUC(iB5KYaOy)#m?9cQ9eLZxhi#dc?N%)!tc8}nE(fwXF zg>AdwGN$T9(g1Pq;&@fT&cpx74NU@rmk7ku)Hy|LP_t%r;w#w zoecdxI5t;Z-&lTMnmAr!11M6B(2oG2^iFUc-Vte{ADHO6`E>6IyGYGOPy9eDRDr@d zz*^KK4D4qSWr0EuFs%WtVSaxzx&O`&P}q1+t@g^NWdhKX(*`Snd$*;4cz;h0EA=no z)mVbK8&nVX@2={i>osE^BC#dsNj+K5^sPh?)R_d}%HhiWu8s;Ij8ct+iBqfx;GFO| zmVk1sY}&lXB@jl03Oi$hxf>K8^9fKwz6IIo+mT1SdBU2I?h3`kBCVYY9{Z(G$wsKm zGZRB^OLmb#6z7Q%q%rUZpx)|M+LDfnIAmo`nDu~S5I%FixRrz5O7KRIQe&%LIp0d| z5^jj0gkX(=jxbE+Af~S!o&g>X+p;aiz)hscW>7W|HUnh+bie)Jdr$4zf1M zrV-~K^a5grL2&`VD>njyo{Mu}L2Rhu1M;()`bz!A>L*Pf-qr;MI3psRtS`z!S-y64 zdLT{RgYm9JN1Aw(d^KKQ`D}7{Pi>9ESIDIHp~cw-mbK+^BSpw-Dt~g|+D%^dlb^Io z@?IT|Q^1+(h~}QDMv%PQICmAJIpu;wsxc^J>7|rQs!E^%m@sOGI#Nal$uCrYf|vrR zu>;L#q?g4Br7zyxygpBsQ~jg4m`D<1q)%+osQM(0+Z@|mY7%rU-AKJMi8azAe8B#G z=u+TSzG|(I`-Z?ZhpvWtU3d}k-bNJRF*KqtE80mAIza}CfkR0zeWYq+P-3LE?^bmq~F)7Gs za5vOeX18j+&I?AdPN5e><_HdTrlyNG3A_9G&!aydMR~hOAfFUpFwTdB>+i`4EG3!7 zyO>k$a%6@O4`Gm{jU~}vDYLGi`YPYg{0{sg=oIn7wUMR1oh|57TNO~rh_lzaEOs@f z{szefn^X+m0pMtX()ryL&6H|uJ5U=z%Y9uaozq9#U~vCuhlE(Xl+Zm1Y}~pc$8X}( zT9vGDs@i(5cIGAW`3BHU40IdF2JorJ7v}9P)Xw&xl4*FbD zMG7E15FtHyKn; z>ZM*eX&Qm6iISw*ipVsj=-54U*J7<&iukj3EH>dr{i#qC+100oS-v&~k>56IybcsD zHM25lMLHj$i7G?~D2;)H^R^#ol~$R%EOz8-#D+^U(|5{9q$1ddLj?L(U2J*RvaDhF z6}=n-a&=;#Cjf4>I&z$lGD%AtR)@)&0wHoKXG98RH;5G06I_Xz)@XexNw8R<`5M-3SXbLgWr7 zHq+LctxhyclaQ-%;Y$b=AM=}J9R|LqV_I;{Bx%zJW@?)B_s^lJN2ke^Q5}H9TSQwe zU!_2=9}*FgzVl5qn7X7X{272YA(?Q-HwfxZc3^aDm-bW8W+i(ZD=4D&Qr!~{H6Sgp`|9=`{}yc2v@gw(VL`-&iv4>gIdce&Vlsf0cTlxEd z9ubMc8-|gRJ=U99D`K==K|(s%oJIDC+t1=X$()(yuE(bNL!7W6(fWL0#WHC>+%J2o zLCog!p`6mjdpbT>3sTH!X}#-*;`pH8*Tw-fcLv#^>j6moS@>k%BCKu`*8Ipr$`V1Y z2@NOm(ZtIj9iI!3_o??%|LwOI?bbR2$RkBB;qg9YJTKf|av0qID#k#YW>_sF;{!JW zb8c>R6%1Oj_@yMis~A(!o(M@!(l|a9p@1SHs@2ogv>grKUs*SbZoGz7JVR6_BZ~*G z?BnkgaeB|X8L?A?l9jwiIKYP8t$70vc^L?B?%jN+9Ey1_(EjFfgY^a<`&9%(*R3vD zJYm=x)Jl4zfm%sJbNqxRR%m&Gt2NZ?&$j^ROoH>RC8L-$FA%?YBTBpSGek7WLHhSu z?e{@-YXtfq?m4RQNV&-53`m$v-v5IKqh&EY(AZg75+Wg~tjgcE@(Dt<&BPpedISay z;DekX9KLjOV}$x6@;I9_VH5*OX^teVFfqU`wu8Sh>8ujO&^rjxS;YO3c5_a-BHv7T z(DKW8yfFLs);ys{$1MifjQ(@<@6W#e>Ua+Q1VFUyN6&8%!|?CFK)r*=n@?K3gT(ky zON8oy;k^S;>JFT4H%pgLiTGDRZ4o#7gn&gD98&q$va)=|7J73V&kZY%jRC6 z$WDl_!Snoj-Y56(mJYyMvMjp#6wV#Ya5tLau}jBdQO(~c@h(TU)({h@adjp6#Qe^{;zL&+yHi>&bC6Usu}>dyt2BIxUYX=7-l|Z+hJ4#3kP9`DC&E z@ab9>7E25h8|QY>@JDhnL6R3}a9348lIpe$B}?SFi^kHMR?55rLV#EQElgU8holJ2OH+AJI`!w zD&Yt6zvO;ZQ$Yw+hj6&MyU&$etuq!p4+XNcI3k%{Q z9`dV!Wbdet#TuT*NSyKbD1RTEsI|YlYAyj+Cx&ahG?VxtixN1j;$(AjL;vwD)g{V( z%11w6Fp+vLtJKjt_IfWxCLU|NoZx;ZRP=W5W}a4=tXBbERO`Jg#YcAJC2+;CDO$94 zo}^v#koPW8eYl2P<7nLEGmn&Tf~M>?(PkOlEkSnXZAGs^>p z<|GW6fuI$pIHtxDMg2)eD9ELV(@o$Pv95xs{RY9f82j}&f|mArO00TLo{nQ+Rd0YP z`(3>}v|HLcc3bepHh{Y)BHYFFpn8}0IgvMKlr%-wRFPFJyZ+qgS~k-NA1`XQhwft? z!SGt+>x8^Tx)R?6rrvEL{Re9tMsa7gcY|jF<4%S2@hfURjW>_bB&~*JujvN9$P<7# zAN$8eKem}Y#IHfj&GwlKDwNzgmXlsvm*}`(*E)nQ*NLb`A|VFD>B_Zl%K_zvT0~}M z-ER=1Czn0vV?_Ok-(m^y{?l~~5Y#ZL$A3wzqJ6Hdxan};pn z)g(Brcr#%#Ao)%xxp?M|ievtVe=4I+tR*4%2P!yUaHJsibeSrz^!T9vMG={d_|S=c zr*B;p_g0QvX{WCZMgOCBieL~GCPvbC`GqxuX%twS{t>Idtv3NXSHdLtVENQ`ef6LA zBr!!oWGeJKBGs7Xw#)kwOMtjw|9AB>dIHWXC=4+qhMPc@0>wat_u?nO1Hk!}y<3a& zFYDA>`_#Y4nE&KrG6L~)K(_SF_q=h|IG`r&2O^oGiUlZKi0m%S$Qc?#CM^Y!hDbLqYD7K7HEmJ*JRYl%+gd=zkaku zAcL6&vZU#>-@YmM9O)1%pbNKKdJ~ zsgyzro|^>T)zic3gqTfBN24{c?O$Jii*94_x!9Qami1v#3Rhip$1)YO`xVEEqqtBE z(+dJE`AN&Sh8!s|{33OfAu6Bh-hSw+>7uf?Kt_p_8~y&7PC=jpZ}^gGs`RRsW+qNp z*5a(;olH>;vA~N@(31jR9{aQRZ-W{9@^S7Ad+$^?0(8yg_o9#SI^5Cf@8VcnT({W$oh z2P76inLi8b^HL8P>HgOlV#|gW#_v?FCq*t&Q;kAEp`@3(Lnr{>XAOF@9Eu;WocKzG zH)5XYE}yat)m^67?!-c&&YG^hbS;fOJDECY{Tub5R$XhKVSqi}a15ZS6t-yYrxZJ) zz7!Ta?iagURXy_rHe!Jvy#?h`%+qU;rrp3<%)X_K`{8wXzf_^L05ZX#!74uWn?d)7 zjO+R`&4sqnpVUmBirBUdQV-~{x=A<2D<{VyHU}}V&sn4caQIx3K$Ym z;^XzNCR~xPo0{UHqi<_7Js%;j#Z5dt&AqSe{qO*{1Y(2pcTk(i%Fizqn;y71ym5OT z{S9GUL5MJ8&g{LTGUVRy zk3TBwsH&Z{I(%f0$-nrT#d!TIHnP+w(YHhxnF5t63PYS#kgdBNqybSENB;M(Z(_#*o(aLbF#fR+hM?d6FfV2 zG>PxTOR*i)lDW06H~CO}h$bdYtVHcKlszjnzuRd~D}IU2WK=(#qw8*djMa=m{#rsa zd87Bu(6-mPs(@IIrKO9)<*YPI5bhInA}!V7sTyAqV>(M>wZ`85mD(0yS+{2}u0si4 zoV~Jk+5D4gT6*~eZ-#t~P-FPBlh9Pk&=g+ocO=bhmZv8hr8c1%V0-PU@QDC=C>g

nD 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 delta 53871 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�@Aw+qJRLV1SH*3|>W|v?@ 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 diff --git a/dev/windows-cpu/videos/sharp_basic/frame_005.jpg b/dev/windows-cpu/videos/sharp_basic/frame_005.jpg index e5f729c293c331b0ba252a84ee3ff83ddfe4a9ac..af6033d691d6058a8d97008a75a0b4664f989560 100644 GIT binary patch delta 53207 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 Hy^sF|ZP8oU delta 54381 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 ZA%YeqM)LhnwYRAcTC#x)jOxed{|7v!JJSFF diff --git a/dev/windows-cpu/videos/sharp_basic/frame_006.jpg b/dev/windows-cpu/videos/sharp_basic/frame_006.jpg index 0a2b420f9b95d95e66049f0b91a4c2f521ceff06..ae86deb086fcda2a356244a64c37bc5a524b945c 100644 GIT binary patch delta 54809 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 delta 53504 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 L2%kgBr)U2Lm5ReS diff --git a/dev/windows-cpu/videos/sharp_exif/frame_000.jpg b/dev/windows-cpu/videos/sharp_exif/frame_000.jpg index 65ad65a42425235aaadc27d882ca1d17f2c43daa..e059f70fa7950b0a483a50016fa62cd11bfd3259 100644 GIT binary patch delta 1393 zcmdn+jBVF5wuUW?t5(%FzT49}vGM%f6vc*P{_=mTif_3}8}HuH8zLtn1$`i>p#1F-EQaW_YMqO*j{;f8*(h&w0hFv z^-OD)P2YJ!SB>uu@0=BhbGF-V43&D@vn;I3EXl8k-||nz@tlyRf4(;}7Rx3`7&Xt) zlr=p6`7A@o3y;@l)hd_jM0U$9nUraLVfy>EjH;Xhe;<1Ji^%WMm@ct~QBl#p%*m_hQJBv6}BZ>%y8_Q`Ji(SOniYNR@3b7wdbUtL<{G z%}lFmtfJYgo?Es3NFs~tB>lN)?ku#Im`UKPSMt<2PY|Z+&EFxeB;}imbn)a1l;#p zzx98yg>hwdeR;jcq;Jn6@9;3aol|S8HRp(q@4UyN@j&VQQ{7d1)$iH2G8nCUd28;q z`dOD|Crd_#=yd92D{Wv`R&11!TI$LWz2nOIyu5p_vS<37yWP!p-0sFppM87g{d>7C zZ-&V^wr5;ykJyX~@84T}(Sg()WCz}7e7hM_jPgN!qzsa1gw29Hwl;NlSuKVAw|7VDr&iUg0d?4MW!D#3IZu{S_ z{~4|=e)8{i{r&jAS-?0xRAv4gD6~YHvZE(?eV7&;J=- z2i45KoB#Xue}=WdXo9o7TfXFaVW`;7xxzjm-CUS3@f8;`?NuY!L G|C<0b3^Pms delta 1433 zcmdn>jBUd+wuUW?t5(%-+!spd@j zdp?E(GICQGeWq`SV-%k}-A`n@&`bwbkw6E&y8R9RLb{Gh7)_FpX|k5Gx)i{=*Ew*{m1mLp%Zxo%Z!u($ zsgtd`boW)c@b+yVqVL=>KFV+;vw`Vj-@U_YgC|d97OtNlW0HP({-%xnuPYWc@K63d z{qrV9o9W7%7=?`)3+DCy{Lk=pCEFq6t^41v|F;#GG(Odrf|>H_-=qKi`p@th7@2y) z7x&x$+p2!@@APb-?yR7Pw$h&=Qb4h5{~7k}|8=Ei{@wiFum3Zw1qP^WLwa`o{rJCG xG3tx!>i=eGEMWO*zw7?@>;D;|`cd5jaob9$Q-E$1e)4AdM-w?