Load Ultralytics Model
One YOLO file, three detector sockets
- detector_model
- bbox_detector
- segm_detector
Ultralytics YOLO models are the detection layer under half of ComfyUI's detailing workflows - the face_yolov8n.pt your face detailer runs is an Ultralytics model, even if you never think of it that way. SimpleSyrup.LoadUltralyticsModel is the loader for that ecosystem, and its trick is that one file in produces three detector outputs, so the same YOLO can drive whatever you plug it into.
The single input is model_name, a dropdown of .pt files in ComfyUI's models folder (the pack looks in the standard ultralytics location - drop face_yolov8n.pt, hand_yolov8n.pt, or a custom one there and it appears). The default text when nothing is found - "No local Ultralytics models found" - is a straight hint to go fetch a model first, rather than a bug.
The three outputs are the whole point:
detector_model- the SimpleSyrup-native detector socket, for the pack's own SEGS detection nodes.bbox_detector- a bounding-box detector, for nodes that expect that shape (this is the Impact PackBBOX_DETECTORconvention).segm_detector- a segmentation detector, for nodes that expect a mask-capable detector (the Impact PackSEGM_DETECTORconvention).
One loader, all three types. Since SimpleSyrup is built around Impact-compatible SEGS - regions that move freely between this pack and Impact workflows - this tri-output is the adapter that makes "load once, use anywhere" literal. Grab a segmentation-capable YOLO (*-seg.pt) and you get real masks; a plain bbox model gives you boxes and leaves the masking to SAM downstream.
Two things worth knowing about the dependency before you build a life on it:
- The
ultralyticspackage is a heavy, AGPL-licensed dependency that ships with the pack's requirements. If you're shipping anything commercially, the AGPL reach into detection weights is the kind of thing to answer before it's load-bearing. - It has a documented supply-chain history. In December 2024 a compromised Ultralytics release shipped a cryptominer, and it reached ComfyUI users specifically through the Impact Pack route. The remediation was to uninstall and reinstall clean. Nothing wrong with using Ultralytics - the entire ecosystem does - but it's a package worth updating deliberately and installing from PyPI, not from random mirrors.
Install: the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/Artificial-Sweetener/SimpleSyrup
cd SimpleSyrup && pip install -r requirements.txt
or ComfyUI Manager → search SimpleSyrup → Install → restart, with a current ComfyUI (v3 extension API). ultralytics comes in via the pack's requirements - that's expected, not an error. If your dropdown is empty, the model isn't in the folder ComfyUI scans, so double-check the path rather than blaming the node.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | No local Ultralytics models found | Ultralytics model file in the ComfyUI models folder. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| detector_model | DETECTOR_MODEL | Detector model for SimpleSyrup SEGS detection nodes. |
| bbox_detector | BBOX_DETECTOR | Bounding-box detector output for nodes that expect a bbox detector. |
| segm_detector | SEGM_DETECTOR | Segmentation detector output for nodes that expect a mask-capable detector. |