AIHub Expose Model (Simple)
A dropdown, nothing else
- MODEL
- CLIP
- VAE
AIHub Expose Model (Simple) is the model selector the full AIHubExposeModel should have been. Same job - let the external app's user pick a model, get MODEL, CLIP, VAE out - but without the LoRA stacks, the diffusion-model weight dtypes, and the dozen knobs that make its big sibling intimidating. The README is blunt that the full node is "rather complicated to setup," and its realistic use is LoRA selection. This one exists so that "if you just want the user to select a model, limited to a family or group," you don't have to wade through any of it.
Mechanically it's the same architecture as every expose in this pack: an AIHub client connects over the pack's websocket (port 8111) and supplies the model choice when it runs your workflow; the node loads it and hands back the MODEL/CLIP/VAE outputs you feed a KSampler. For the client to have anything to pick, models still have to be exported as JSON configs into ComfyUI/aihub/models (via AIHubMetaExportModel or by hand) - the Simple node is simpler, but it doesn't skip that step.
The inputs that matter
There are barely any, and that's the point:
- limit_to_family / limit_to_group - the two most useful inputs on the node. Set family to
sdxlorflux(or a group likefancy_animal_model) and the client's dropdown only shows models that match. This is how you keep a beginner from picking a model your workflow wasn't built for - the whole reason the pack exists is putting working workflows in front of people without ComfyUI expertise. - label - what the user sees ("Model" by default).
- disable_loras_selection - the Simple node doesn't expose LoRA lists of its own, but if a model's own config applies LoRAs, this toggle can still hide any LoRA control from the user.
- id - the unique protocol field id (alphanumeric,
_,-).
Also present: advanced (tuck it under the client's advanced panel), index (field sort order), and tooltip.
When to reach for it
Rule of thumb: if your workflow is "pick a model, run," this is the node. If you need the client to also stack LoRAs onto whatever they pick, or you're driving diffusion models with fp8 weight dtypes, you've outgrown it and need the full AIHubExposeModel. For everything else - which is most workflows - Simple is the one you want, and it's what the pack's own docs point you toward.
Install & gotchas
Same pack, same routine: ComfyUI Manager → search ComfyUI-aihub-workflow-exposer, or:
cd ComfyUI/custom_nodes
git clone https://github.com/otavanopisto/ComfyUI-aihub-workflow-exposer
then restart. No requirements.txt, no model downloads; the pack runs on ComfyUI's bundled deps. Keep the ComfyUI/aihub/... folders and an AIHubWorkflowController with a unique id in the workflow.
Gotcha worth knowing: the "Simple" here doesn't mean "no setup." Models still must be exported for the dropdown to have contents, and a limit_to_family that doesn't match any exported model's family leaves you with an empty picker. Set the limits against the family/group values in your exported model JSONs, not against vibes.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| id | STRING | exposed_model | A unique custom id for this workflow (it should be unique) |
| label | STRING | Model | This is the label that will appear in the field |
| limit_to_family | STRING | The family of the model to be loaded is limited by this value | |
| limit_to_group | STRING | The group of the model to be loaded is limited by this value | |
| tooltip | STRING | An optional tooltip | |
| advanced | BOOLEAN | false | If set to true, it will make this option be hidden under advanced options for this workflow |
| index | INT | 0 | This value is used for sorting the input fields when displaying; lower values will appear first. |
| disable_loras_selection | BOOLEAN | false | If set to true, it will disable the loras selection field in the UI |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| CLIP | CLIP | — |
| VAE | VAE | — |