MiniMax M2.7 Highspeed
A long-context LLM in the graph
- messages
- text
MiniMax M2.7 is the 2025 text model that made a name on two things: enormous context and tool calling. The Highspeed variant trades a little ceiling for a lot of latency, which makes it the sensible default for the jobs people actually wire into a ComfyUI graph - prompt tuning, captioning, workflow glue - where you want the answer back before you lose interest. This node runs it on Runware's cloud. No weights, no VRAM, no local LLM server to keep alive.
It's one of several hosted LLM nodes in the pack (this one, Qwen3.5-27B, and a few others), and the honest way to choose between them is: Qwen is the vision pick because it takes IMAGE input; MiniMax is the text-and-tools pick because it leans into long context and structured tool calls. Different jobs, same socket.
The inputs that matter
messages(required,RUNWARE_MESSAGES): the conversation, built with the Runware Messages builder and chained in.settings.maxTokens(default32,768, up to196,608): the headline number. That's a 196K-token ceiling - the "paste a whole book in" mode. The default is already generous for prompt work.settings.systemPrompt(multiline): set the persona. "You are a workflow assistant that returns JSON only" - that sort of thing.settings.temperature(default1, range 0–1): this one defaults high. For deterministic workflow glue, drop it toward 0; only keep 1 when you want the model's personality.settings.topP(default 0.95): the usual nucleus sampling control.toolChoice(gated toggle): flip it on to control tool calling.toolChoice.typeis the strategy -auto,any,tool(force a specific tool),none- andtoolChoice.namenames the tool, which the tooltip notes is required when type istool.advanced_json: the escape hatch, and its tooltip is upfront that it's fortools- define your function schemas as JSON here, then control them viatoolChoice.seed,numberResults(max 4),includeUsage: the usual reproducibility and diagnostics block.
Output is a single text (STRING).
How it works
Pack-standard: messages ride up as a REST request, MiniMax M2.7 Highspeed runs on Runware's GPUs, and the text comes back. includeUsage is the token-meter - flip it on when you're tuning prompts and want to see what the answer cost. And because this is Highspeed, the whole round trip is fast enough to feel interactive rather than like a batch job.
Install and gotchas
Install the pack once - ComfyUI Manager, search Runware - or git clone https://github.com/Runware/ComfyUI-Runware into custom_nodes + pip install -r requirements.txt, restart, and set a Runware API key (Settings → Runware API key, RUNWARE_API_KEY, or runware auth login).
Two things to remember. A 196K-token context is a capability and a bill - pasting a whole novel in and asking for a summary is genuinely useful, and it costs accordingly. And tool calling is a two-part setup: the tools schemas go in advanced_json, and toolChoice tells the model how to use them; forgetting either half makes the other silently pointless. For fast, long-context text work inside a workflow, this is the node to reach for.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| messages | RUNWARE_MESSAGES | — | |
| seedopt | INT | 00–4294967295 | Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range. |
| numberResultsopt | INT | 11–4 | Number of results to generate. Each result uses a different seed, producing variations of the same parameters. |
| includeUsageopt | BOOLEAN | false | Include token usage statistics in the response. |
| settings.maxTokensopt | INT | 327681–196608 | Maximum number of tokens to generate in the response. |
| settings.systemPromptopt | STRING | System-level instruction that guides the model's behavior and output style across the entire generation. | |
| settings.temperatureopt | FLOAT | 1.000–1 | Controls randomness in generation. Lower values produce more deterministic outputs, higher values increase variation and creativity. |
| toolChoiceopt | BOOLEAN | false | Enable to set toolChoice. Off uses the model's default. |
| toolChoice.nameopt | STRING | Name of the specific tool the model must call. Required when type is `tool`. | |
| toolChoice.typeopt | COMBO | (default) | Strategy the model uses to decide when and which tools to call. |
| settings.topPopt | FLOAT | 0.950–1 | Nucleus sampling parameter that controls diversity by limiting the probability mass. Lower values make outputs more focused, higher values increase diversity. |
| outputFormatopt | COMBO | TEXT | Output format for the generated text. |
| advanced_jsonopt | STRING | Optional JSON merged into the request. For: tools |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |