KOHYA_SS GUI에 배치기능이 없어서, 여러 개 작업을 할 경우 자꾸 들여다봐야하는 귀찮음이 있어.
GUI가 아닌 커맨드로 구동을 하면 이런 귀찮음을 없애고, 배치파일을 사용해서 와장창 돌리고 나중에 결과만 체크하면 돼.
개편해.


내가 쓰는 방법은:
1. KOHYA_SS GUI에서 통상적으로 세팅하고, 세팅한 결과를 config_file로 뽑아낸다;


Print training command를 누르면 지정한 output 폴더에 로라, 드림부스, 파인튜닝에 따라 
config_lora-날짜-번호.toml, 

config_dreambooth-날짜-번호.toml, 

config_finetune-날짜-번호.toml

파일이 생성된다.

이때 KOHYA_SS GUI 커맨드창에는 이 파일을 주욱 표시하고 파일이름이 표시된다.



2. 1번을 원하는 작업(로라, 드림부스, 파인튜닝.....)을 하면서 config_file을 원하는 만큼 만든다;


3. 2의 config_file들을 사용하여 KOHYA_SS를 커맨드로 구동하는 아래와 같은 내용의 배치파일(sample.bat)을 만든다. 


accelerate launch --mixed_precision="bf16" --num_processes=1 --num_machines=1 --num_cpu_threads_per_process=2 "C:\AI\kohya_ss/sd-scripts\train_network.py" --config_file "config_lora-20240527-184222.toml"

accelerate launch --mixed_precision="bf16" --num_processes=1 --num_machines=1 --num_cpu_threads_per_process=2 "C:\AI\kohya_ss/sd-scripts\sdxl_train_network.py" --config_file "config_lora-20240527-184708.toml" 


첫째작업은 SD15로라 작업(train_network.py)이고, 둘째작업은 SDXL로라 작업(sdxl_train_network.py)이야.

주의 - C:\AI\kohya_ss는 자신의 kohya_ss 설치 폴더 이름인데, 이 배치파일과 config 파일 (config_lora-20240527-184222.toml....)은 반드시 이 폴더에 있어야해. 아니면 이름을 폴더까지지 몽땅 적어주던가.


나머지 옵션도 자신에 맞게, 예를 들어, 위의 커맨드는 계산을 bf16으로 하는 것인데 원하면 --mixed_precision="no", --mixed_precision="fp16"로 변경해서 쓰는거야.


4. 커맨드창에서 venv환경으로 전환하고, 3의 배치파일을 돌린다.



학습과정 화면 (sample.bat)


5. 열라 학습하고 있는데 갑자기 로라를 더 만들고 싶거나 작업을 추가하고 싶으면, 2번까지를 다시 해서 배치파일 마지막에 커맨드를 계속 추가하면 추가된 작업까지 계속 돌아간다.


이제 밤에 학습상황 체크한다고 모니터 디벼보지말고 걸어놓고 자자