~/tools / 모델 파일과 채팅 템플릿 / Ollama Modelfile Checker
Ollama Modelfile Checker — ollama create가 읽는 방식으로 Modelfile 확인
Ollama Modelfile을 붙여 넣으면 실행하기 전에 ollama create가 받아들일지 확인할 수 있습니다. 이 도구는 Ollama와 같은 방식으로 파일을 읽고, 줄 번호가 붙은 Ollama 자신의 오류 메시지, 각 instruction이 최종적으로 무엇이 되는지, Ollama가 저장하는 타입의 parameter, 예시 메시지, 그리고 도중에 끝나는 값이나 Ollama가 쓰지 않을 수 있는 TEMPLATE 같은 주의할 점을 보여 줍니다. 내용은 브라우저 밖으로 나가지 않습니다.
파일 전체를 붙여 넣으세요. ollama show --modelfile <model>은 가지고 있는 모델의 Modelfile을 출력합니다.
ollama create가 이 Modelfile을 읽을 수 있습니다
이 도구가 확인할 수 있는 단계에는 오류가 없습니다. FROM과 파일이 존재하는지는 사용 중인 컴퓨터에서 ollama create만 확인합니다.
주의할 점
- FROM qwen2.5:7b은(는) 모델 이름입니다. 그 모델을 Ollama가 사용할 수 있어야 합니다.
instruction이 무엇이 되는지
- FROM
- qwen2.5:7b
- SYSTEM
- You are a concise assistant. Answer in one or two sentences.
- TEMPLATE
- 설정 안 됨: FROM 모델의 것을 사용
PARAMETER
| 이름 | Ollama에서의 타입 | 저장되는 값 |
|---|---|---|
| num_ctx | int | 8192 |
| stop | string[] | ["\u003c|im_end|\u003e"] |
| temperature | float32 | 0.7 |
새 모델의 parameter 레이어(JSON):
{"num_ctx":8192,"stop":["\u003c|im_end|\u003e"],"temperature":0.7}FROM 모델의 parameter 중 여기서 설정하지 않은 것도 그대로 유지됩니다.
MESSAGE(예시 대화)
- userIs Toronto in Canada?
- assistantyes
Ollama가 다시 써 주는 Modelfile
instruction마다 한 줄이며 주석은 없습니다. 형식은 Ollama 소스 코드의 Command.String입니다.
FROM qwen2.5:7b PARAMETER num_ctx 8192 PARAMETER temperature 0.7 PARAMETER stop <|im_end|> SYSTEM " You are a concise assistant. Answer in one or two sentences. " MESSAGE user Is Toronto in Canada? MESSAGE assistant yes
Ollama Modelfile Generator에서 양식으로 Modelfile 만들기 →
2026-11-09에 Ollama의 소스 코드(v0.40.15), 문서, Ollama 0.40.11의 ollama create와 대조해 확인했습니다: Ollama: Modelfile Reference · parser.go
모든 것이 브라우저 안에서 실행됩니다. 어디로도 전송되지 않습니다.
Modelfile은 단순해 보이지만 작은 실수 때문에 ollama create가 "unexpected EOF"나 "command must be one of ..." 같은 짧은 메시지와 함께 실패합니다. 이 도구는 Ollama의 소스 코드를 차례대로 따라갑니다. 먼저 Ollama의 파서와 같은 상태 기계로 파일을 읽습니다. 대소문자를 가리지 않는 instruction, " 또는 """로 시작하지 않으면 줄 끝에서 끝나는 값, PARAMETER 이름, MESSAGE 역할, 주석입니다. 다음으로 ollama create가 서버에 접속하기 전에 하는 일을 합니다. ADAPTER와 typical_p에서 멈추고, CAPABILITY와 REQUIRES를 확인하고, Ollama의 API와 같은 방식으로 각 PARAMETER를 타입으로 변환합니다(정수, 32비트 부동소수점, true 또는 false, 그리고 목록으로서의 stop). 마지막으로 서버와 마찬가지로 Go의 템플릿 규칙으로 TEMPLATE을 확인합니다. 새 모델이 저장하는 JSON으로서의 parameter, 예시 대화, Ollama가 다시 써 주는 Modelfile을 보여 줍니다. 이 도구는 Ollama 0.40.11에서 43개의 Modelfile로 확인했습니다. 어느 Modelfile이든 ollama create와 같은 오류가 나오거나, ollama create가 만든 모델과 같은 parameter, system 메시지, template, 메시지, 라이선스가 저장되었습니다.
이럴 때 사용
- ollama create가 실패하는 이유와 원인이 되는 줄 찾기
- num_ctx, temperature, stop 같은 parameter가 의도한 대로, Ollama가 저장하는 타입으로 읽히는지 확인하기
- 다른 사람이 쓴 Modelfile을 모델을 만들기 전에 검토하기
사용법
- 상자에 Modelfile을 붙여 넣거나 예시를 편집합니다.
- 결과를 읽습니다. ollama create의 오류와 설명이 나오거나, 각 instruction이 무엇이 되는지 나옵니다.
- 같은 설정이 두 번 있는 경우, tools가 없는 TEMPLATE 같은 주의할 점을 확인하고, 필요하면 Ollama가 다시 써 주는 형태의 Modelfile을 복사합니다.
FAQ
"unexpected EOF"는 무슨 뜻인가요?
Ollama가 무언가의 중간에서 파일의 끝에 도달했다는 뜻입니다. 대개 값이 " 또는 """로 시작하는데 줄 끝에서 같은 따옴표로 끝나지 않아서 Ollama가 끝까지 계속 읽는 경우입니다. PARAMETER 이름에 영문자, 숫자, _ 이외의 문자가 있을 때나 MESSAGE에 역할은 있고 텍스트가 없을 때도 발생합니다.
긴 SYSTEM 메시지 때문에 "command must be one of ..."가 나오는 이유는 무엇인가요?
값은 줄 끝에서 끝납니다. 메시지가 여러 줄인데 """(또는 ")로 감싸지 않으면 Ollama는 다음 줄을 새 instruction으로 읽습니다. 여러 줄 값은 """로 감싸세요.
parameter 이름은 대소문자를 구분하나요?
네. FROM이나 parameter 같은 instruction은 대소문자를 가리지 않지만, parameter 이름은 temperature처럼 정확히 써야 합니다. 우리 테스트에서 PARAMETER Temperature 0.5는 unknown parameter 'Temperature'로 실패했습니다.
FROM의 모델이 존재하는지도 확인하나요?
아니요. 사용 중인 컴퓨터의 모델이나 파일은 볼 수 없습니다. FROM이 모델 이름처럼 보이는지 경로처럼 보이는지는 알려 주지만, 존재하는지는 ollama create만 확인합니다.
ADAPTER가 실패하는 이유는 무엇인가요?
Ollama 0.40에서 ollama create는 ADAPTER 줄에서 "LoRA adapters are no longer supported"라며 멈춥니다. ADAPTER는 현재 Modelfile 문서에 없습니다.
내 Modelfile이 어딘가로 전송되나요?
아니요. 모든 것이 브라우저 안에서 실행됩니다.