Nodes/ComfyUI-Venice-API/Generate Text Advanced BETA (Venice)
ComfyUI Node

Generate Text Advanced BETA (Venice)

Every knob, no chat memory

By DraconicDragon·Created 2 years ago·Updated 8 months ago· 8
Generate Text Advanced BETA (Venice)
  • image_for_vision
  • response
modelllama-3.1-405b
prompt
system_prompt
enable_system_prompttrue
frequency_penalty0.00
presence_penalty0.00
repetition_penalty1.20
max_temp1.50
min_temp0.10
max_completion_tokens420
temperature0.50
top_k40
top_p0.80
min_p0.05
enable_visionfalse
venice_parameters

Local text generation in ComfyUI usually means finding VRAM for a quantized LLM on top of everything else your workflow already has loaded. Generate Text Advanced BETA (Venice) sidesteps all of that: it hands your prompt to venice.ai's servers and returns the model's reply as a plain string. No weights, no VRAM, no GPU at all - just an API key and a working internet connection. If you already pay for Venice, this is the text node the pack author wants you using.

It's the "Advanced" version for a reason. Where the basic Generate Text (Venice) node gives you five sampling dials, this one exposes the full chat-completions control panel, plus a couple of Venice-specific extras. The README is unambiguous: use this node for "updated text generation experience," and bolt on the Textgen Parameters (Venice) node when you want the Venice-only stuff.

How it works

Mechanically it's simple. The node builds a chat request (a system message plus your prompt), POSTs it to https://api.venice.ai/api/v1/chat/completions, and pulls the text out of choices[0].message.content. Nothing runs locally. That also means the one thing to keep in mind: this node has no chat history or memory. Every run is a stateless single exchange. If you want a multi-turn conversation, you're scripting it yourself and feeding the transcript back into system_prompt.

The inputs that actually matter

  • model - a dropdown auto-filled from your Venice account (things like llama-3.1-405b). If it's stuck on the default, the model list fetch failed; that's a key problem, not a node problem.
  • prompt and system_prompt - your ask, and the optional persona/instructions. enable_system_prompt is a handy kill-switch when you're testing whether the system prompt is actually changing behavior.
  • temperature / top_p / top_k / min_p - the usual sampling knobs. The tooltip's advice is worth taking: tune temperature or top_p, not both, or you're fighting yourself.
  • repetition_penalty - 1.0 means no penalty, and 1.2 (the default) is a gentle "please don't loop."
  • max_completion_tokens - 420 by default, up to 131072. If replies are getting cut off, this is the first thing to raise.
  • min_temp / max_temp - dynamic temperature scaling bounds, if you want the model to get more adventurous as it writes.
  • enable_vision + image_for_vision - only works on vision-capable models, and only when both the flag and the image are present. The pack resizes your image down and base64-encodes it before sending.
  • venice_parameters - the optional input you feed from Textgen Parameters (Venice) for characters, web search, and thinking control.

Output

One output: response (STRING). It lands as text on the node and wires into anything that takes a string - a text display node, or straight into an image prompt field if you're chaining generation. If nothing seems to happen, remember there's no visual preview built in; the output shows in ComfyUI's outputs panel.

Installing it

This is one node in the seven-node ComfyUI-Venice-API pack, so you install them all at once - via ComfyUI Manager (search "ComfyUI-Venice-API" or "Venice"), or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/DraconicDragon/ComfyUI-Venice-API.git
pip install -r ComfyUI-Venice-API/requirements.txt

Then restart ComfyUI, grab a key from venice.ai, and drop it in Settings > VeniceAI > API Key. The dependencies are light (requests, Pillow, numpy, configparser), and there are no model files to download - everything runs on Venice's side. It's labeled BETA, and it shows: the author openly calls the project a weekend experiment, so treat API changes as par for the course.

Categoryvenice.ai

Inputs (17)

NameTypeDefaultDescription
modelCOMBOllama-3.1-405bThe model to use for text generation.
promptSTRINGThe prompt to generate text from. Ask, command or chat with the model.
system_promptSTRINGOptional system prompt to guide the model's behavior.
enable_system_promptBOOLEANtrueEnable or disable system prompt being passed on.
frequency_penaltyFLOAT0.00-2–2Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.
presence_penaltyFLOAT0.00-2–2Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.
repetition_penaltyFLOAT1.200–21.0 means no penalty. Values > 1.0 discourage repetition.
max_tempFLOAT1.500–2Maximum temperature value for dynamic temperature scaling.
min_tempFLOAT0.100–2Minimum temperature value for dynamic temperature scaling.
max_completion_tokensINT4201–131072An upper bound for the number of tokens that can be generated for a completion, including visible output tokens and reasoning tokens.
temperatureFLOAT0.500–2Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. We generally recommend altering this or top_p but not both.
top_kINT40The number of highest probability vocabulary tokens to keep for top-k-filtering.
top_pFLOAT0.800–2An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
min_pFLOAT0.050–1Sets a minimum probability threshold for token selection. Tokens with probabilities below this value are filtered out.
enable_visionBOOLEANfalseEnable or disable vision tasks. Requires image_for_vision input to be populated and for the LLM to actually support vision tasks to process.
venice_parametersoptSTRINGOptional input. Use the Textgen Parameters (Venice) node to use extra, venice specific parameters for text generation.
image_for_visionoptIMAGEOptional input. Add an image for vision-supported LLMs to process. Will only be processed if 'enable_vision' is 'True' and if the LLM actually supports vision tasks.

Outputs (1)

NameTypeDescription
responseSTRING