Flux Pseudo Negative Prompt. ComfyUI Custom Node with workflow. No hit to gen times!
세부 정보
파일 다운로드
모델 설명
FluxPseudoNegative: 부정 프롬프트를 긍정적 특성으로 변환하는 ComfyUI 노드
FluxPseudoNegative는 부정 프롬프트를 긍정 프롬프트로 변환하는 ComfyUI용 고급 커스텀 노드입니다. 원래 부정 프롬프트를 지원하지 않거나, 부정 프롬프트 사용 시 생성 시간이 크게 증가하는 이미지 생성 모델에 대한 프롬프트 엔지니어링을 향상시키기 위해 설계되었습니다. 따라서 CFG를 해킹하는 대신, 부정 단어를 반전시켜 그 반의어를 찾아냅니다!
Flux에서 부정 프롬프트를 작동시키기 위한 몇 가지 유망한 기술들이 존재하며, 이는 아마도 이 아이디어를 완전히 무의미하게 만들 것입니다... 하지만 이미 작업을 완료했기 때문에 최소한의 기능을 갖춘 노드를 완성하고 출시하기로 결정했습니다.
기능
다수의 반의어 찾기 전략:
사용자 정의 문장 처리
WordNet
NLTK
Hugging Face Transformers
다단어 개념을 위한 포괄적인 문장 처리
강도 조정을 위한 감정 분석
단어 임베딩을 활용한 개념 확장
확장된 반의어를 위한 ConceptNet 통합(선택 사항)
여러 처리 복잡도 레벨: 기초, 고급, 전문가
해결되지 않은 용어 또는 전체 프롬프트 변환을 위한 LLM 통합(선택 사항)
사용자 정의 반의어 및 시스템 프롬프트
주의사항
완벽하게 설계된 것은 아닙니다! 이는 CFG 사용으로 인해 생성 시간이 거의 두 배로 증가하는 문제를 해결하기 위한 불완전한 해결책입니다.
현재로서는 ConceptNet 확장을 사용하지 마십시오. 제대로 작동하지 않습니다.
"Gross"와 같은 단어는 여러 의미를 가질 수 있으며, 올바른 의미를 추론할 수 없습니다. ("역겨운"은 한 가지 의미이며, 세금 관련 맥락에서는 "총계"를 의미하기도 합니다). 이는 예상치 못한 반환 단어를 초래할 수 있습니다.
부정 프롬프트에 "갈색 말"과 같은 개념이 포함된 경우 잘 작동하지 않을 수 있습니다. 다시 말해, 이 도구는 모든 상황에 적용되지 않습니다.
설치
- ComfyUI Manager의 Git 옵션을 통해 설치하거나, 이 저장소를 ComfyUI의
custom_nodes디렉터리에 복제하세요:
git clone https://github.com/yourusername/ComfyUI-FluxPseudoNegativePrompt.git
- 필요한 종속성 설치:
pip install nltk textblob requests
- 필요한 NLTK 데이터 다운로드: (사용 시 자동으로 수행됨)
import nltk
nltk.download('averaged_perceptron_tagger')
nltk.download('pkt')
nltk.download('wordnet')
사용법
ComfyUI 인터페이스에서 "prompt_processing" 카테고리 아래의 "Flux Pseudo Negative" 노드를 찾아주세요.
노드를 워크플로우에 연결하세요:
부정 프롬프트 입력
보완할 긍정 프롬프트 입력
강도 매개변수 조정 (0.0 ~ 1.0)
처리 복잡도 선택
(선택 사항) "단어:반의어" 형식으로 사용자 정의 반의어 입력 (한 줄에 하나씩)
(선택 사항) ConceptNet 통합 활성화
(선택 사항) LLM 통합 활성화 (완전 또는 폴백)
(선택 사항) LLM 통합용 사용자 정의 시스템 프롬프트 입력
노드는 다음을 출력합니다:
변환된 부정 개념을 포함한 수정된 긍정 프롬프트
(LLM 통합 활성화 시) 추가 처리를 위한 LLM 입력 문자열
매개변수
negative_prompt: 변환할 부정 프롬프트positive_prompt: 보완할 선택적 긍정 프롬프트strength: 반의어 영향의 강도 (0.0 ~ 1.0)complexity: 처리 복잡도 레벨 (기초, 고급, 전문가)custom_antonyms: 선택적 사용자 정의 반의어 매핑use_conceptnet: 개념 확장을 위한 ConceptNet 통합 활성화use_llm_full: 완전한 LLM 기반 프롬프트 변환 활성화use_llm_fallback: 해결되지 않은 용어를 위한 LLM 폴백 활성화custom_system_prompt: LLM 통합용 사용자 정의 시스템 프롬프트
파일 구조
__init__.py: ComfyUI용 노드 초기화FluxPseudoNegative.py: 주요FluxPseudoNegativeNode클래스 포함flux_utils.py:PhraseHandler클래스 및strength_map포함
사용자 정의
flux_utils.py 파일을 수정하여 문장 매핑과 강도 맵을 사용자 정의할 수 있습니다. 또한 텍스트 박스 또는 텍스트 파일에서 한 줄에 하나씩 사용자 정의 반의어 사전을 로드할 수 있습니다. 사용자 정의 LLM 시스템 프롬프트를 지정하여 부정 프롬프트를 제3자 LLM 노드로 통합하여 변환할 수도 있습니다 (이 노드는 이미 테스트/검증된 3개의 프롬프트를 포함하고 있습니다).
참고
이 노드는 고급 NLP 기능과 모델을 사용할 때 상당한 컴퓨팅 자원을 요구합니다. 성능은 시스템 사양과 입력 프롬프트의 복잡도에 따라 달라질 수 있습니다.










