EBU LMStudio Load
Fuzzy-search and swap the model LM Studio has loaded
- export_string
- model_selected
- models_found
If EbuLMStudioMakeRequest is the node that talks to whatever model LM Studio already has loaded, this is the node that makes sure the right model is loaded before that conversation starts. It unloads whatever's currently sitting in LM Studio and loads a new one, matched by a fuzzy search string rather than an exact file path - so you type something like llama or qwen and it goes looking for an installed model whose name contains that. This is a real, common pattern already: people running an LM Studio node alongside ComfyUI to pick out a specific pulled model - something like a qwen3-vl-8b-instruct variant on a consumer card like an RTX 4070 - for exactly this kind of prompt-writing or image-description task, without hardcoding the full model filename anywhere in the graph.
What the fields actually do
model_search_string (default llama) is the one field you're actually choosing - it's matched against the names of models you've already downloaded inside LM Studio, not something this node fetches for you. context_length (default 4096, up to 200000) sets how much context the model gets loaded with; keep this realistic for the model and your GPU rather than maxing it out, since the field's ceiling is LM Studio's, not a guarantee your hardware or the model itself can actually use that much. unload_image_models_first is the VRAM-tetris flag worth knowing about: flip it on and, before loading the LLM, the node will also unload your diffusion checkpoint (Flux, SDXL, whatever's loaded on the ComfyUI side) to make room. That's the mirror image of what EbuLMStudioUnload and EbuLMStudioUnloadGuider do later in the graph - those free the LLM's VRAM for the image model; this flag frees the image model's VRAM for the LLM. Same underlying constraint (one GPU, two hungry models, sequential not simultaneous use), opposite direction.
input_string is the same pass-through-for-ordering trick you'll see across this pack's utility nodes: it doesn't get read for content, it just forces this node onto the execution path so it's guaranteed to run - and finish - before whatever consumes export_string downstream. seed, likewise, exists mainly to defeat ComfyUI's output caching so the load genuinely re-fires on repeat runs rather than getting skipped as "nothing changed."
Outputs
model_selected tells you which installed model the fuzzy search actually picked - worth routing to a Show Text node the first time you use a new search string, since a vague term like llama can match several different quantizations and you want to confirm it grabbed the one you meant. models_found is the fuller list of everything the search matched, useful for the same debugging reason. export_string just carries input_string forward, same as the other utility nodes in this pack.
Installing it
ComfyUI Manager: search "EBU LMStudio." Manually: cd ComfyUI/custom_nodes && git clone https://github.com/burnsbert/ComfyUI-EBU-LMStudio, restart ComfyUI. LM Studio itself is the separate, required piece - install it, enable Developer Mode for the local server, download at least one model inside the app, and confirm lms ls --detailed lists it from a terminal. This node leans on that CLI to do its fuzzy search, so if lms isn't working from the command line, this node won't find anything either, regardless of what's installed in the app's UI.
Where people get burned
"Model not found" almost always means the search string doesn't actually match anything installed - double-check with lms ls --detailed rather than guessing at the exact name. A search string that's too generic is its own trap in the other direction: it'll happily match something, just maybe not the model you intended, so treat models_found as your sanity check rather than assuming a successful load means the right one loaded. Loading failures beyond that are almost always VRAM - that's what unload_image_models_first exists to fix - and if you set context_length higher than the model can realistically support on your hardware, expect either a hard failure or a silently degraded load depending on how LM Studio's backend handles it; when in doubt, start near the 4096-8192 range and raise it deliberately rather than maxing it out on the first try.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| input_string | STRING | — | |
| model_search_string | STRING | llama | — |
| context_length | INT | 40961000–200000 | — |
| seed | INT | 00–18446744073709550000 | — |
| unload_image_models_first | BOOLEAN | false | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| export_string | STRING | — |
| model_selected | STRING | — |
| models_found | STRING | — |