최근 모델 qlora 기반 학습쪽에서 공부하다가 


문득 내가 만든 모델을 병합시킨 후 gguf 같은 압축 모델로 해서 갖고 놀고 싶다 라는 마인드로


관련 자료를 봤으나, llama.cpp 윈도우 버전에서 설치 이것저것하다가 실패 (대부분 자료가 낡음 or 우분투만 있음)


## 시도한 툴 : 


koboldcpp :   설치해서 구동했으나 제 목적이 그냥 단순하게 webui로 하는것은 목표라 아니라서 패스

- 우바부가랑 다른점은 우바부가는 학습 과정도 지원하는 거 같은데, 전 이런 툴보다 제 스스로 코드 짜서 하는게 더 편해서 패스 


우바부가 :  llama.cpp 해결 못하다가, 지금은 원클릭으로 해당 프로그램으로 설치 하는거 같습니다만,  모델 여러개 로드해서 테스트하려니 내부코드 쪽에서 자꾸 호환이 안되서 이거 한줄 한줄 고칠바에 파이썬으로 내 코드상 추론 테스트 하는게 속편해서 패스

(이 부분도 사실 원인을 모르겠습니다. 모델 로드할때만 exllamav2 문제나, struct 문제나 4bit문제나 등등, 찾아보면 업데이트 문제같은데...)

-   웹 구동이면 저위에 koboldcpp 으로 충분하고, 학습은 애초에 툴로 안하고 파이썬으로 코드 짜서 하기에... 

- 구동시 llama.cpp가 있는거같은데 제가 진정원하는건 구동이 아니라 변환이라서...


-> 결국 선결 조건으로 아래 목표와 같은게 우선순위 0순위라 이와 관련해서 질문드리고자합니다.



제 목표는 :

- 기존 학습한 결과를 병합해서 gguf 와 같은 양자 압축 모델로 만들기라서 왠지 헛고생하는게 아닌가 싶어서 질문 드립니다.


1) llama.cpp설치하다가 convert ~ 관련에서 제 기분탓이 아니면 여기에 병합하는 것(베이스모델 + qlora 어댑터)도 있고,

이걸로 ggml 만든 후, gguf , gptq 같은걸로 변환하는게 순번이며 이걸 지원하는거같은데 결국 llama.cpp를 제대로 설치해야하는지 애매해서 질문드립니다.


2) 위와 같이 우바부가/ koboldcpp 는 제가 원하느 기능이 없어서 현재로썬 llama.cpp가 단서인데 다른 방법이 있을가요? 


3) 혹시 13b qlora 학습 결과물을 병합하고, gguf 같이 양자화 하는게 된다고 가정하에 예상 vram은 어느정도일까요? 

제 경우에는, 예시로 7b로 들자면 

- llama 2 7b : 로드시 11~13 ram 소모 

- qlora 학습 : 총합 12 ~ 14 ram 소모 (데이터셋 크기가 2만 9천개라 그런거같습니다.)

추론시에는 병합하면 15 ? 정도 드는거같은데  13b 일시에는 25~를 살짝 초과해서 문득 이걸 더 줄일수 없나해서 현재 상황에 온것입니다. (원체 목표가 3090이나 4090 단일 gpu 기반으로 추론 돌리는 것이라 13b일시 좀 걸려서요. 7b는 약간 성능이 좀...)


 

나름 시행착오하면서 스터디 중인데 저 혼자하느중이라 제가 제대로 갈길 가는지 확신도 안가서 조언부탁드립니다...!