Nodes/RuiquNodes for ComfyUI/EvaluateMultiple3
ComfyUI Node

EvaluateMultiple3

Run your own Python across three inputs at once

By ruiqutech·Created 2 years ago·Updated 2 years ago· 0
EvaluateMultiple3
  • in1
  • in2
  • in3
  • out1
  • out2
  • out3
expression
input_count3
print_to_console

Same family as EvaluateMultiple1 - you write Python, it runs - but with three lanes instead of one: three optional inputs (in1, in2, in3), one shared expression box, three outputs (out1, out2, out3).

Why three lanes instead of three separate nodes

The point of the wider node isn't more power, it's less repetition. Say you've got a resolution value and want to derive several related things from it at once - a rounded-to-multiple-of-8 version, an aspect ratio string, a formatted label for a filename. Doing that with three EvaluateMultiple1 nodes means writing the same setup logic three times, once per node. With EvaluateMultiple3 it's one expression, reading whichever inN you wired up, setting all three outN values in the same block of code.

Inputs and outputs

  • expression (multiline STRING) - your Python. Starts blank, same as the single-input version.
  • input_count (INT, 1–20, default 3) - same widget as every other EvaluateMultiple/EvaluateListMultiple variant. This node's "3" is only where it starts; drag the slider and it grows more inN/outN sockets on demand.
  • print_to_console - flip to True to see what came out in your ComfyUI terminal while you're getting an expression right.
  • Optional: in1, in2, in3 (all type *).
  • Outputs: out1, out2, out3.

The same caution as its siblings

This is genuine Python execution, not a filtered expression language - unlike rgthree-comfy's Power Puter, which deliberately parses input to an AST and blocks file access, network calls, and imports, RuiquNodes' own README describes this family as running "any fragment of Python code" without qualification. Write what you understand, and don't paste an expression from someone else's workflow without reading it first.

Installing it

ComfyUI Manager: search RuiquNodes, install, restart. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/ruiqutech/ComfyUI-RuiquNodes

then restart. No models or extra dependencies to fetch.

Common issues

Only some of the three outputs come through, the rest stay None. Check your expression actually assigns every outN your graph reads downstream - an output your code never touches just stays unset, and ComfyUI won't warn you about it, it'll just hand a None to whatever's wired to it.

The node feels cramped at 3 lanes. That's what input_count is for - you don't need to switch to EvaluateMultiple6 or EvaluateMultiple9, just raise the slider on this one and rewire the new sockets.

A syntax error kills the queue. The traceback in your console will point at the line in your expression box - read it the same way you'd read any Python error, because that's exactly what it is.

Not sure whether to use in1/in2/in3 or all of them. They're all optional - you don't have to wire up every socket just because it exists. A three-output node fed by a single in1 is perfectly normal if the expression only needs one input to derive three related outputs; leave in2 and in3 disconnected rather than forcing a wire in for the sake of it.

Categoryruiqu/evaluate

Inputs (6)

NameTypeDefaultDescription
expressionSTRING
input_countINT31–20
print_to_consoleCOMBO2 options: False, True
in1opt*
in2opt*
in3opt*

Outputs (3)

NameTypeDescription
out1*
out2*
out3*