Nodes/Strata-T8/Strata 文本生成 / Text
ComfyUI Node

Strata 文本生成 / Text

A plain chat completion, except the model is sitting on your own card

By T8mars·Created 21 days ago·Updated 10 days ago· 20
Strata 文本生成 / Text
  • connection
  • text
  • reasoning
  • usage_json
◄prompt—►
◄systemYou are a helpful assistant.►
◄history[]►
◄max_tokens1024►
◄temperature0.70►
◄top_p0.95►
◄top_k20►
◄seed0►
◄reasoning_effort▾►
◄refresh0►

This is the lowest-level node in the pack: you give it a system prompt, a user prompt and optionally a message history, and you get text back. No presets, no JSON schema, no image. It's the node you reach for when you want to see what the engine actually thinks before you let one of the opinionated nodes shape the answer.

Why it exists

The KB's read on local LLM nodes is that the job in an image pipeline is almost always short structured rewriting - and that the value of running it locally isn't quality, it's being uncensored, offline and free per call (the KB's llm-in-comfyui notes § 1). StrataT8Text is that bare capability with none of the prompt-shaping built in. Use it to test a system prompt, to iterate on wording, or to do something none of the presets cover - translate a paragraph, turn a scene description into dialogue, classify a batch of ideas.

You'll need the Connection node feeding it, which means the whole two-process arrangement: the engine runs separately, and the pack hands it the GPU before and after the call.

How it works

The node assembles a chat request the boring way: an optional system message, then your history array, then your prompt as the final user turn. It posts that to the engine's chat-completions endpoint with the model name the service itself reports and streaming forced off, waits, and returns the answer. reasoning comes back as a separate output, so if you pick a thinking level, the scratch work doesn't get dumped into your prompt text. That's the failure mode the KB warns about constantly - chat models leaking "Here is your enhanced prompt:" into your conditioning - and here it's an API-level separation rather than a regex cleanup.

Inputs that matter

Most of the widget list is sampling and can be left alone. The three that change your life:

  • prompt - the user turn. Multiline.
  • system - defaults to You are a helpful assistant. Which is fine, and also why your first attempts return chatty, over-explaining answers. For image work, tell it what shape the output should be, e.g. "Write one English image-generation prompt. No preamble, no quotes, no lists."
  • history - a JSON array of {"role": ..., "content": ...} objects, roles limited to system, user, assistant, up to 256 messages, and each content must be a string. Default []. Paste a prior turn in here to continue a conversation across runs. Duplicate keys in that JSON are rejected rather than silently overwritten.

Sampling: max_tokens (1–131072), temperature 0.7, top_p 0.95, top_k (1–64), seed, reasoning_effort (none / low / medium / high / xhigh), and refresh. refresh is the one people miss - ComfyUI caches node output by inputs, so re-queueing with the same prompt returns the previous answer without another model call. Bump refresh when you want a fresh roll.

Outputs: text (wire into a CLIP Text Encode, a text-preview node, or another Strata node's string inputs), reasoning, usage_json (token counts, handy when you're tuning max_tokens or wondering how much context you just burnt).

Install

Manager → search Strata-T8 (publisher t8star, node ID strata-t8), or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/Comfyui-Strata-T8.git
python -m pip install -r Comfyui-Strata-T8/requirements.txt

The only pip dependency is jsonschema. Restart, then save a profile in the Strata-T8 sidebar and point a Connection node at it. Nothing is downloaded by the node pack - the weights live in the separate portable runtime plus a Strata-data folder (the IQ3_S main model alone is ~83.6GB, so budget disk, and the README suggests 96GB+ of RAM for comfort).

Where people get burned

Empty answer, no error message about why. If the model spends everything on thinking and hits the ceiling, you get "Model returned no final answer; increase max_tokens or reduce reasoning effort." That's exactly what reasoning_effort:high plus the default 1024 max_tokens produces. Raise the token ceiling or lower the effort. And don't reach for xhigh reflexively - the KB is blunt that this job wants small-and-obedient, not deliberative, because more thinking means more chances to leak scratch work.

"Strata is busy with another request." Same-GPU mode insists on one request at a time. If something else is in flight - a second queue item, a branch you forgot - it refuses rather than racing.

Don't expect the seed to make it reproducible. It's a sampling control, not a promise; the README is explicit that token-for-token identity isn't guaranteed. Pin it for stability, not for byte-exact replays.

First call is slow. The engine has to start and load before it can answer, and the same-GPU gate refuses to do that until ComfyUI's own models are off the card and 12GiB of VRAM and 60GiB of RAM are free. If you downgrade those thresholds, do it from measurement, not hope.

CategoryStrata-T8

Inputs (11)

NameTypeDefaultDescription
connectionSTRATA_CONNECTION—
promptSTRING—
systemSTRINGYou are a helpful assistant.—
historySTRING[]—
max_tokensINT10241–131072—
temperatureFLOAT0.700–2—
top_pFLOAT0.950.01–1—
top_kINT201–64—
seedINT00–2147483647—
reasoning_effortCOMBO5 options: none, low, medium, high, xhigh
refreshINT00–2147483647—

Outputs (3)

NameTypeDescription
textSTRING—
reasoningSTRING—
usage_jsonSTRING—