ComfyUI Node

starvector

Adobe's generative image-to-SVG, hosted on Civitai

By civitai·Created 3 months ago·Updated 2 days ago· 44
starvector
  • image
  • api_config
  • svg_audio
  • svg_video
  • workflow_id
  • raw_json
modelstarvector-1b
precisionfp16
max_length4000

StarVector is Adobe's research line for image-to-SVG: instead of tracing pixels, a generative model produces the vector markup directly. This node runs it on Civitai's orchestration layer - raster image in, SVG out, no local model and no GPU. Of the three image-to-SVG nodes in this pack, StarVector is the middle option: generative like OmniSVG, but a simpler control surface (model size, precision, max length) with no sampling knobs.

It's the right pick when you want the quality of a model-based vectorization without the parameter roulette of OmniSVG's temperature/top-p stack, and you don't need VTracer's exact geometric trace. Logos, icons, and clean illustrations are the sweet spot.

How it works

Standard civitai-comfy-nodes mechanics: upload your image to the Civitai Orchestration API as an imageToSvg recipe (engine comfy, ecosystem starvector), long-poll, return the result. The model generates SVG text from the image, so the knobs are about model size and how much SVG output to allow - not about tracing geometry.

The inputs that matter

  • image - required (IMAGE, or a URL/DataURL/Base64 string per the tooltip).
  • model - starvector-1b (default) or starvector-8b. The 8B is the quality upgrade; 1B is faster/cheaper.
  • precision - fp16 (default) or bf16 for the cloud run. Not something you normally need to touch - Civitai's fleet runs it.
  • max_length - 100–16000 (default 4000): the cap on generated SVG text. Raise it for complex, detail-heavy source images; lower it to keep output compact.

That's the whole surface. No temperature, no seed, no prompt - StarVector is the "point it at an image" option.

Outputs

Same generated naming as the other SVG nodes: svg_audio and svg_video media slots (a codegen artifact - don't read "audio"/"video" literally), plus workflow_id and raw_json. The SVG result comes back in one of the media slots; raw_json holds the full workflow JSON when you need the raw SVG text.

Installing and authenticating

Pack-wide install:

cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt

or ComfyUI Manager → "Civitai Comfy Nodes" → Install → restart. Dependencies: requests + python-socketio[client].

Auth: Civitai Auth node → CIVITAI_API_TOKEN → stored key/OAuth → browser login. Headless:

export CIVITAI_API_TOKEN=your_token

Where people get burned

  • Generative, not geometric. StarVector produces a generated SVG, not a pixel-perfect trace. If you need exact path reproduction of a raster, use the VTracer node.
  • No sampling controls. You can't tune determinism or creativity - the two levers are model size and max_length. If output feels off, that's all you have.
  • Billed per job; 8B costs more. Start on starvector-1b and upgrade only if quality demands it.
  • max_length matters for complex images. If SVG output gets truncated or loses detail, raise it - a busy source image can exceed the 4000-token default.
  • Odd output names (svg_audio/svg_video) are just the pack's generated naming; the SVG is what comes back. And the source image leaves your machine for the cloud job.
CategoryCivitai/Image/starvector

Inputs (5)

NameTypeDefaultDescription
imageIMAGEEither A URL, A DataURL or a Base64 string
modeloptCOMBOstarvector-1b2 options: starvector-1b, starvector-8b
precisionoptCOMBOfp162 options: fp16, bf16
max_lengthoptINT4000100–16000
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (4)

NameTypeDescription
svg_audioAUDIO
svg_videoVIDEO
workflow_idSTRING
raw_jsonSTRING