Nodes/comfyui-arkennemasis/arkennemasis fal · Flux 3 Action SO-101 · $0.003/compute s
ComfyUI Node

arkennemasis fal · Flux 3 Action SO-101 · $0.003/compute s

FLUX 3 Action turns what the robot sees into what it does next. Give it the scene camera image, the wrist camera image, the current SO-101 joint state (shoulder pan, shoulder lift, elbow flex, wrist flex, wrist roll, gripper) and a plain-language instruction such as "Pick up the yellow cube and place it inside the black rectangle". It returns a chunk of 42 target joint positions at 30 Hz, that is 1.4 s of motion. In a control loop, execute the first 32 steps (about 1 s), then call again with fresh images and joint state. Pricing (from fal, 2026-09-29): Pricing can change for this endpoint. Your request will cost $0.003 per compute second. A typical call (one 42-step action chunk) is billed about 0.5 to 2 s of compute, so roughly $0.0015 to $0.006 per call, or about 1 s of robot motion. Model page: https://fal.ai/models/fal-ai/flux-3-action/so101 Key: FAL_KEY in the .env next to run_nvidia_gpu.bat. Results are saved in output/fal/fal-ai_flux-3-action_so101/.

By Hishamahmer·Created 2 months ago·Updated 4 days ago· 10
arkennemasis fal · Flux 3 Action SO-101 · $0.003/compute s
  • scene_image
  • wrist_image
  • history_scene_image
  • history_wrist_image
  • action_hz
  • actions
  • action_labels
  • seed
  • timings
  • execute_steps
  • info
◄prompt►
◄state[-18.94, 134.52, 120.15, 28.3, -32.17, 27.02]►
◄state_history►
◄command_history►
◄num_inference_steps4►
◄guidance_scale3.00►
◄seed-1►
◄max_cost_usd20.0►
◄reuse_identical_runtrue►
◄extra_json►
◄max_concurrent1►
Categoryarkennemasis/fal/Video/Flux

Inputs (15)

NameTypeDefaultDescription
promptSTRINGNatural-language task instruction for the robot.
scene_imageIMAGECurrent frame from the fixed scene camera (tiled left). Resized to 256x256.
wrist_imageIMAGECurrent frame from the wrist camera (tiled right). Resized to 256x256.
stateSTRING[-18.94, 134.52, 120.15, 28.3, -32.17, 27.02]Measured state: shoulder pan, shoulder lift, elbow flex, wrist flex, wrist roll (degrees), gripper (percent). JSON. Required.
state_historySTRINGMeasured states at the 7 control ticks (30 Hz) before `state`, oldest first. Requires `command_history`. Omit for a fresh episode. JSON. Empty leaves it out.
command_historySTRINGAbsolute commands in effect at each of the 8 observation ticks, oldest first; the last row is the most recent command sent. Requires `state_history`. JSON. Empty leaves it out.
num_inference_stepsINT41–8Euler denoising steps. The checkpoint was validated at 4.
guidance_scaleFLOAT3.001–10Classifier-free guidance on video and action; 1.0 disables CFG.
seedINT-1-1–2147483647Sampling seed. Omit for a random seed; the reference evaluation seed is 0 for DROID and 42 for SO-101. -1 leaves it to the model.
history_scene_imageoptIMAGEScene frame from the oldest history tick (7 ticks before now). Requires `state_history`. Defaults to the current frame.
history_wrist_imageoptIMAGEWrist frame from the oldest history tick. Requires `state_history`.
max_cost_usdoptFLOAT20.00–100000Safety cap. If the estimated cost of this run is above this many US dollars the node stops BEFORE sending anything to fal. 0 = no cap.
reuse_identical_runoptBOOLEANtrueIf these exact inputs (the settings AND the same pictures/clips/audio) were already paid for and the files are still in output/fal, return them instead of paying again - also after a ComfyUI restart. Turn off for a fresh take with the same settings.
extra_jsonoptSTRINGAdvanced: a JSON object merged into the request last, for any fal field this node has no box for. Example: {"seed": 7}. Leave empty normally.
max_concurrentoptINT11–32How many paid fal calls may run at the same time in one run, across every fal node. 1 (default) = one after another. This node starts its paid part only while fewer than this many fal calls are running. Once any fal node fails, the ones still waiting are not started, so nothing more is billed.

Outputs (7)

NameTypeDescription
action_hzFLOAT—
actionsSTRING—
action_labelsSTRING—
seedINT—
timingsSTRING—
execute_stepsINT—
infoSTRINGJSON: request id, cost estimate, saved files and fal's full answer.