SCRIPTS.
프로덕션 PYTHON
AZIT LoRA 파이프라인의 프로덕션 소스입니다. 파일명을 클릭하면 원본 Python 파일이 열립니다. 용량은 대략적인 값이며, 변수명과 주석은 한국어로 작성되어 있습니다(프로젝트 맥락).
이미지 크롭, 리사이즈, 정규화. 파이프라인에서 가장 큰 스크립트. 얼굴 바운딩 박스 감지, 패딩을 포함한 정사각 크롭, 목표 해상도 리사이즈, 컬러 프로파일 정규화, 알파 채널 제거를 처리합니다. 학습에 바로 쓸 수 있는 깨끗한 디렉터리로 출력합니다.
해상도 / 톤 / 구도 게이트. 해상도 기준 미달, 허용 톤 범위 밖, 잘못된 프레이밍(얼굴이 너무 작거나, 중심을 벗어나거나, 여러 얼굴)인 이미지를 걸러냅니다. 오퍼레이터가 재촬영할 수 있도록 리젝트 로그를 생성합니다.
템플릿화된 워크플로우 JSON을 실행 중인 ComfyUI 인스턴스에 HTTP로 전송하고, 완료까지 폴링한 뒤, 결과 이미지를 내려받습니다. 평가 루프에서 각 LoRA 체크포인트에 대한 테스트 프롬프트를 생성하는 데 사용합니다.
최상위 오케스트레이터. YAML 설정을 읽고, 환경을 세팅하고, 로깅과 함께 AI-Toolkit 학습 서브프로세스를 실행하고, 종료 코드를 수집합니다. 터미널에서 실행을 시작하거나 야간 실행을 스케줄링하는 데 사용합니다.
저장된 체크포인트마다(100 스텝 간격) 고정된 평가 프롬프트 세트를 생성하고, InsightFace ArcFace로 얼굴 임베딩을 계산해 원본 배우 임베딩과 비교한 뒤, 스텝별 유사도를 디스크에 기록합니다.
LoRA 스텝별 유사도 시리즈와 상용 베이스라인(Higgsfield Soul 2.0) 레퍼런스 시리즈를 불러와 델타를 계산하고, 평균 아이덴티티 점수 기준 최적 LoRA 체크포인트를 고른 뒤, 요약 테이블을 출력합니다.
추론 시점 파라미터(CFG, Steps, max_shift)를 3라운드에 걸쳐 스윕하며 라운드마다 탐색 범위를 좁힙니다. 각 조합을 ComfyUI로 실행하고 ArcFace로 점수를 매긴 뒤, 구조화된 스윕 로그를 기록합니다. 두 번째로 큰 스크립트입니다.
스윕 로그를 파싱해 파라미터 조합별 평균 유사도를 계산하고, 최적점을 찾아내고, 상위 N개 후보를 트레이드오프 축(품질 vs 아이덴티티 vs 다양성)과 함께 제시합니다.
AI-Toolkit 로그 디렉터리를 tail하는 장기 실행 모니터. 새 체크포인트가 나타날 때마다 빠른 평가를 돌리고, 유사도 곡선이 과하게 치솟거나 평탄해지기 시작하면 경고를 냅니다(조기 종료 신호).