nai-aclab 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -28
- package/launcher.py +5 -15
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
# NAI Artist Combination Lab
|
|
2
2
|
|
|
3
|
-
NovelAI 이미지 생성에서 작가 태그 조합과 가중치를 실험하기 위한
|
|
3
|
+
NovelAI 이미지 생성에서 작가 태그 조합과 가중치를 실험하기 위한 브라우저 기반 웹앱입니다.
|
|
4
4
|
작가 태그의 가중치를 랜덤하게 바꿔 여러 이미지를 만들고, 마음에 드는 결과에서 작가 가중치를 다시 불러와 고정한 뒤 여러 프리셋 조합을 테스트할 수 있습니다.
|
|
5
5
|
|
|
6
6
|
## 설치와 실행
|
|
7
7
|
|
|
8
|
-
### npm으로 실행
|
|
9
|
-
|
|
10
8
|
필요한 것:
|
|
11
9
|
|
|
12
10
|
- Node.js 18 이상
|
|
@@ -14,34 +12,19 @@ NovelAI 이미지 생성에서 작가 태그 조합과 가중치를 실험하기
|
|
|
14
12
|
|
|
15
13
|
실행 방법:
|
|
16
14
|
|
|
17
|
-
```powershell
|
|
18
|
-
npm start
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
GitHub에서 처음 받은 뒤에는 프로젝트 폴더에서 위 명령을 실행하면 됩니다. 브라우저가 자동으로 열리고, 앱 사용을 마친 뒤 안내 창을 닫으면 서버가 종료됩니다.
|
|
22
|
-
|
|
23
|
-
npm 패키지로 공개한 뒤에는 아래처럼 바로 실행할 수 있습니다.
|
|
24
|
-
|
|
25
15
|
```powershell
|
|
26
16
|
npx nai-aclab
|
|
27
17
|
```
|
|
28
18
|
|
|
29
|
-
|
|
19
|
+
브라우저가 자동으로 열리고, 터미널이 열려 있는 동안 앱 서버가 유지됩니다. 앱을 종료하려면 터미널에서 `Ctrl+C`를 누르거나 터미널을 닫으면 됩니다.
|
|
30
20
|
|
|
31
|
-
|
|
21
|
+
자주 사용한다면 전역 설치 후 실행할 수도 있습니다.
|
|
32
22
|
|
|
33
23
|
```powershell
|
|
34
|
-
|
|
24
|
+
npm install -g nai-aclab
|
|
25
|
+
nai-aclab
|
|
35
26
|
```
|
|
36
27
|
|
|
37
|
-
브라우저 서버만 직접 실행하려면 아래 명령을 사용합니다.
|
|
38
|
-
|
|
39
|
-
```powershell
|
|
40
|
-
python web_app.py
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
기본 주소는 `http://127.0.0.1:8765`입니다.
|
|
44
|
-
|
|
45
28
|
## 기본 사용 흐름
|
|
46
29
|
|
|
47
30
|
1. `API 설정` 메뉴에서 NovelAI 토큰과 모델 설정을 입력합니다.
|
|
@@ -140,12 +123,7 @@ override가 입력되어 있으면 모든 프리셋 조합에서 override 값을
|
|
|
140
123
|
|
|
141
124
|
## 저장 위치
|
|
142
125
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
- 앱 상태: `data/app_state.json`
|
|
146
|
-
- 생성 이미지와 요청 JSON: `outputs/`
|
|
147
|
-
|
|
148
|
-
`npm start` 실행 시:
|
|
126
|
+
앱 상태, 생성 이미지, 요청 JSON은 아래 위치에 저장됩니다.
|
|
149
127
|
|
|
150
128
|
- Windows: `%APPDATA%\NAI Artist Combination Lab`
|
|
151
129
|
- macOS: `~/Library/Application Support/NAI Artist Combination Lab`
|
package/launcher.py
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
3
|
import socket
|
|
4
|
-
import threading
|
|
5
|
-
import sys
|
|
6
4
|
import webbrowser
|
|
7
|
-
import ctypes
|
|
8
5
|
from http.server import ThreadingHTTPServer
|
|
9
6
|
|
|
10
7
|
from web_app import Handler
|
|
@@ -28,22 +25,15 @@ def main() -> None:
|
|
|
28
25
|
port = find_port()
|
|
29
26
|
server = ThreadingHTTPServer(("127.0.0.1", port), Handler)
|
|
30
27
|
url = f"http://127.0.0.1:{port}/"
|
|
31
|
-
thread = threading.Thread(target=server.serve_forever, daemon=True)
|
|
32
|
-
thread.start()
|
|
33
28
|
|
|
34
29
|
webbrowser.open(url)
|
|
30
|
+
print(f"{APP_NAME} is running at {url}")
|
|
31
|
+
print("Keep this terminal open while using the app. Press Ctrl+C to stop.")
|
|
35
32
|
|
|
36
33
|
try:
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
f"브라우저에서 {APP_NAME}가 실행 중입니다.\n\n{url}\n\n앱 사용을 마친 뒤 확인을 누르면 서버가 종료됩니다.",
|
|
41
|
-
APP_NAME,
|
|
42
|
-
0,
|
|
43
|
-
)
|
|
44
|
-
else:
|
|
45
|
-
print(f"{APP_NAME} is running at {url}")
|
|
46
|
-
input("Press Enter to stop the server...")
|
|
34
|
+
server.serve_forever()
|
|
35
|
+
except KeyboardInterrupt:
|
|
36
|
+
print("\nStopping server...")
|
|
47
37
|
finally:
|
|
48
38
|
server.shutdown()
|
|
49
39
|
server.server_close()
|