배경
나는 WSL을 이용해서 oobabooga를 사용하고 있다.
WSL에서 직접 실행하기 귀찮아서 start_wsl.bat 파일을 이용한다.
문제
잘 이용하다가, hugging face 토큰이 필요한 모델이 있어서 HF_TOKEN설정 후 download_model.py를 이용하여 모델을 받았는데, webui 내에서 새로고침을 해도 인식 못하는 것을 확인했다.
아는 위치로 탐색
이상해 설치 경로를 찾아갔다. 나는 /home/lovian/ai/text-generation-webui
models 경로에 방금 받은 모델 파일만 있는 것을 확인했다.. 그동안 받은건 어디있지??
용량으로 탐색
어디 숨어 있으려나.
이럴 때는 용량으로 찾는게 편하다.
(base) lovian@suhome:~/ai/text-generation-webui$ du -sh *
0 CMD_FLAGS.txt
8.0K Colab-TextGen-GPU.ipynb
36K LICENSE
24K README.md
212K characters
1.0K cmd_linux.sh
1.0K cmd_macos.sh
4.0K cmd_windows.bat
0 cmd_wsl.bat
4.0K convert-to-safetensors.py
7.3M css
12K docker
124K docs
16K download-model.py
18M extensions
위 처럼 나오고 용량이 많은 곳을 보려고 했는데, 방금 받은 것 뿐이다.
스크립트 분석
start_wsl.bat
별거 없다 wsl.sh을 부르는 스크립트
wsl.sh
살짝 길고, 매크로가 많이 사용되었다.
- 내게 필요한건 모델이 저장되는 위치고, 대부분 프로그램 실행 경로를 기준으로 만들어지니까, 실행 경로를 찾자.
- 거의 마지막 줄이 프로그램 실행하는 부분이니까 맨 뒤에서 탐색
- python one_click.py 하는 줄이 보인다 (명시된 경로가 없으니까, 이전 줄에서 cd 등의 명령으로 경로를 설정 했겠군)
- "cd " 로 검색 (빈칸이 포함되어 있다)
- exec bash --init-file <(echo ". ~/.bashrc; conda deactivate 2> /dev/null; cd $INSTALL_DIR || cd $HOME; source $CONDA_ROOT_PREFIX/etc/profile.d/conda.sh; conda activate $INSTALL_ENV_DIR")
- 위의 결과 한줄이 나타남
- INSTALL_DIR이나 HOME 경로가 힌트라고 판단
- INSTALL_DIR로 검색
- INSTALL_DIR="$INSTALL_DIR_PREFIX/text-generation-webui"
- INSTALL_DIR_PREFIX 아래에 text-generation-webui 라는 것을 인지
- INSTALL_DIR_PREFIX 로 검색
- INSTALL_DIR_PREFIX="$HOME/text-gen-install"
- HOME 에 text-gen-install 이라네?
- HOME에서 text-gen-install을 찾아보자
검증
(base) lovian@suhome:~/text-gen-install/text-generation-webui$ du -sh models
59G models
결론
부가 설명이 별로 필요는 없는 편인데..
start_wsl로 실행하면, WSL의 ${HOME}/text-gen-install/text-generaion-webui/models가 모델 경로이다.
내가 혼란했던 이유는
- D:\my\ai\text-generatuin-webui가 git clone 받은 위치
- 위 경로에서 start_wsl을 했으니, 현재 경로의 models에 다운 받았을 것이라고 생각
- start_wsl 스크립트는 완전 새로운 위치에 git clone을 받고 관리하는 것을 몰랐음 -> 현재 경로를 git pull 할 거라고 넘겨 짚음
※ WSL로 oobabooga 사용할 때는 윈도우 파일의 위치와 WSL 파일의 위치가 다르게 만들어지는 것을 잊지 말자.