max_context_tokens: 서버의 한계치보다 약 1,000~2,000 토큰 정도 낮게 설정
autodetect_capabilities: 클라이언트가 서버의 기능을 자동으로 탐지하는 옵션입니다. 로컬 서버의 경우 가끔 툴 콜(Tool Call)이나 모델 스펙을 잘못 오인하여 맞지 않는 API 규격을 찔러넣을 수 있으므로, 기능을 끄고 명시적으로 수동 제어하는 것이 안정적입니다.
"■ {"error":{"code":400,"message":"request (24592 tokens) exceeds the available context size (24576 tokens), try increasing it","type":"exceed_context_size_error","n_prompt_tokens":24592,"n_ctx":24576}}" 에러가 나면 /clear 를 해야 하는지 아니면 서버를 재시작 해야 한느지
결과 백업하기
Codex(또는 Cline 등) 채팅창에서 /clear를 입력하면 이전 대화 기억이 완전히 포맷(초기화)되기 때문에, 말 그대로 ‘기존 대화 흐름을 완벽히 이어서’ 진행하는 것은 불가능합니다.
하지만 에이전트가 이전에 어디까지 작업했는지 컨텍스트(문맥)의 핵심 요약본만 찔러 넣어주면 바로 다음 단계부터 자연스럽게 이어서 작업하게 만들 수 있습니다.
1단계: 에이전트에게 상황 요약 요청하기 (최후의 유언)
에러가 나서 멈춘 바로 그 상태에서(아직 /clear를 치기 전), 채팅창에 아래와 같이 입력하여 에이전트 스스로 현재까지의 진행 상황을 요약하게 만듭니다. (토큰이 넘쳐도 짧은 단답형 요청은 서버가 처리해 줄 가능성이 높습니다.)
“우리가 지금까지 바꾼 파일 목록, 수정한 핵심 내용, 그리고 바로 다음에 진행해야 했던 ‘남은 작업 단계’를 리스트로 간결하게 요약해 줘.”
2단계: 요약본 복사 및 세션 초기화
에이전트가 출력해 준 요약본(진행 상황 + 남은 작업)을 마우스로 드래그하여 복사(Ctrl + C)해 둡니다.
이제 안심하고 채팅창에 /clear를 입력하여 무거워진 토큰 메모리를 완전히 비워줍니다. (컨텍스트가 0으로 리셋됩니다.)
3단계: 복사한 요약본을 주입하며 이어서 진행
초기화된 새 대화창에 복사해 둔 요약본과 함께 컨텍스트를 주입하는 프롬프트를 던집니다.
“방금 세션을 리셋했어. 이전 세션의 작업 문맥을 이어받아줘. [이전 세션 요약]
수정한 파일:src/models/trading.py
수정 내용: GARCH 모델 인디케이터 연산 로직 추가 완료
남은 작업: 변경된 로직을 기반으로 KRX API 연동 테스트 코드 작성하기
위 내용 이어서 다음 남은 작업을 바로 진행해 줘.”
💡 현실적인 추가 팁
만약 1단계에서조차 토큰이 완전히 꽉 막혀 에이전트가 대답을 아예 안 뱉는다면, 요약 요청을 건너뛰고 질문자님이 눈으로 보시던 마지막 작업 상태(예: “어떤 파일 가중치 수정하다가 멈춤”)를 기억하셨다가 3단계 형식처럼 직접 적어서 주입하시면 됩니다.
로컬 LLM을 활용한 에이전트 코딩 시에는 이처럼 “대화가 길어지면 요약본을 챙겨서 /clear 후 재주입한다”는 매커니즘을 기억해 두시면 흐름을 잃지 않고 쾌적하게 작업을 이어가실 수 있습니다.
Turn it on: type /caveman or say “talk like caveman”. Turn it off: say “normal mode”. On Claude Code, Codex, and Gemini it’s already on from message one. No command needed.
Available Commands: serve Start Ollama create Create a model show Show information for a model run Run a model stop Stop a running model pull Pull a model from a registry push Push a model to a registry signin Sign in to ollama.com signout Sign out from ollama.com list List models ps List running models cp Copy a model rm Remove a model launch Launch the Ollama menu or an integration help Help about any command
Flags: -h, --help help for ollama --nowordwrap Don't wrap words to the next line automatically --verbose Show timings for response -v, --version Show version information
Use "ollama [command] --help" for more information about a command.
설정 후 source ~/.bashrc와 sudo systemctl restart ollama를 잊지 마세요.
[ls 명령]
모델 목록 조회
1 2 3 4 5 6
$ ollama ls NAME ID SIZE MODIFIED gemma4:e2b 7fbdbf8f5e45 7.2 GB 3 days ago gemma4-e4b-32k:latest 6d2a1a196ef9 9.6 GB 4 weeks ago gemma4:e4b c6eb396dbd59 9.6 GB 4 weeks ago qwen2.5-coder:latest dae161e27b0e 4.7 GB 4 weeks ag
gemma4-e4b: 다운로드한 원래 모델
gemma4-e4b-32k: 모델의 파라미터를 수정한 Modelfile 에서 생성한 새 모델
브라우저로 11434 포트에 접속해 보면 ‘Ollama is running’ 을 확인 가능하다.
[ps 명령]
ps 명령은 실행중인 ollama 프로세스를 확인할 수 있다.
1 2 3
$ ollama ps NAME ID SIZE PROCESSOR CONTEXT UNTIL gemma4:e2b 7fbdbf8f5e45 7.7 GB 75%/25% CPU/GPU 4096 4 minutes from now
ollama 는 설치시 리눅스 계열에서는 systemd 로 설치된다. systemd 상태를 확인할 수 있다.
1 2 3 4 5 6 7
$ systemctl status ollama ● ollama.service - Ollama Service Loaded: loaded (/etc/systemd/system/ollama.service; enabled; preset: enabled) Active: active (running) since Fri 2026-05-29 22:02:07 KST; 9h ago Main PID: 165 (ollama) Tasks: 25 (limit: 28826)
[로그 확인]
로그 확인은 journalctl 를 사용한다.
1 2 3 4
journalctl -u ollama -f 5월 29 07:42:11 goyangi2 ollama[165]: time=2026-05-29T07:42:11.649+09:00 level=INFO source=server.go:1398 msg="waiting for server to become available" status="llm server loading model" 5월 29 07:42:19 goyangi2 ollama[165]: time=2026-05-29T07:42:19.188+09:00 level=INFO source=server.go:1402 msg="llama runner started in 69.72 seconds" 5월 29 07:42:19 goyangi2 ollama[165]: [GIN] 2026/05/29 - 07:42:19 | 200 | 1m10s | 127.0.0.1 | POST "/api/generate"
줄수 만큼 로그 기록 확인
1
journalctl -u ollama -n 100
[OpenAI API 호환 엔드포인트]
Ollama는 별도의 설정 없이도 OpenAI와 호환되는 API 엔드포인트를 기본적으로 제공합니다.
$ sudo systemctl show ollama --property=Environment
Modelfile 로 성능 조정
ollama 는 Modelfile 을 이용해 기존 모델의 파라미터를 조정해 새로운 모델로 서빙할 수 있다.
모델파일
Modelfile 은 텍스트 파일로 특정 모델의 파라미터, 프롬프를 조정해 새로운 모델로 생성할 수 있다.
모델은 FROM 구문에 지정한다. 1) ollma 에 등록된 모델을 사용하거나, 2) gguf 경로, 3) hf.co 의 URI 를 사용하면 된다.
1 2 3 4 5 6 7
$ ollama ls NAME ID SIZE MODIFIED qwen3-14b-han:latest bb1dc5fee044 9.0 GB 10 hours ago hf.co/unsloth/Qwen3-14B-GGUF:Q4_K_M 1c75fc1b9127 9.0 GB 10 hours ago gemma4-e4b-32k:latest 2bb4cc1b3660 9.6 GB 3 days ago my-default:latest 2bb4cc1b3660 9.6 GB 3 days ago gemma4:e4b c6eb396dbd59 9.6 GB 3 days ago
모델파일 작성
Modelfile 작성시 텍스트 파일에 FROM 구문으로 모델을 지정하고 팔라미터를 설정하면 된다.
다음은 ollama 모델에 할당한 num_ctx 토큰량 컨텍스트 크기를 직접 지정하는 예이다.
1 2
FROM qwen2.5-coder:7b # 모델 이름(ollama 다운로드) 혹은 모델의 위치 PARAMETER num_ctx 32768 # 컨텍스트 크기를 32768(32k)로 설정
[모델 생성]
새 파라미터로 모델을 생성
1
ollama create qwen-7b-32k -f Modelfile
새 모델 런치
1
ollama run qwen-7b-32k
모델 파일 파라미터
GPU 가속 최적화 (GPU Layers 설정)
Ollama는 기본적으로 GPU에 모델 레이어를 분배하지만, 때때로 VRAM 여유가 있음에도 일부를 CPU(RAM)에 남겨두는 경우가 있습니다. 모든 연산을 GPU에서 처리하도록 강제하면 속도가 비약적으로 향상됩니다.
gpu layers 는 모델 메타 정보에서 확인이 가능하다
1 2 3
FROM qwen2.5-coder:7b # -1은 가능한 모든 레이어를 GPU에 올리라는 뜻입니다. PARAMETER num_gpu -1
Context Window
ollma 모델은 **Context Window(문맥 창)**가 4096 으로 제한되는데 num_ctx 토큰량 컨텍스트 크기를 직접 지정한다.
1
PARAMETER num_ctx 32768 # 컨텍스트 크기를 32768(32k)로 설정
KV 캐시 양자화 (Flash Attention 및 메모리 절약)
32k와 같은 긴 컨텍스트를 사용할 때 가장 많은 메모리를 잡아먹는 것은 모델 자체보다 KV Cache(이전 대화를 기억하는 메모리)입니다. Ollama 최신 버전에서는 이를 압축하여 VRAM 부담을 줄일 수 있습니다.
템
1
PARAMETER temperature 1.0
무작위 토큰 선택을 제한하여 코드 일관성 유지
PARAMETER top_p 0.95 PARAMETER top_k 64
기존 모델의 파라미터 확인
다운 받은 모델의 세부 파라미터를 확인할 수 있다. 이 정보를 모델 파일로 리다이렉트해서 편집해 사용할 수 있다.
ollama show 로 모델의 파라미터를 확인하고 결과를 모델 파일로 리다이렉트하면 저장할 수 있다.
1
ollama show qwen3-14b-coding --modelfile > Modelfile