콘텐츠로 이동

문제 해결

이 페이지에서는 자주 발생하는 문제의 해결 방법과 빠른 복구를 위한 팁, 그리고 원활한 사용을 돕는 안내를 제공합니다.

1. vllm와 vllm-rbln 패키지 임포트 실패

증상

  • import vllm; print(vllm.__path__)가 None으로 출력되는 경우
  • vllm-rbln plugin이 vllm에 등록되지 않아 UnspecifiedPlatform로 시작하는 경우

원인

v0.8.1 이전 버전에서 vllm-rbln 패키지는 vllm의 수정본이었습니다. v0.8.1부터는 vllm-rbln은 새로운 플러그인 시스템을 기반으로 구축되었습니다. 이러한 변경으로 인해 설치과정 중 충돌이 발생하여 vllm이 제대로 설치되지 않는 문제가 발생할 수 있습니다.

해결 방안

vllm 또는 vllm-rbln의 0.8.4 이전 버전을 사용한 적이 있다면, 재설치하기 전에 두 패키지를 모두 제거해야 합니다.

2. 모델 로드 실패

증상

  • [rank0]: AttributeError: 'ModelConfig' object has no attribute 'compiled_model_dir'라는 에러가 발생한 경우
  • 모델 경로에서 .rbln files를 찾지 못한 경우

원인

현재 vllm-rbln은 사전 컴파일된 모델의 추론만 지원합니다. vLLM에서 torch.compile을 사용한 컴파일 지원은 곧 추가될 예정입니다.

해결 방안

vLLM 추론 이전에 optimum-rbln을 활용해서 모델을 컴파일해야 하고, 컴파일한 모델을 vLLM에서 사용해야합니다.

3. TypeError: block_tables (shape=(a,)) has a shape different to required shape (b,).

증상

  • block_tables의 shape이 vLLM에서 요구하는 shape과 다른 경우

원인

사용자가 vLLM 엔진에 설정한 max_model_len 또는 block_size 값이 적절하지 않아 문제가 발생했습니다.

해결 방안

max_model_lenblock_size는 각각 컴파일된 모델의 max_seq_lenkvcache_partition_len로 설정해야 합니다. max_seq_lenkvcache_partition_len은 컴파일된 모델 디렉토리 내의 rbln_config.json 파일에서 확인할 수 있습니다.

4. KeyError: self.model.decoder = self.model.decoders[padded_batch_size]

증상

  • self.model.decoder = self.model.decoders[padded_batch_size]에서 Key Error 발생

원인

사용자가 vLLM 엔진에 설정한 max_num_seqs 값이 적절하지 않아 문제가 발생했습니다.

해결 방안

max_num_seqs는 컴파일된 모델의 batch_size로 설정해야 합니다. batch_size는 컴파일된 모델 디렉토리 내의 rbln_config.json 파일에서 확인할 수 있습니다.