/ComfyUI_NAIDGenerator

NovelAI Diffusion generator for ComfyUI

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

ComfyUI_NAIDGenerator

A ComfyUI extension for generating image via NovelAI API.

Installation

  • git clone https://github.com/bedovyy/ComfyUI_NAIDGenerator into the custom_nodes directory.
  • or 'Install via Git URL' from Comfyui Manager

Setting up NAI account

Before using the nodes, you should set NAI_ACCESS_TOKEN on ComfyUI/.env file.

NAI_ACCESS_TOKEN=<ACCESS_TOKEN>

You can get persistent API token by User Settings > Account > Get Persistent API Token on NovelAI webpage.

Otherwise, you can get access token which is valid for 30 days using novelai-api.

Usage

The nodes are located at NovelAI category.

image

Txt2img

Simply connect GenerateNAID node and SaveImage node.

generate

Note that all generated images via GeneratedNAID node are saved as output/NAI_autosave_12345_.png for keeping original metadata.

Img2img

Connect Img2ImgOptionNAID node to GenerateNAID node and put original image.

image

Note that width and height of the source image will be resized to generation size.

Inpainting

Connect InpaintingOptionNAID node to GenerateNAID node and put original image and mask image.

image

Note that both source image and mask will be resized fit to generation size.

(You don't need MaskImageToNAID node to convert mask image to NAID mask image.)

Vibe Transfer

Connect VibeTransferOptionNAID node to GenerateNAID node and put reference image.

Comfy_workflow

You can also relay Img2ImgOption on it.

image

Note that width and height of the source images will be resized to generation size. This will change aspect ratio of source images.

ModelOption

The default model of GenerateNAID node is nai-diffusion-3(NAI Diffusion Anime V3).

If you want to change model, put ModelOptionNAID node to GenerateNAID node.

ModelOption

PromptToNAID

ComfyUI use () or (word:weight) for emphasis, but NovelAI use {} and []. This node convert ComfyUI's prompt to NovelAI's.

Optionally, you can choose weight per brace. If you set weight_per_brace to 0.10, (word:1.1) will convert to {word} instead of {{word}}.

image