Nodes/futurematrix-comfyui/Futurematrix/GRSAI Chat API
ComfyUI Node

Futurematrix/GRSAI Chat API

An LLM inside your ComfyUI graph (and it's not picky about where it calls)

By day9011·Created 8 months ago·Updated 8 months ago· 0
Futurematrix/GRSAI Chat API
    • response
    api_key
    hosthttps://grsaiapi.com
    modelgemini-3-pro
    prompt
    delete_thinkfalse

    First, the truth about the pack: the futurematrix-comfyui README sells a grand vision - "conditional workflow execution," "latent space manipulations," an industrial AIGC automation platform. The actual shipped code is two small nodes: one that calls a chat API, one that calls an image API. That's it. What you're actually getting with Futurematrix/GRSAI Chat API is a thin, honest wrapper around an OpenAI-compatible chat endpoint - and for the thing it does, that's plenty.

    So what does it do? It sends your prompt to a language model over HTTP and returns the text answer as a ComfyUI STRING. If you've been reading the community's LLM-assisted prompting writeups, you know why that's useful: LLM-encoded models read natural language, so having a model write your prompt is just translating between two things that speak the same language. The classic wiring: type "a moody night market, cinematic, 35mm" in prompt, and pipe the node's response output into a CLIP Text Encode's prompt input. It's also handy as a plain Q&A node, or for auto-generating prompts from keywords when batching variations.

    How it works

    The mechanism is about as simple as a network node gets - here's the whole logic, from the source:

    • It POSTs to {host}/v1/chat/completions with an OpenAI-style body: {"model": ..., "messages": [{"role": "user", "content": prompt}], "stream": false}.
    • The api_key goes in the Authorization: Bearer ... header.
    • It grabs choices[0].message.content from the response and hands that string back out.

    That's it. No streaming, no conversation memory - every run is a fresh single-turn call, and the node blocks the queue while the request is in flight. Because it hits the standard OpenAI chat-completions route, it doesn't care who your host is. The default is https://grsaiapi.com (GRSAI, an obscure third-party gateway that serves Google's Gemini models) with model gemini-3-pro, but point host at OpenAI, OpenRouter, or a local LM Studio/Ollama server and it works the same.

    The inputs that matter

    Of the five fields, a beginner only really touches three:

    • prompt - the only thing you change run to run. This is what gets sent to the model.
    • api_key - grab one from your host's dashboard. On GRSAI's default endpoint, no key means a 401.
    • model - defaults to gemini-3-pro, which is a Google model served through the GRSAI gateway. The string has to match whatever your host actually serves, so if you swap hosts, swap this.

    There's one optional: delete_think (off by default). Toggle it on and the node strips <think>...</think> reasoning blocks from the reply - handy because Gemini-style reasoning models love to leak their internal monologue into the output. The only output is response, a STRING you can wire into any text input downstream or into a Show Text node to read it.

    Installing it

    Easiest route is ComfyUI Manager - search "futurematrix-comfyui" and install. Or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/day9011/futurematrix-comfyui
    

    Then restart ComfyUI and find it under Futurematrix/GRSAI/Chat API. No model files to download - this is an API client, not a model loader. The pack's requirements.txt is sloppy (it lists re, a stdlib module, plus openai, torch, and numpy this node never touches); in practice the only hard dependency is requests, which ComfyUI already ships. If pip chokes on the requirements file, don't fight it - the node still loads.

    Where people get burned

    • The README will mislead you. It claims conditional logic, "Dependencies: None," and even gives a placeholder clone URL. None of that describes the real code. Judge the pack by the two nodes in the menu, not the manifesto.
    • No error handling in the code. If the API returns anything unexpected, the node blows up with an ugly KeyError traceback in the console. Check the console when it fails - the actual error is usually in there.
    • Unknown model names fail silently-ish. If you type a model the host doesn't serve, you'll get an API error, not a graceful "no such model."
    • It needs a key, full stop. This isn't a local node; you need an account at whatever host you point it at. If you don't have a GRSAI account, that's fine - point host at an endpoint you do have and carry on.

    For a node that's really just "one HTTP call, one string out," it does the job. It's not the fanciest LLM node in ComfyUI - there are packs with streaming, chat history, and template plumbing - but if you want a no-frills LLM call in your graph, this is five minutes to a working prompt-enhancer.

    CategoryFuturematrix/GRSAI/Chat API

    Inputs (5)

    NameTypeDefaultDescription
    api_keySTRING
    hostSTRINGhttps://grsaiapi.com
    modelSTRINGgemini-3-pro
    promptSTRING
    delete_thinkoptBOOLEANfalse

    Outputs (1)

    NameTypeDescription
    responseSTRING