ComfyUI Node
M8 · LLM Inference
Calls an external LLM over an OpenAI-compatible API: two prompt boxes, model dropdown, thinking effort. Accepts a skill, images and audio; outputs text.
M8 · LLM Inference
- skill
- image
- audio
- text
◄providerdeepseek►
◄base_urlhttps://api.deepseek.com/v1►
◄api_key►
◄model▾►
◄system_prompt►
◄user_prompt►
◄thinkingoff►
◄show_thinkingfalse►
◄temperature1.00►
◄max_tokens8192►
◄timeout120►
◄skill_autofalse►
◄extra_params►
CategoryM8/LLM
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| provider | COMBO | deepseek | Pick a provider. Changing it fills in that provider's default base_url and thinking options. For anything else choose Custom and enter the address yourself. |
| base_url | STRING | https://api.deepseek.com/v1 | API address. Defaults to https://api.deepseek.com/v1; point it at any OpenAI-compatible endpoint. |
| api_key | STRING | Leave empty to use the key stored on the server (recommended: Save key keeps it out of the workflow file). Anything typed here applies to this node only and is written into the workflow. | |
| model | COMBO | Fill in the address and key, then click Refresh models. You can also type a model name directly. | |
| system_prompt | STRING | System prompt: persona, tone, output format. Leave empty to send only the user prompt. | |
| user_prompt | STRING | What you want to ask. Can be wired from another node's text output (right-click the input and convert it to an input socket). | |
| thinking | COMBO | off | Thinking effort. Off sends no extra request; higher asks the model to think more. If the provider rejects the parameter it is dropped and the request retried (the log says so). |
| show_thinking | BOOLEAN | false | Show the model's thinking on the node panel (default off: it is usually long). Display only, the text output is unaffected. |
| temperature | FLOAT | 1.000–2 | Randomness. Lower for steady work like prompt writing, higher for creative ones. |
| max_tokens | INT | 819216–131072 | Upper bound on the reply length. It is a cap, not a target — normal answers do not fill it. |
| timeout | INT | 1205–3600 | Request timeout in seconds. For slow thinking models give it 300 or more. |
| skillopt | M8_SKILL | Wire this from M8 · Skill Loader. Its content is appended after the system prompt as reference material. | |
| skill_autoopt | BOOLEAN | false | Inject every uploaded skill and let the model decide which applies. Off by default: once the library grows, each turn carries a few irrelevant ones and burns tokens. Referencing a specific skill with / in the prompt is more precise. Caps are configurable in settings. |
| imageopt | IMAGE | Feed images to a vision model. Multiple images are sent together; count and edge limits are configurable. Models without image support return 400. | |
| audioopt | AUDIO | Feed audio to a model that accepts it (converted to WAV). Models without audio support return 400. | |
| extra_paramsopt | STRING | Extra request parameters as a JSON object, merged into the request body. Use it for provider-specific fields this pack does not cover, e.g. {"top_p": 0.9}. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |