시작하기 전에.

이 가이드는 AI 채팅을 이미 경험해봤으며

앞서 https://arca.live/b/characterai/98211262 에서 가이드를 모두(1, 2, 3편) 읽고 기반지식이 어느정도 있다는 것을 전제하고 이 가이드를 진행합니다.

해당 가이드를 읽다가 무슨 소리인지 모르겠다면 위 링크에서 가이드를 숙독하고 다시 오시기 바랍니다.

필자는 위 가이드3편에서 아무리해봐도 에러때문에 잘 안돼서 맨땅에 헤딩하다가 방법을 찾았습니다.


웹리스에 관해서 필자는 잘 모릅니다.


이는 가이드는 Pytorch가 아닌 런팟에서 자체적으로 지원하는 Runpod TheBloke LLMs라는 템플릿을 사용합니다.

해당 템플릿의 놀라운 점은 기존 가이드에서는 Pytorch에서 수동으로 우바부가를 설치해야했지만

TheBloke 템플릿은 이미 우바부가가 깔려져있습니다!!!

따라서 우바부가 깔다가 에러가 발생해서 멈추는 경우도 없습니다.


그러나 이전에 있었던 가이드도 그렇고 이번가이드도 마찬가지로 우바부가 혹은 다른 소프트웨어가 업데이트됨에 따라서 여러가지 면에서 삐걱거릴 수 있습니다. 이 가이드는 2024.03.13일을 기준으로 작성되었으며, 워낙 변화가 빠른 AI채팅이기 때문에

기준일로부터 1주일만 지나도 작동을 확신할 수 없습니다.



1. 런팟에 가입하고 크래딧을 어느정도 충전했다고 가정합니다. (추천은 10달러 정도 입니다.)

오른쪽 MANAGE 항목에서 Pods를 클릭한 다음 해당화면에서 왼쪽 위의 GPU pods를 클릭합니다.



2. 해당 화면에서 왼쪽 위 Choose Templates를 클릭합니다.




3. 맘에드는 그래픽카드를 고르고 Deploy합니다.

필자는 커뮤니티 클라우드에서 3090 2개를 빌렸습니다.



4. 3에서 커넥트를 눌러주면 해당 화면이 표시됩니다. 별다른 세팅을 하지않았음에도 5000포트와 7860포트가 이미 열려있습니다!!!

바로 [Port 7860] 라고 적혀있는 버튼을 클릭합니다.


5. 우바부가가 곧바로 실행됩니다. 왼쪽위의 Model탭을 눌러주세요.



6. 이제 이 화면에서 모델을 받습니다. 다운받는 법은 기존 가이드를 참조해주세요. 그 다음 순서에 받게 누르고 모델을 로드하려고 하면!!!!



7. 그냥은 오류를 뱉어내면서 안됩니다. 해당오류는 아마 뭐가 업데이트되면서 안되는거 같은데 다음 방법으로 고칠 수 있습니다.

(혹은 업데이트하면서 이 에러가 사라질 수도 있습니다. 여기서 에러가 안나고 잘 로드된다면 15.로 가면 됩니다.)



8. 런팟 홈페이지에서 다시 이 화면으로 돌아와서 Start Web Terminal을 누르고 Connet Web Terminal을 누룹니다.




9. 그럼 이런 화면으로 이동됩니다. 절대 함부로 이 화면을 닫지 마세요!! 이 화면은 함부로 닫으면 다시 못들어올 수도 있습니다.(접속 거부될 수 있음)


이제 해당화면에서 다음과 같은 명령어를 입력합니다.
pip install --upgrade exllamav2


아쉽게도 웹터미널은 컨트롤cv를 지원하지 않는 것 같습니다. 그냥 손으로 치세요.


10. 이제 이런 화면이 표시되었다면 잘된 것입니다. 이제 추가로 명령어를 몇줄 더 쳐줘야합니다.

당신이 쳐야할 명령어는 다음과 같습니다.

ps fux



12. 명령어가 정상적으로 입력되었다면 위 사진과 비슷한 장면을 볼 수 있습니다.

우리가 여기서 알아내야하는 것은 python3 server.py --listen --extensions openai의 PID코드 입니다.

사진에 강조된 부분을 보면 알 수 있듯, python3 server.py --listen --extensions openai의 PID 코드는 69입니다.

우리는 저 python3어쩌구 라고 적혀있는 것을 한번 죽여야합니다.

따라서 제 경우에 제가 추가로 입력해야하는 코드는

kill 69

입니다. 여러분은 여러분의 python3 어쩌구의 PID코드(숫자)를 kill 입력하면 됩니다. (kill PIDcode)

정상적으로 kill하고 다시 ps fux를 입력해보면



13. python3 어쩌구의 Time이 정상적으로 초기화 되어있는 것을 볼 수있습니다. 이제 다시 우바부가로 돌아갑니다.



14. 우바부가 인터페이스에서 다시 로딩을 해보면 잘 로딩됩니다. 만약 당신이 저처럼 3090을 2개 쓴다면

gpu-split에서 24,24를 입력하고 autosplit도 꼭 체크해줍니다.




15. 이제 런팟의 다시 이화면으로 돌아와서 Connect to HTTP Service [Port 5000]의 버튼을 오른쪽 클릭하고 링크를 복사해줍니다.


16. RisuAI의 채팅봇 탭에서 복사한 URL을 입력해줍니다.

사진은 저렇게 찍었지만 보조 모델에서 3.5 Turbo Instruct를 사용해도 상관없는 것 같습니다.

그리고 이제 채팅을 시작해보면 잘될겁니다.



이 가이드는 맨위의 가이드 및 이하의 글과 유튜브를 참조했습니다.

https://www.youtube.com/watch?v=yvwnPuLvNEs


https://github.com/TheBlokeAI/dockerLLM/issues/17 (For anyone looking for a temporary fix~~)
https://github.com/TheBlokeAI/dockerLLM/blob/main/README_Runpod_LocalLLMsUIandAPI.md

당신이 영어를 잘한다면 이것들을 참조하는게 더 나을 수 있습니다.


이제 즐겁게 로컬 AI 채팅을 하면 됩니다.