메인 콘텐츠로 건너뛰기

Ollama

Ollama는 머신에서 오픈소스 모델을 쉽게 실행할 수 있게 해 주는 로컬 LLM 런타임입니다. OpenClaw는 Ollama의 네이티브 API(/api/chat)와 통합되어 스트리밍과 tool calling을 지원하며, OLLAMA_API_KEY(또는 auth profile)를 사용하고 명시적인 models.providers.ollama 항목을 정의하지 않으면 tool-capable 모델을 자동 탐지할 수 있습니다.
원격 Ollama 사용자: OpenClaw와 함께 /v1 OpenAI 호환 URL(http://host:11434/v1)을 사용하지 마세요. 이렇게 하면 tool calling이 깨지고 모델이 원시 tool JSON을 일반 텍스트로 출력할 수 있습니다. 대신 네이티브 Ollama API URL을 사용하세요: baseUrl: "http://host:11434" (/v1 없음).

빠른 시작

  1. Ollama를 설치합니다: https://ollama.ai
  2. 모델을 가져옵니다.
  1. OpenClaw에서 Ollama를 활성화합니다(아무 값이나 가능, Ollama는 실제 키를 요구하지 않음).
  1. Ollama 모델을 사용합니다.

Model discovery (implicit 프로바이더)

OLLAMA_API_KEY(또는 auth profile)를 설정하고 models.providers.ollama정의하지 않으면, OpenClaw는 http://127.0.0.1:11434의 로컬 Ollama 인스턴스에서 모델을 탐지합니다.
  • /api/tags/api/show를 조회합니다.
  • tools capability를 보고하는 모델만 유지합니다.
  • 모델이 thinking을 보고하면 reasoning으로 표시합니다.
  • 가능하면 model_info["<arch>.context_length"]에서 contextWindow를 읽습니다.
  • maxTokens는 context window의 10배로 설정합니다.
  • 모든 비용은 0으로 설정합니다.
이 방식은 수동 모델 등록 없이도 카탈로그를 Ollama의 실제 capability와 맞춰 줍니다. 사용 가능한 모델을 확인하려면:
새 모델을 추가하려면 Ollama로 그냥 pull 하세요.
새 모델은 자동으로 탐지되어 바로 사용할 수 있습니다. models.providers.ollama를 명시적으로 설정하면 자동 탐지는 건너뛰며, 모델을 직접 정의해야 합니다 (아래 참고).

설정

Basic setup (implicit discovery)

Ollama를 활성화하는 가장 단순한 방법은 환경 변수를 쓰는 것입니다.

Explicit setup (manual models)

다음과 같은 경우에는 명시적 설정을 사용하세요.
  • Ollama가 다른 호스트/포트에서 실행될 때
  • 특정 context window나 모델 목록을 강제하고 싶을 때
  • tool support를 보고하지 않는 모델도 포함하고 싶을 때
OLLAMA_API_KEY가 설정되어 있다면 프로바이더 항목에서 apiKey를 생략해도 OpenClaw가 가용성 확인용으로 자동 채웁니다.

Custom base URL (explicit config)

Ollama가 다른 호스트나 포트에서 실행 중이라면(명시적 설정은 auto-discovery를 끄므로 모델을 수동 정의해야 함) 다음과 같이 설정하세요.
URL에 /v1을 붙이지 마세요. /v1 경로는 OpenAI 호환 모드를 사용하므로 tool calling이 안정적이지 않습니다. 경로 접미사 없는 기본 Ollama URL을 사용하세요.

Model selection

구성이 끝나면 모든 Ollama 모델을 사용할 수 있습니다.

Advanced

Reasoning models

OpenClaw는 /api/show에서 Ollama가 thinking을 보고하면 해당 모델을 reasoning-capable로 표시합니다.

Model Costs

Ollama는 무료이며 로컬에서 실행되므로 모든 모델 비용은 $0으로 설정됩니다.

Streaming Configuration

OpenClaw의 Ollama 통합은 기본적으로 네이티브 Ollama API(/api/chat)를 사용하며, 스트리밍과 tool calling을 동시에 완전히 지원합니다. 별도 설정은 필요 없습니다.

Legacy OpenAI-Compatible Mode

OpenAI 호환 모드에서는 tool calling이 안정적이지 않습니다. 프록시 때문에 OpenAI 포맷이 꼭 필요하고 네이티브 tool calling 동작에 의존하지 않을 때만 이 모드를 사용하세요.
OpenAI 호환 엔드포인트를 대신 사용해야 한다면(예: OpenAI 포맷만 지원하는 프록시 뒤에 있을 때) api: "openai-completions"를 명시적으로 설정하세요.
이 모드는 스트리밍과 tool calling을 동시에 지원하지 못할 수 있습니다. 모델 설정의 params: { streaming: false }로 스트리밍을 꺼야 할 수도 있습니다. Ollama에 api: "openai-completions"를 사용할 때 OpenClaw는 기본적으로 options.num_ctx를 주입해 Ollama가 조용히 4096 context window로 되돌아가지 않도록 합니다. 프록시/업스트림이 알 수 없는 options 필드를 거부한다면 이 동작을 끄세요.

Context windows

자동 탐지된 모델의 경우 OpenClaw는 가능하면 Ollama가 보고한 context window를 사용하고, 없으면 기본값 8192를 사용합니다. 명시적 프로바이더 설정에서는 contextWindowmaxTokens를 직접 재정의할 수 있습니다.

Troubleshooting

Ollama not detected

Ollama가 실행 중인지, OLLAMA_API_KEY(또는 auth profile)를 설정했는지, 그리고 명시적 models.providers.ollama 항목을 정의하지 않았는지 확인하세요.
API에 접근 가능한지도 확인하세요.

No models available

OpenClaw는 tool support를 보고하는 모델만 자동 탐지합니다. 모델이 목록에 없다면 다음 중 하나를 하세요.
  • tool-capable 모델을 pull 하거나
  • models.providers.ollama에 모델을 명시적으로 정의하세요.
모델을 추가하려면:

Connection refused

Ollama가 올바른 포트에서 실행 중인지 확인하세요.

See Also