IT한 것/AI

oobabooga model download location

lovian 2023. 12. 12. 20:09

배경

나는 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

살짝 길고, 매크로가 많이 사용되었다.

  1. 내게 필요한건 모델이 저장되는 위치고, 대부분 프로그램 실행 경로를 기준으로 만들어지니까, 실행 경로를 찾자.
  2. 거의 마지막 줄이 프로그램 실행하는 부분이니까 맨 뒤에서 탐색
  3. python one_click.py 하는 줄이 보인다 (명시된 경로가 없으니까, 이전 줄에서 cd 등의 명령으로 경로를 설정 했겠군)
  4. "cd " 로 검색 (빈칸이 포함되어 있다)
    1.  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")
    2. 위의 결과 한줄이 나타남
    3. INSTALL_DIR이나 HOME 경로가 힌트라고 판단
  5. INSTALL_DIR로 검색
    1. INSTALL_DIR="$INSTALL_DIR_PREFIX/text-generation-webui"
    2. INSTALL_DIR_PREFIX 아래에 text-generation-webui 라는 것을 인지
  6. INSTALL_DIR_PREFIX 로 검색
    1. INSTALL_DIR_PREFIX="$HOME/text-gen-install"
    2. HOME 에 text-gen-install 이라네?
  7. 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 파일의 위치가 다르게 만들어지는 것을 잊지 말자.