허깅페이스 Hub의 모든 GGUF 모델을 Ollama로 사용하기

허깅페이스 Hub의 모든 GGUF 모델을 Ollama로 사용하기

cover

Ollama는 llama.cpp 기반으로 LLM을 컴퓨터에서 직접 다루게 해주는 애플리케이션이에요. 커뮤니티가 만든 어떤 GGUF 양자화 모델이든 새 Modelfile 없이도 ollama run 한 줄로 실행할 수 있답니다.

출처: 문서

본문

cover

Hugging Face Hub의 프라이빗 GGUFs도 실행할 수 있어요.

Ollama는 llama.cpp 기반으로 LLM과 컴퓨터에서 직접 상호작용하게 해주는 애플리케이션이에요. 커뮤니티가 만든 어떤 GGUF 양자화(bartowski, MaziyarPanahi더 많은 분들)든 새 Modelfile을 만들지 않고 Ollama로 바로 사용할 수 있어요. 작성 시점에 Hub에는 45K개의 공개 GGUF 체크포인트가 있고, 그중 어떤 것이든 ollama run 한 줄로 실행할 수 있어요. 또한 양자화 유형 선택, 시스템 프롬프트 등 전반적인 경험을 개선하는 커스터마이제이션도 제공해요.

시작하는 건 정말 간단해요:

  1. Local Apps 설정에서 ollama를 활성화해요.
  2. 모델 페이지에서 Use this model 드롭다운에 ollama를 선택해요. 예: bartowski/Llama-3.2-1B-Instruct-GGUF.

스니펫은 다음과 같은 형식이에요:

ollama run hf.co/{username}/{repository}

도메인으로 hf.cohuggingface.co 둘 다 사용할 수 있다는 점에 유의해 주세요.

시도해 볼 만한 모델 몇 가지:

ollama run hf.co/bartowski/Llama-3.2-1B-Instruct-GGUF
ollama run hf.co/mlabonne/Meta-Llama-3.1-8B-Instruct-abliterated-GGUF
ollama run hf.co/arcee-ai/SuperNova-Medius-GGUF
ollama run hf.co/bartowski/Humanish-LLama3-8B-Instruct-GGUF

커스텀 양자화

기본적으로 모델 저장소에 존재할 때 Q4_K_M 양자화 방식을 사용해요. 없으면 저장소 안에 있는 합리적인 양자 유형 하나로 기본 설정돼요.

다른 방식을 선택하려면 간단히:

  1. 모델 페이지의 Files and versions 탭에서 특정 GGUF 파일의 GGUF 뷰어를 열어요.
  2. Use this model 드롭다운에서 ollama를 선택해요.

스니펫은 다음과 같은 형식이에요 (양자화 태그 추가):

ollama run hf.co/{username}/{repository}:{quantization}

예를 들어:

ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:IQ3_M
ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:Q8_0

# 양자화 이름은 대소문자를 구분하지 않아요, 이것도 동작해요
ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:iq3_m

# 전체 파일 이름을 태그로 직접 사용할 수도 있어요
ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:Llama-3.2-3B-Instruct-IQ3_M.gguf

커스텀 채팅 템플릿과 파라미터

기본적으로 흔히 사용되는 템플릿 목록에서 템플릿 하나가 자동 선택돼요. GGUF 파일에 내장된 tokenizer.chat_template 메타데이터를 기반으로 선택돼요.

GGUF 파일에 내장 템플릿이 없거나 채팅 템플릿을 커스터마이즈하고 싶다면, 저장소에 template이라는 새 파일을 만들 수 있어요. 템플릿은 Jinja 템플릿이 아니라 Go 템플릿이어야 해요. 예시:

{{ if .System }}<|system|>
{{ .System }}<|end|>
{{ end }}{{ if .Prompt }}<|user|>
{{ .Prompt }}<|end|>
{{ end }}<|assistant|>
{{ .Response }}<|end|>

Go 템플릿 형식에 대해 더 알고 싶다면 이 문서를 참고해 주세요.

시스템 프롬프트를 구성하려면 저장소에 system이라는 새 파일에 넣으면 돼요.

샘플링 파라미터를 바꾸려면 저장소에 params라는 파일을 만들어요. 파일은 JSON 형식이어야 해요. 사용 가능한 모든 파라미터 목록은 이 문서를 참고해 주세요.

Hugging Face Hub에서 프라이빗 GGUFs 실행하기

개인 계정이나 연결된 조직 계정의 프라이빗 GGUFs를 두 단계로 실행할 수 있어요:

  1. Ollama SSH 키를 복사해요: cat ~/.ollama/id_ed25519.pub | pbcopy
  2. 내 계정 설정에서 해당 키를 Hugging Face 계정에 추가하고 Add new SSH key를 클릭해요.
  3. 끝났어요! 이제 Hub의 프라이빗 GGUFs를 실행할 수 있어요: ollama run hf.co/{username}/{repository}.

참고 자료

더 알아보기 (Learn more)

  • 기본 양자화는 Q4_K_M이고, :{quantization} 태그로 다른 양자화를 고를 수 있어요.
  • 프라이빗 모델은 Ollama SSH 키를 Hugging Face 계정에 추가하면 실행할 수 있어요.