Buckets:
가이드
Guider는 Modular Diffusers에서 생성 중 확산 프로세스가 어떻게 유도되는지를 제어하는 구성 요소입니다. 생성 품질과 제어를 개선하기 위해 다양한 유도 기법을 구현합니다.
BaseGuidance[[diffusers.BaseGuidance]]
diffusers.BaseGuidance[[diffusers.BaseGuidance]]
diffusers.BaseGuidance(start: float = 0.0, stop: float = 1.0, enabled: bool = True)
가이던스 기법을 구현하기 위한 골격을 제공하는 베이스 클래스.
cleanup_models[[diffusers.BaseGuidance.cleanup_models]]
cleanup_models(denoiser: torch.nn.Module)
주어진 데이터 배치 이후 guidance 기법을 위한 모델들을 정리합니다. 이 메서드는 서브클래스에서 오버라이드하여 특정 모델 정리 로직을 구현해야 합니다. prepare_models 실행 중에 추가된 훅이나 기타 상태가 있는 수정 사항을 제거하는 데 유용합니다.
from_pretrained[[diffusers.BaseGuidance.from_pretrained]]
from_pretrained(pretrained_model_name_or_path: str | os.PathLike | None = None, subfolder: str | None = None, return_unused_kwargs = False, **kwargs)
매개변수:
pretrained_model_name_or_path (str 또는 os.PathLike, 선택 사항) : 다음 중 하나일 수 있습니다. - Hub에 호스팅된 사전 학습 모델의 모델 ID 문자열(예: google/ddpm-celebahq-256). - save_pretrained()로 저장된 guider 구성이 포함된 디렉터리 경로(예: ./my_model_directory).
subfolder (str, 선택 사항) : Hub 또는 로컬의 더 큰 모델 저장소 내에서 모델 파일의 서브폴더 위치입니다.
return_unused_kwargs (bool, 선택 사항, 기본값 False) : Python 클래스에서 소비되지 않는 kwargs를 반환할지 여부.
cache_dir (str | os.PathLike, 선택 사항) : 표준 캐시를 사용하지 않을 경우, 다운로드된 사전 학습 모델 구성이 캐시되는 디렉터리의 경로입니다.
force_download (bool, 선택 사항, 기본값 False) : 캐시된 버전이 존재하더라도 모델 가중치 및 구성 파일의 (재)다운로드를 강제할지 여부.
proxies (dict[str, str], 선택 사항) : 프로토콜 또는 엔드포인트별로 사용할 프록시 서버의 사전입니다. 예를 들어, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}와 같습니다. 각 요청에 프록시가 사용됩니다.
output_loading_info(bool, 선택 사항, 기본값 False) : 누락된 키, 예상치 못한 키 및 오류 메시지가 포함된 사전도 함께 반환할지 여부.
local_files_only(bool, 선택 사항, 기본값 False) : 로컬 모델 가중치 및 구성 파일만 로드할지 여부입니다. True로 설정하면 Hub에서 모델을 다운로드하지 않습니다.
token (str 또는 bool, 선택 사항) : 원격 파일에 대한 HTTP bearer 인증으로 사용할 토큰입니다. True인 경우, diffusers-cli login에서 생성된 토큰(~/.huggingface에 저장됨)이 사용됩니다.
revision (str, 선택 사항, 기본값 "main") : 사용할 특정 모델 버전입니다. Git에서 허용하는 브랜치 이름, 태그 이름, 커밋 ID 또는 기타 식별자일 수 있습니다.
로컬 디렉터리 또는 Hub 저장소의 사전 정의된 JSON 구성 파일에서 guider를 초기화합니다.
> 비공개 또는 게이트된 모델을 사용하려면 로그인하세요
hf > auth login을(를) 통해 수행할 수 있습니다. 또한 방화벽이 있는 환경에서 이 방법을 사용하려면 특수한 "오프라인 모드"를 활성화할 수도 있습니다.
get_state[[diffusers.BaseGuidance.get_state]]
get_state()
가이던스 기법의 현재 상태를 딕셔너리로 반환합니다. 상태 변수는 repr 메서드에 포함됩니다. 반환값: dict[str, Any]: 다음을 포함하는 현재 상태 변수의 딕셔너리:
- step: 현재 추론 단계
- num_inference_steps: 총 추론 단계 수
- timestep: 현재 timestep 텐서
- count_prepared: prepare_models가 호출된 횟수
- enabled: 가이던스가 활성화되어 있는지 여부
- num_conditions: 조건 수
새로 추가[[diffusers.BaseGuidance.new]]
new(**kwargs)
매개변수:
- **kwargs : 새 인스턴스에서 오버라이드할 구성 매개변수입니다. kwargs가 제공되지 않으면 동일한 구성을 가진 정확한 복사본을 반환합니다.
반환값:
동일한(또는 업데이트된) 구성을 가진 새로운 guider 인스턴스.
이 guider 인스턴스의 사본을 생성하며, 선택적으로 수정된 구성 매개변수를 포함할 수 있습니다.
예:
# Create a CFG guider
guider = ClassifierFreeGuidance(guidance_scale=3.5)
# Create an exact copy
same_guider = guider.new()
# Create a copy with different start step, keeping other config the same
new_guider = guider.new(guidance_scale=5)
prepare_models[[diffusers.BaseGuidance.prepare_models]]
prepare_models(denoiser: torch.nn.Module)
주어진 데이터 배치에 대해 guidance 기법을 적용하기 위해 모델을 준비합니다. 이 메서드는 서브클래스에서 오버라이드하여 특정 모델 준비 로직을 구현해야 합니다.
save_pretrained[[diffusers.BaseGuidance.save_pretrained]]
save_pretrained(save_directory: str | os.PathLike, push_to_hub: bool = False, **kwargs)
매개변수:
save_directory (str 또는 os.PathLike) : 구성 JSON 파일을 저장할 디렉터리(존재하지 않으면 생성됨).
push_to_hub (bool, 선택 사항, 기본값 False) : 모델을 저장한 후 Hugging Face Hub에 푸시할지 여부입니다. repo_id를 사용하여 푸시할 저장소를 지정할 수 있습니다(기본값은 네임스페이스의 save_directory 이름입니다).
kwargs (dict[str, Any], 선택 사항) : push_to_hub() 메서드에 함께 전달되는 추가 키워드 인자입니다.
guider 구성 객체를 디렉토리에 저장하여 from_pretrained() 클래스 메서드를 사용해 다시 로드할 수 있도록 합니다.
ClassifierFreeGuidance[[diffusers.ClassifierFreeGuidance]]
diffusers.ClassifierFreeGuidance[[diffusers.ClassifierFreeGuidance]]
diffusers.ClassifierFreeGuidance(guidance_scale: float = 7.5, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : 이 guider가 후처리 단계에서 적용하는 CFG scale입니다. 값이 높을수록 프롬프트 조건화가 강해지지만 품질이 저하될 수 있습니다. 일반적인 범위: 1.0-20.0.
guidance_rescale (float, 기본값 0.0) : 높은 guidance scale로 인한 과노출을 방지하기 위한 재스케일링 계수입니다. 공통 디퓨전 노이즈 스케줄 및 샘플 스테프는 결함이 있습니다에 기반합니다. 범위: 0.0(재스케일링 없음)에서 1.0(완전한 재스케일링)까지.
use_original_formulation (bool, 기본값 False) : True인 경우, 논문에서 제시한 원래의 CFG 수식을 사용합니다. False(기본값)인 경우, Imagen 논문에서 제시한 diffusers 네이티브 수식을 사용합니다.
start (float, 기본값 0.0) : CFG가 시작되는 디노이징 단계의 비율(0.0-1.0). 초기 디노이징 단계에서 CFG를 비활성화하려면 > 0.0을 사용하세요.
stop (float, 기본값 1.0) : CFG가 중단되는 디노이징 단계의 비율(0.0-1.0). 후기 디노이징 단계에서 CFG를 비활성화하려면 1.0보다 작은 값을 사용하세요.
enabled (bool, 기본값 True) : CFG가 활성화되어 있는지 여부입니다. CFG를 완전히 비활성화하려면 False로 설정하세요 (조건부 예측만 사용).
확산 모델에 Classifier-Free Guidance(CFG)를 구현합니다.
참고: https://huggingface.co/papers/2207.12598
CFG는 조건부 데이터와 무조건부 데이터 모두를 사용하여 모델을 함께 학습한 후, 추론 시 예측을 결합함으로써 생성 품질과 프롬프트 준수도를 향상시킵니다. 이를 통해 품질(높은 guidance)과 다양성(낮은 guidance) 사이의 트레이드오프를 조절할 수 있습니다.
두 가지 CFG 공식:
- 원래 공식 (논문에서):
x_pred = x_cond + guidance_scale * (x_cond - x_uncond)
무조건적 예측에서 조건부 예측을 더 멀리 이동시킵니다.
- Diffusers 네이티브 공식 (기본값, Imagen 논문에서 가져옴):
x_pred = x_uncond + guidance_scale * (x_cond - x_uncond)
무조건적 예측을 조건부 예측으로 이동시켜, 부정적 특징(예: "낮은 품질", "워터마크")을 효과적으로 억제합니다. 이론적으로는 동등하지만 더 직관적입니다.
use_original_formulation=True를 사용하여 원래의 수식으로 전환합니다.
ClassifierFreeZeroStarGuidance[[diffusers.ClassifierFreeZeroStarGuidance]]
diffusers.ClassifierFreeZeroStarGuidance[[diffusers.ClassifierFreeZeroStarGuidance]]
diffusers.ClassifierFreeZeroStarGuidance(guidance_scale: float = 7.5, zero_init_steps: int = 1, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
zero_init_steps (int, 기본값 1) : 노이즈 예측을 0으로 설정하는 추론 단계 수 (4.2절 참조).
guidance_rescale (float, defaults to 0.0) : The rescale factor applied to the noise predictions. This is used to improve image quality and fix overexposure. Based on Section 3.4 from Common Diffusion Noise Schedules and Sample Steps are Flawed.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.01) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 0.2) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
Classifier-free Zero* (CFG-Zero*): https://huggingface.co/papers/2503.18886
이것은 classifier-free guidance의 변형인 Classifier-Free Zero* guidance 기법의 구현입니다. 이 기법은 diffusion 과정의 초기 몇 단계에서 노이즈 예측값을 zero로 초기화하는 것을 제안하며, 노이즈 예측값에 대한 최적의 rescaling factor를 도입하여 생성된 이미지의 품질을 향상시키는 데 도움을 줄 수 있습니다.
해당 논문의 저자들은 추론 단계의 처음 4%에서 zero initialization을 설정하는 것을 제안합니다.
SkipLayerGuidance[[diffusers.SkipLayerGuidance]]
diffusers.SkipLayerGuidance[[diffusers.SkipLayerGuidance]]
diffusers.SkipLayerGuidance(guidance_scale: float = 7.5, skip_layer_guidance_scale: float = 2.8, skip_layer_guidance_start: float = 0.01, skip_layer_guidance_stop: float = 0.2, skip_layer_guidance_layers: int | list[int] | None = None, skip_layer_config: LayerSkipConfig | list[LayerSkipConfig] | dict[str, Any] = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
skip_layer_guidance_scale (float, 기본값 2.8) : skip layer guidance의 scale 매개변수입니다. 값이 높을수록 해부학적 구조와 구조적 일관성이 향상될 수 있지만, 과도한 노출과 포화 현상을 유발할 수도 있습니다.
skip_layer_guidance_start (float, 기본값 0.01) : 전체 디노이징 단계 수 중 skip layer guidance가 시작되는 비율.
skip_layer_guidance_stop (float, 기본값 0.2) : 전체 디노이징 단계 수 중 skip layer guidance가 중단되는 비율.
skip_layer_guidance_layers (int 또는 list[int], 선택 사항) : skip layer guidance를 적용할 레이어 인덱스입니다. 단일 정수 또는 정수 목록일 수 있습니다. 제공되지 않으면 skip_layer_config를 제공해야 합니다. Stable Diffusion 3.5 Medium의 권장 값은 [7, 8, 9]입니다.
skip_layer_config (LayerSkipConfig 또는 list[LayerSkipConfig], 선택) : skip layer guidance에 대한 설정입니다. 단일 LayerSkipConfig 또는 LayerSkipConfig 목록일 수 있습니다. 제공되지 않으면 skip_layer_guidance_layers를 제공해야 합니다.
guidance_rescale (float, defaults to 0.0) : The rescale factor applied to the noise predictions. This is used to improve image quality and fix overexposure. Based on Section 3.4 from Common Diffusion Noise Schedules and Sample Steps are Flawed.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.01) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 0.2) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
Skip Layer Guidance (SLG): https://github.com/Stability-AI/sd3.5
Spatio-Temporal Guidance (STG): https://huggingface.co/papers/2411.18664
SLG는 StabilityAI에 의해 생성된 이미지의 구조 및 해부학적 일관성을 개선하기 위해 도입되었습니다. 이는 이미 CFG([~guiders.classifier_free_guidance.ClassifierFreeGuidance])에서 사용 중인 조건부 및 무조건 배치 외에, 추가적인 조건부 데이터 배치에서 디노이징 과정 중 지정된 transformer 블록의 forward pass를 건너뛰는 방식으로 작동합니다. 그런 다음, 건너뛰지 않은 조건부 예측과 건너뛴 조건부 예측 간의 차이를 기반으로 CFG 예측을 스케일링 및 시프트합니다.
SLG의 직관은 조건부 분포 추정치의 더 나쁜 버전(레이어를 건너뛰는 것은 조건부 예측에 더 나쁜 버전의 모델을 사용하는 것과 동등하므로)으로부터 CFG 예측 분포 추정치를 더 멀리 이동시키는 것으로 이해할 수 있습니다.
STG는 비디오 확산 모델의 생성 품질을 개선하기 위해 SLG, PAG 및 유사한 기법의 아이디어를 결합한 개선 및 후속 작업입니다.
추가 참고 자료:
skip_layer_guidance_scale, skip_layer_guidance_start, skip_layer_guidance_stop의 값은 StabilityAI가 Stable Diffusion 3.5 Medium에 대해 권장하는 값으로 기본 설정됩니다.
SmoothedEnergyGuidance[[diffusers.SmoothedEnergyGuidance]]
diffusers.SmoothedEnergyGuidance[[diffusers.SmoothedEnergyGuidance]]
diffusers.SmoothedEnergyGuidance(guidance_scale: float = 7.5, seg_guidance_scale: float = 2.8, seg_blur_sigma: float = 9999999.0, seg_blur_threshold_inf: float = 9999.0, seg_guidance_start: float = 0.0, seg_guidance_stop: float = 1.0, seg_guidance_layers: int | list[int] | None = None, seg_guidance_config: SmoothedEnergyGuidanceConfig | list[SmoothedEnergyGuidanceConfig] = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
seg_guidance_scale (float, 기본값 3.0) : smoothed energy guidance의 scale 매개변수입니다. 값이 높을수록 해부학적 구조와 구조적 일관성이 향상될 수 있지만, 과도한 노출과 포화 현상을 유발할 수도 있습니다.
seg_blur_sigma (float, 기본값 9999999.0) : attention weights를 흐리게 만드는 정도입니다. 이 값을 9999.0보다 크게 설정하면 무한한 블러가 발생하며, 이는 균일한 queries를 의미합니다. 지수적으로 제어하는 것이 경험적으로 효과적입니다.
seg_blur_threshold_inf (float, 기본값 9999.0) : 블러가 무한대로 간주되는 임계값.
seg_guidance_start (float, 기본값 0.0) : 전체 디노이징 단계 수 중, 매끄러운 에너지 가이던스가 시작되는 비율.
seg_guidance_stop (float, 기본값 1.0) : 전체 디노이징 단계 수 중, 매끄러운 에너지 가이던스가 중단되는 비율.
seg_guidance_layers (int 또는 list[int], 선택 사항) : smoothed energy guidance를 적용할 레이어 인덱스입니다. 단일 정수 또는 정수 목록으로 지정할 수 있습니다. 제공되지 않으면 seg_guidance_config를 제공해야 합니다. Stable Diffusion 3.5 Medium의 경우 권장 값은 [7, 8, 9]입니다.
seg_guidance_config (SmoothedEnergyGuidanceConfig 또는 list[SmoothedEnergyGuidanceConfig], 선택 사항) : smoothed energy layer guidance에 대한 설정입니다. 단일 SmoothedEnergyGuidanceConfig 또는 SmoothedEnergyGuidanceConfig 목록일 수 있습니다. 제공되지 않으면 seg_guidance_layers를 제공해야 합니다.
guidance_rescale (float, defaults to 0.0) : The rescale factor applied to the noise predictions. This is used to improve image quality and fix overexposure. Based on Section 3.4 from Common Diffusion Noise Schedules and Sample Steps are Flawed.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.01) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 0.2) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
Smoothed Energy Guidance (SEG): https://huggingface.co/papers/2408.00760
SEG는 현재 실험적 프로토타입 기능으로만 지원되므로, 향후 사전 통보나 재현 가능성 보장 없이 구현이 변경될 수 있습니다. 이 구현은 다음을 가정합니다:
- 생성된 이미지는 정사각형(높이 == 너비)입니다
- 모델은 서로 다른 모달리티를 결합하지 않습니다(예: Flux와 달리 텍스트와 이미지 잠재 스트림을 함께 결합하지 않음).
PerturbedAttentionGuidance[[diffusers.PerturbedAttentionGuidance]]
diffusers.PerturbedAttentionGuidance[[diffusers.PerturbedAttentionGuidance]]
diffusers.PerturbedAttentionGuidance(guidance_scale: float = 7.5, perturbed_guidance_scale: float = 2.8, perturbed_guidance_start: float = 0.01, perturbed_guidance_stop: float = 0.2, perturbed_guidance_layers: int | list[int] | None = None, perturbed_guidance_config: LayerSkipConfig | list[LayerSkipConfig] | dict[str, Any] = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
perturbed_guidance_scale (float, 기본값 2.8) : perturbed attention guidance의 scale 매개변수입니다.
perturbed_guidance_start (float, 기본값 0.01) : 전체 디노이징 단계 수 중, 교란된 어텐션 가이던스가 시작되는 비율.
perturbed_guidance_stop (float, 기본값 0.2) : 전체 디노이징 단계 수 중, 이 비율 이후에 perturbed attention guidance가 중단됩니다.
perturbed_guidance_layers (int 또는 list[int], 선택 사항) : Perturbed attention guidance를 적용할 레이어 인덱스입니다. 단일 정수 또는 정수 목록일 수 있습니다. 제공되지 않으면 perturbed_guidance_config를 제공해야 합니다.
perturbed_guidance_config (LayerSkipConfig 또는 list[LayerSkipConfig], 선택 사항) : perturbed attention guidance에 대한 설정입니다. 단일 LayerSkipConfig 또는 LayerSkipConfig 목록일 수 있습니다. 제공되지 않으면 perturbed_guidance_layers를 제공해야 합니다.
guidance_rescale (float, 기본값 0.0) : 노이즈 예측에 적용되는 재스케일 계수입니다. 이는 이미지 품질을 개선하고 과도한 노출을 수정하는 데 사용됩니다. 공통 디퓨전 노이즈 스케줄과 샘플 단계는 결함이 있다의 3.4절을 기반으로 합니다.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.01) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 0.2) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
Perturbed Attention Guidance (PAG): https://huggingface.co/papers/2403.17377
PAG의 직관은 CFG가 예측한 분포 추정치를 조건부 분포 추정치의 더 나쁜 버전에서 더 멀리 이동시키는 것으로 이해할 수 있습니다. PAG는 노이즈 제거 과정에서 더 나은 자기 유도(self-guiding)를 위해 학습된 모델의 더 나쁜 버전을 사용하는 아이디어를 도입한 최초의 기법 중 하나였습니다. PAG는 선택적으로 선택된 레이어에서 점수 행렬을 항등 행렬로 대체하여 잠재 스트림의 어텐션 점수를 교란시킵니다.
추가 참고 자료:
PAG는 구성 매개변수와 구현 세부 사항이 SkipLayerGuidance와 겹치기 때문에 유사한 방식으로 구현됩니다.
AdaptiveProjectedGuidance[[diffusers.AdaptiveProjectedGuidance]]
diffusers.AdaptiveProjectedGuidance[[diffusers.AdaptiveProjectedGuidance]]
diffusers.AdaptiveProjectedGuidance(guidance_scale: float = 7.5, adaptive_projected_guidance_momentum: float | None = None, adaptive_projected_guidance_rescale: float = 15.0, adaptive_projected_guidance_norm_dim: int | tuple[int, ...] | None = None, eta: float = 1.0, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
adaptive_projected_guidance_momentum (float, 기본값 None) : 적응형 투영 가이던스의 모멘텀 매개변수입니다. None으로 설정하면 비활성화됩니다.
adaptive_projected_guidance_rescale (float, 기본값 15.0) : 노이즈 예측에 적용되는 재스케일 계수입니다. 이는 이미지 품질을 개선하고
adaptive_projected_guidance_norm_dim (int 또는 tuple[int], 선택 사항) : APG 노름과 투영을 계산할 차원. 생략하면 원래 동작을 유지하면서 모든 배치 외 차원이 사용됩니다.
guidance_rescale (float, 기본값 0.0) : 노이즈 예측에 적용되는 재스케일 계수입니다. 이는 이미지 품질을 개선하고 과도한 노출을 수정하는 데 사용됩니다. 공통 확산 노이즈 스케줄 및 샘플 단계는 결함이 있습니다의 3.4절을 기반으로 합니다.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.0) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 1.0) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
Adaptive Projected Guidance (APG): https://huggingface.co/papers/2410.02416
AutoGuidance[[diffusers.AutoGuidance]]
diffusers.AutoGuidance[[diffusers.AutoGuidance]]
diffusers.AutoGuidance(guidance_scale: float = 7.5, auto_guidance_layers: int | list[int] | None = None, auto_guidance_config: LayerSkipConfig | list[LayerSkipConfig] | dict[str, Any] = None, dropout: float | None = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
auto_guidance_layers (int 또는 list[int], 선택 사항) : skip layer guidance를 적용할 레이어 인덱스입니다. 단일 정수 또는 정수 목록일 수 있습니다. 제공되지 않으면 skip_layer_config를 제공해야 합니다.
auto_guidance_config (LayerSkipConfig 또는 list[LayerSkipConfig], 선택) : skip layer guidance에 대한 설정입니다. 단일 LayerSkipConfig 또는 LayerSkipConfig 목록일 수 있습니다. 제공되지 않으면 skip_layer_guidance_layers를 제공해야 합니다.
dropout (float, 선택 사항) : 활성화된 스킵 레이어(즉, auto_guidance_layers 또는 auto_guidance_config를 통해 지정된 레이어)에 대한 autoguidance의 dropout 확률입니다. 값을 제공하지 않으면 dropout 확률은 1.0으로 설정됩니다.
guidance_rescale (float, 기본값 0.0) : 노이즈 예측에 적용되는 재스케일 계수입니다. 이는 이미지 품질을 개선하고 과도한 노출을 수정하는 데 사용됩니다. 공통 디퓨전 노이즈 스케줄과 샘플 단계는 결함이 있다의 3.4절을 기반으로 합니다.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.0) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 1.0) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
AutoGuidance: https://huggingface.co/papers/2406.02507
TangentialClassifierFreeGuidance[[diffusers.TangentialClassifierFreeGuidance]]
diffusers.TangentialClassifierFreeGuidance[[diffusers.TangentialClassifierFreeGuidance]]
diffusers.TangentialClassifierFreeGuidance(guidance_scale: float = 7.5, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 7.5) : classifier-free guidance의 scale 매개변수입니다. 값이 높을수록 텍스트 프롬프트에 대한 조건화가 강해지고, 값이 낮을수록 생성에 더 많은 자유도가 부여됩니다. 값이 너무 높으면 포화 현상이 발생하거나 이미지 품질이 저하될 수 있습니다.
guidance_rescale (float, 기본값 0.0) : 노이즈 예측에 적용되는 재스케일 계수입니다. 이는 이미지 품질을 개선하고 과도한 노출을 수정하는 데 사용됩니다. 공통 디퓨전 노이즈 스케줄과 샘플 단계는 결함이 있다의 3.4절을 기반으로 합니다.
use_original_formulation (bool, 기본값 False) : 논문에서 제안한 classifier-free guidance의 원래 수식을 사용할지 여부입니다. 기본적으로 코드베이스에 오랫동안 존재해 온 diffusers 네이티브 구현을 사용합니다. 자세한 내용은 [~guiders.classifier_free_guidance.ClassifierFreeGuidance]를 참조하세요.
start (float, 기본값 0.0) : 전체 디노이징 단계 수 중 가이던스가 시작되는 비율.
stop (float, 기본값 1.0) : 전체 디노이징 단계 수 중 가이던스가 중단되는 비율.
Tangential Classifier Free Guidance (TCFG): https://huggingface.co/papers/2503.18137
LTX2Guidance[[diffusers.LTX2Guidance]]
diffusers.LTX2Guidance[[diffusers.LTX2Guidance]]
diffusers.LTX2Guidance(guidance_scale: float = 1.0, stg_scale: float = 0.0, modality_scale: float = 1.0, guidance_rescale: float = 0.0, spatio_temporal_guidance_blocks: list[int] | None = None, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
매개변수:
guidance_scale (float, 기본값 1.0) : 해당 모달리티의 CFG scale입니다. 1.0인 경우 CFG pass가 완전히 건너뜁니다.
stg_scale (float, 기본값 0.0) : 해당 모달리티의 시공간 가이던스 스케일입니다. 0.0인 경우 STG 패스가 완전히 건너뜁니다.
modality_scale (float, 기본값 1.0) : 해당 모달리티의 모달리티 격리 가이던스 스케일입니다. 1.0인 경우 해당 패스가 완전히 건너뜁니다.
guidance_rescale (float, 기본값 0.0) : 높은 guidance scale로 인한 과노출을 방지하기 위한 재스케일링 계수입니다. 공통 디퓨전 노이즈 스케줄 및 샘플 스테프는 결함이 있습니다에 기반합니다. 범위: 0.0(재스케일링 없음)에서 1.0(완전한 재스케일링)까지.
spatio_temporal_guidance_blocks (list[int], 선택 사항) : STG 패스에서 교란할 Transformer 블록입니다. 값의 사용 방식은 denoiser 블록에 따라 달라집니다. LTX-2는 모든 모달리티를 공급하는 단일 forward에서 전체 블록을 교란하므로, 이 값을 video guider에서만 읽습니다. audio guider에 설정해도 효과가 없으며, 해당 guider는 자체 stg_scale을 통해 동일한 STG forward에 참여합니다.
start (float, 기본값 0.0) : 가이던스가 시작되는 디노이징 단계의 비율(0.0-1.0).
stop (float, 기본값 1.0) : 가이던스가 중단되는 디노이징 단계의 비율(0.0-1.0).
enabled (bool, 기본값 True) : 이 guider가 가이던스를 적용할지 여부입니다. False인 경우 조건부 패스만 실행됩니다.
LTX-2.X용 단일 모달리티 guider입니다. 델타 형식을 통해 최대 3개의 용어를 결합합니다:
- classifier-free guidance (CFG),
- 공간-시간 가이던스(STG), 즉 변형된 트랜스포머 블록 세트로 추가 패스를 수행하는 기법
- modality-isolation guidance, A2V/V2A cross-attention을 비활성화한 추가 패스
하나의 인스턴스가 하나의 모달리티를 처리하므로, 멀티모달 체크포인트에는 여러 인스턴스가 포함됩니다. LTX-2.X는 비디오 guider와 audio_guider를 페어링하며, 각각은 자체 스케일을 보유합니다. 최종 가이던스 추정값은 호출자가 입력하는 공간에서 계산됩니다. LTX-2 디노이저는 이 함수를 호출하기 전에 velocity->x0로 변환하고, 호출 후에는 다시 원래 공간으로 변환하므로 forward는 x0 예측값을 대상으로 동작합니다.
SkipLayerGuidance는 훅을 통해 교란을 적용하는 반면, LTX2Guidance는 비-CFG 교란이 모델의 forward 인수를 통해 구성되도록 기대합니다(LTX2VideoTransformer3DModel의 spatio_temporal_guidance_blocks 및 isolate_modalities). 호출하는 denoiser 블록이 패스별 식별자를 설정하는 책임을 집니다. 사용 예는 LTX2LoopDenoiser를 참고하세요.
Xet Storage Details
- Size:
- 36.6 kB
- Xet hash:
- 008e6fc2ae250fb1e2a80731998474440b0f71da329f897349feb959dab586e6
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.