문제해결¶
이 페이지는 RBLN Optimum에서 자주 발생하는 이슈와 해결 방법을 정리합니다.
컴파일 후 runtime 생성 실패¶
from_pretrained는 컴파일 직후 NPU에 runtime을 생성합니다. device memory 부족 외에도 다양한 원인이 있으므로, 메시지 상단의 원본 예외를 먼저 확인하는 것을 권합니다. runtime 생성을 건너뛰려면 다음과 같이 호출합니다.
저장 후에는 별도로 로드합니다.
Device / num_devices 설정 오류¶
device와 num_devices 검증 단계에서 다음 중 하나의 에러가 발생할 수 있습니다.
호스트에 없는 device ID를 지정한 경우입니다. device를 지정하지 않으면 0 … num_devices - 1이 기본값이 되므로, 호스트의 NPU 수보다 큰 num_devices를 지정해도 처음으로 없는 ID에서 이 에러가 발생합니다.
device 리스트의 길이와 num_devices가 다른 경우입니다.
지정한 ID는 모두 존재하지만 NPU 수가 num_devices보다 적은 경우로, device 리스트에 같은 ID가 반복될 때만 발생합니다(예: NPU가 1개인 호스트에서 device=[0, 0]).
rbln-smi로 사용 가능한 device를 확인한 뒤 다음 항목을 점검합니다.
- 지정한 device ID가 시스템에 존재하는지
num_devices≤ 사용 가능한 device 수device리스트 길이 =num_devices
Flash attention 설정 오류¶
Flash attention은 attn_impl="flash_attn" 또는 kvcache_partition_len 설정으로 활성화됩니다. 다음 제약 중 하나라도 위반하면 컴파일이 거부됩니다.
max_seq_len은kvcache_partition_len의 배수이면서2 × kvcache_partition_len이상이어야 합니다.kvcache_partition_len은 대상 NPU의 범위 안에 있어야 하므로, 모든 NPU에서max_seq_len은 2,048 이상입니다.
한계값은 대상 NPU를 따릅니다. rbln_config에 npu가 지정되어 있으면 그 값을, 아니면 호스트에 장착된 NPU를 기준으로 합니다. NPU가 없는 호스트에서 npu도 지정하지 않으면 ATOM™ 한계값이 적용되므로, 그런 환경에서 Rebel100™용으로 컴파일할 때는 npu를 지정해야 합니다(예: rbln_npu="RBLN-CR13").
Rebel100™(RBLN-CR*) | |
|---|---|
kvcache_partition_len | 1,024 – 16,384 |
max_seq_len | 2,048 이상 |
attn_impl="flash_attn"만 지정했을 때 기본 kvcache_partition_len | 8,192 |
범위를 벗어난 partition은 다음 오류로 거부됩니다.
기본 partition 8,192를 쓰면 max_seq_len은 16,384 이상이어야 합니다. Model Zoo는 Rebel100™용 Qwen3-8B를 max_seq_len=40_960, kvcache_partition_len=8_192로 컴파일합니다.
ATOM™(RBLN-CA*) | |
|---|---|
kvcache_partition_len | 1,024 – 32,768 |
max_seq_len | 2,048 이상 |
attn_impl="flash_attn"만 지정했을 때 기본 kvcache_partition_len | 16,384 |
범위를 벗어난 partition은 다음 오류로 거부됩니다.
기본 partition 16,384를 쓰면 max_seq_len은 32,768 이상이어야 합니다. Model Zoo는 ATOM™용 Qwen3-8B를 max_seq_len=40_960, kvcache_partition_len=8_192로 컴파일합니다.
로깅 및 디버깅¶
OPTIMUM_RBLN_VERBOSE 환경 변수로 로그 수준을 제어합니다(기본값 info).
지원 수준: debug, info, warning, error, critical.