
Python 3.10 환경에서 $ pip install kss 명령어로 설치할 때는 잘 됐었는데, Python 3.12 환경에서 시도하니 아래와 같은 에러가 발생했다.pyyaml을 설치하는 과정에서 에러가 발생하는 것으로 보인다. 구글링을 통해 Windows 환경에서 pyenv를 통해 다른 버전의 Python을 설치해 해결하는 방법 (링크)을 찾았으나, 내가 처한 상황에서는 활용할 수 없는 방법이었다. 다른 해결 방법을 찾던 중, kss 깃헙 레포에 정확히 이 문제에 대한 Issue (링크)가 올라와있는 것을 발견할 수 있었다!위 글을 참고하면, 이 문제가 발생하는 원인은 kss는 pyyaml==6.0과 의존성이 있으나, Python 3.12 환경에서 pyyaml==6.0이 정상적으로 빌드되지 않기 때..
나의 상황은 다음과 같다. Docker 환경에서 dockerrun−itIMAGENAME명령어를통해container를만들어실행했다.그리고해당서버의GPU2대를활용해모델추론을하려고했는데이에러가발생했다.에러메시지를보면GPU가인식되지않고있는상황인데,추론코드에는문제가없었다.문제의원인은container를만들때부터였다.단순하게 docker run -it {IMAGE_NAME} 명령어로 container를 만들었었는데, 이렇게 되면 서버에 있는 gpu가 할당되지 않는다. 그래서 container 내에서 gpu를 인식하지 못한 것이다. 이 문제를 해결하려면, container를 만들 때 할당할 GPU 번호를 명시해줘야 한다. --gpus 파..
"UnicodeEncodeError: 'utf-8' codec can't encode characters in position : surrogates not allowed" 기존의 데이터 파일을 전처리한 후 저장하려는 코드에서 에러가 발생했다. 구글링해보니 다양한 방법들이 나오는데, 나의 경우는 기존 데이터 파일에 존재하는 유니코드 문자가 원인이었다. 따라서, 저장하기 전에 전체 텍스트에 대해 다음 코드로 유니코드 문자를 제거함으로써 에러를 해결했다. if not text.isascii(): text = ''.join([char for char in text if char.isascii()]).strip()
'RuntimeError: CUDA error: no kernel image is available for execution on the device' 새로운 서버에서 라이브러리들을 설치하고 모델을 학습시키려했더니 위와 같은 에러가 발생했다. 에러 메시지를 보고 CUDA 설치와 관련된 무시무시한 에러인듯 보여서 걱정했는데, 간단히 해결 가능했다. 해결 방법 1.이 에러가 CUDA와 PyTorch 호환 관련된 문제라고 하므로, 설치되어 있는 PyTorch를 삭제한다. 2. https://developer.nvidia.com/cuda-gpus#compute 에 들어가서 본인이 사용중인 GPU를 찾아 Compute Capability 값을 확인한다. 3. $ export TORCH_CUDA_ARCH_LIST=..
"AttributeError: 'BartConfig' object has no attribute 'force_bos_token_to_be_generated'" BART 모델을 사용 중인데, self.config.force_bos_token_to_be_generated 이 부분으로부터 위와 같은 에러 메시지가 출력되었다. 'force_bos_token_to_be_generated'가 다른 명칭으로 바뀌었기 때문이다. 해결 방법은 'force_bos_token_to_be_generated'를 'forced_bos_token_id'로 수정해준다.

RuntimeError: Error(s) in loading state_dict for GPT2LMHeadModel: size mismatch for transformer.wte.weight: copying a param with shape torch.Size([51200, 768]) from checkpoint, the shape in current model is torch.Size([51215, 768]). size mismatch for lm_head.weight: copying a param with shape torch.Size([51200, 768]) from checkpoint, the shape in current model is torch.Size([51215, 768]). 나의 경우 ..