허깅페이스 gguf 파일 Modelfile 생성




Modelfile 제작방법


1. 최초에 모델파일을 모르기 때문에 처음에는 Hugging Face GGUF나 기본 모델은 먼저 올리마에
실행후 모델파일 추출

ollama run hf.co/{user}/{repo}:Q4_K_M

2. 기본 설정 추출
ollama show <모델명> --modelfile

명령으로 “Base Modelfile”을 뽑습니다.
→ 여기엔 FROM, PARAMETER, TEMPLATE, SYSTEM 같은 값이 다 포함돼 있어요.

3. 커스텀  Modelfile 제작
-  기본 설정을 텍스트로 추출
ollama show hf.co/{user}/{repo}:Q4_K_M --modelfile > Base.Modelfile
ollama show hf.co/{user}/{repo}:Q4_K_M --parameters   # 참고용
ollama show hf.co/{user}/{repo}:Q4_K_M --template     # 참고용

필요한 부분만 수정해서 내 Modelfile 제작

뽑아온 Base Modelfile을 복사/수정해서

  • num_ctx (컨텍스트 길이)

  • temperature, top_p, top_k

  • stop 토큰

  • system 메시지

같은 부분을 원하는 대로 바꾸면 됩니다.

# (PARAMETER num_ctx, temperature, stop 토큰 등)

vi Modelfile

4) 커스텀 모델 빌드 & 실행
ollama create mymodel -f ./Modelfile
ollama run mymodel


Modelfile 잘못 설정시 무한반복, 동일문장 재생산 오류 대처법


왜 문제가 생기나?
stop 토큰 설정 누락/오류
PARAMETER stop [...] 를 잘못 지정하면 모델이 멈출 지점을 못 찾아 무한 반복합니다.

template 문제
TEMPLATE에서 role/user/assistant 구분이 잘못되면 모델이 자기 답변을 다시 프롬프트로 인식합니다.
system 메시지 중복/잘못된 문법
Go 템플릿 문법 오류나 잘못된 system 지시문이 있으면 대화 흐름이 꼬입니다.
파라미터 값 과도/부적절
예: repeat_penalty가 1.0 이하 → 반복 심화
temperature나 top_p가 극단적 값 → 엉뚱한 반복/난수 같은 출력

안전하게 만드는 방법
1. 항상 기본 Modelfile 먼저 추출
ollama show <모델명> --modelfile > Base.Modelfile

→ 여기서 stop 토큰, template, system을 확인하세요.

2. 작게 수정 → 테스트 → 반복
한 번에 많은 걸 바꾸지 말고, temperature → num_ctx → stop 이런 식으로 순차적으로 수정/테스트하세요.

3. 반복 방지 기본 세팅 예시

PARAMETER temperature 0.7
PARAMETER top_p 0.9
PARAMETER top_k 40
PARAMETER repeat_penalty 1.1
PARAMETER repeat_last_n 64
PARAMETER stop "<|end_of_text|>"
PARAMETER stop "<|eot_id|>"

repeat_penalty는 1.05~1.2 정도가 무난합니다.
repeat_last_n은 32~128 정도로 두면 반복 줄이는 데 도움 됩니다.

문제 생기면 Base.Modelfile로 롤백 → 커스텀 파일 다시 시도
HF 모델마다 stop 토큰이 다를 수 있으므로 반드시 원본에 있던 걸 참고해야 합니다.
테스트할 때는 ollama run mymodel -p "안녕" 같이 짧게 입력해서 확인하세요.

댓글

이 블로그의 인기 게시물

아파치 보안관련 기본설정

티베로 이관 작업 절차

윈도우 네트워크 리소스 사용권한 오류