npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

nai-aclab

v1.1.0

Published

Local web UI for experimenting with NovelAI artist tag weight combinations.

Readme

NAI Artist Combination Lab

NovelAI에서 여러 작가 태그 조합을 시험해보고, 마음에 드는 그림체의 작가 가중치를 찾아내기 위한 앱입니다.

예를 들어 같은 캐릭터 프롬프트를 두고 작가 태그의 가중치만 바꿔 여러 장을 만든 뒤, 마음에 드는 이미지의 가중치를 다시 불러와 고정해서 더 테스트할 수 있습니다.

이런 분에게 좋습니다

  • NovelAI에서 그림체 조합을 여러 번 실험하는 분
  • artist:* 태그의 가중치를 매번 손으로 바꾸기 귀찮은 분
  • 마음에 드는 이미지가 나왔을 때 그 작가 가중치를 저장해두고 싶은 분
  • 여러 캐릭터/장면 프리셋에서 같은 그림체가 안정적으로 나오는지 보고 싶은 분

준비물

이 앱은 브라우저에서 열리지만, 실행을 위해 아래 두 가지가 필요합니다.

  • Node.js 18 이상
  • Python 3.10 이상

설치되어 있지 않다면 아래 공식 사이트에서 받을 수 있습니다.

  • Node.js: https://nodejs.org/
  • Python: https://www.python.org/downloads/

잘 모르겠다면 Node.js는 LTS 버전을 설치하면 됩니다.

설치되어 있는지 확인하려면 터미널에서 아래 명령어를 입력합니다.

node -v
python --version

버전 숫자가 나오면 준비된 상태입니다.

실행하기

Windows에서는 시작 메뉴에서 PowerShell을 열고 아래 명령어를 입력합니다.

npx nai-aclab

macOS에서는 터미널을 열고 같은 명령어를 입력하면 됩니다.

처음 실행할 때는 npm이 패키지를 내려받겠냐고 물어볼 수 있습니다. y를 입력하고 Enter를 누르면 됩니다.

실행되면 브라우저가 자동으로 열립니다. 앱을 사용하는 동안 터미널 창은 닫지 마세요. 앱을 종료하려면 터미널에서 Ctrl+C를 누르거나 터미널 창을 닫으면 됩니다.

자주 사용할 경우 전역 설치도 가능합니다.

npm install -g nai-aclab
nai-aclab

처음 설정하기

처음 켜면 아래 순서대로 설정하면 됩니다.

  1. API 설정 메뉴로 이동합니다.
  2. NovelAI API 토큰을 입력합니다.
  3. 목업 모드 사용을 끕니다.
  4. 설정 저장을 누릅니다.

API 토큰을 아직 넣고 싶지 않다면 목업 모드 사용을 켜둔 채로 UI만 먼저 테스트할 수 있습니다. 목업 모드에서는 실제 NovelAI API를 쓰지 않고 테스트용 이미지를 만듭니다.

대부분의 사용자는 Endpoint, Model, Sampler, Noise Schedule 같은 값은 기본값 그대로 두면 됩니다.

API 설정 메뉴

기본 사용 순서

1. 작가 태그 등록

작가 태그 메뉴에서 사용할 작가 태그를 넣습니다.

작가 태그는 한 줄씩 넣어도 됩니다.

artist:example_main
artist:sample_a

기존에 쓰던 프롬프트 조각을 그대로 붙여넣어도 됩니다.

1.3::artist:example_alpha ::, 1.1::artist:example_beta ::, 0.8::artist:example_gamma ::,

앱은 여기서 artist:* 부분만 자동으로 찾아냅니다.

선택 태그 수를 비워두면 그 카테고리에 적은 작가 태그를 모두 사용합니다. 일부만 랜덤으로 뽑고 싶을 때만 숫자를 입력하면 됩니다.

작가 태그 메뉴

2. 프리셋 만들기

프리셋 메뉴에서 자주 쓸 프롬프트를 저장합니다.

  • 베이스 프롬프트: 배경, 구도, 상황 같은 전체 설명
  • 퀄리티 프롬프트: 품질 관련 태그
  • 캐릭터 프롬프트: 캐릭터별 외형과 행동
  • 네거티브 프롬프트: 피하고 싶은 요소
  • UC 프롬프트: NovelAI의 legacy UC 입력값

최종 프롬프트는 아래 순서로 조립됩니다.

베이스 프롬프트, 작가 태그, 퀄리티 프롬프트 | 캐릭터 1 | 캐릭터 2 | 캐릭터 3

NovelAI V4+의 멀티 캐릭터 프롬프트는 캐릭터를 쉼표로 합치지 않고 |로 나눕니다.

프리셋 메뉴

3. 이미지 생성

생성 메뉴에서 사용할 프리셋과 이미지 크기를 고른 뒤 이미지 생성을 누릅니다.

생성 중에는 실시간 이미지 미리보기에서 결과를 바로 확인할 수 있습니다.

마음에 드는 이미지가 나오면 히스토리나 가중치 비교 화면에서 가중치 불러오기를 누릅니다. 그러면 해당 이미지에 쓰인 작가 가중치가 생성 메뉴에 고정됩니다.

고정된 가중치를 해제하고 싶으면 생성 메뉴에서 고정 해제를 누르면 됩니다.

생성 메뉴

주요 메뉴 설명

생성

이미지를 만드는 기본 화면입니다.

  • 사용할 베이스+퀄리티 프리셋 선택
  • 사용할 캐릭터 프리셋 선택
  • 생성할 이미지 개수 선택
  • 이미지 크기 선택
  • 랜덤 가중치/고정 가중치 상태 확인
  • 실시간 이미지 미리보기 확인

작가 태그

작가 태그 목록과 가중치 범위를 관리합니다.

기본 카테고리는 두 개입니다.

  • 메인 그림체 작가
  • 그림체 안정화 작가

필요하면 직접 카테고리를 추가할 수 있습니다.

프리셋

반복해서 쓸 프롬프트를 저장하는 곳입니다.

프리셋을 잘 만들어두면 매번 긴 프롬프트를 다시 입력하지 않아도 됩니다.

히스토리

생성한 이미지를 모아보는 곳입니다.

  • 이미지 크게 보기
  • 좌우 방향키로 이미지 이동
  • 마우스 휠로 확대/축소
  • 드래그로 확대된 이미지 이동
  • 마음에 드는 이미지의 가중치 불러오기
  • 히스토리 선택 삭제 또는 전체 삭제
  • 이상형 월드컵 실행

히스토리 메뉴

가중치 비교

한 히스토리 안에서 생성된 이미지들을 옆으로 훑어보며, 각 이미지에 어떤 작가 가중치가 쓰였는지 비교하는 화면입니다.

여기서도 마음에 드는 이미지의 가중치 불러오기를 누를 수 있습니다.

가중치 비교 메뉴

이상형 월드컵

히스토리 이미지 중에서 두 장씩 비교하며 가장 마음에 드는 이미지를 고르는 기능입니다.

우승/준우승 이미지에서도 바로 가중치 불러오기를 할 수 있습니다.

타율 테스트

마음에 드는 작가 가중치를 고정한 상태로 여러 프리셋 조합을 한 번에 테스트하는 기능입니다.

여기서 은 아래 조합을 뜻합니다.

씬 = 베이스+퀄리티 프리셋 + 캐릭터 프리셋 + 생성 개수

사용 순서:

  1. 히스토리나 가중치 비교에서 마음에 드는 이미지의 가중치 불러오기를 누릅니다.
  2. 타율 테스트 메뉴로 이동합니다.
  3. 씬 추가를 눌러 테스트할 조합을 등록합니다.
  4. 필요한 만큼 씬을 추가합니다.
  5. 타율 테스트 시작을 누릅니다.

생성 중 멈추고 싶으면 생성 중지를 누르면 됩니다. 현재 처리 중인 이미지가 끝난 뒤 남은 생성을 멈춥니다.

타율 테스트 메뉴

이미지 크기

생성 메뉴에서 아래 크기 중 하나를 고를 수 있습니다.

  • Normal Portrait: 832 x 1216
  • Landscape: 1216 x 832
  • Square: 1024 x 1024

저장되는 정보

앱 설정과 생성 이미지는 내 컴퓨터에 저장됩니다.

기본적으로 홈 폴더 아래에 nai_aclab 폴더를 만들고, 그 안에 설정과 생성 이미지를 함께 저장합니다.

  • Windows: C:\Users\사용자이름\nai_aclab
  • macOS: ~/nai_aclab
  • Linux: ~/nai_aclab

폴더 안의 구조는 아래처럼 나뉩니다.

  • data: 앱 설정과 API 토큰 secret 파일
  • outputs: 생성된 이미지

API 토큰은 일반 설정 파일에 저장하지 않고 별도 secret store에 저장합니다. 앱 화면으로 다시 내려보내지도 않습니다.

생성 히스토리에는 이미지 표시와 작가 가중치 비교에 필요한 최소 정보만 저장합니다. 최종 프롬프트, 네거티브 프롬프트, UC 프롬프트, 생성 요청 JSON, 로컬 절대 경로는 별도로 저장하지 않습니다.

NovelAI가 이미지 파일 안에 저장하는 생성 정보는 그대로 남을 수 있습니다. 이 정보는 이미지 자체의 메타데이터입니다.

자주 묻는 문제

npx 명령어가 안 됩니다

Node.js가 설치되어 있지 않거나 너무 오래된 버전일 수 있습니다. Node.js 18 이상을 설치한 뒤 다시 시도하세요.

Python을 찾을 수 없다고 나옵니다

Python 3.10 이상이 설치되어 있는지 확인하세요.

Windows에서 Python을 설치할 때는 Add Python to PATH 옵션을 켜는 것이 좋습니다.

브라우저가 열렸는데 앱이 멈춘 것 같습니다

터미널 창을 닫으면 앱 서버도 종료됩니다. 앱을 사용하는 동안 터미널 창을 열어두세요.

이미지가 실제로 생성되지 않고 테스트 이미지만 나옵니다

API 설정에서 목업 모드 사용이 켜져 있는지 확인하세요. 실제 NovelAI 생성을 하려면 목업 모드를 꺼야 합니다.

기본 endpoint가 아닌 주소라는 경고가 나옵니다

API 설정의 Endpoint가 기본 NovelAI 주소와 다를 때 나오는 경고입니다. API 토큰이 해당 주소로 전송될 수 있으므로, 직접 설정한 주소가 맞는지 확인한 뒤 계속하세요.