Models

작업에 맞는 모델을 고르고 전환하기

KittyPaw 는 setup 으로 정한 기본 모델을 쓰되, 추가 named model 을 등록해 채팅 중 /model <id> 로 전환할 수 있습니다. 비싼 모델은 판단이 필요한 작업에, 빠른 로컬 모델은 반복 확인에 쓰는 식으로 나누면 운영 비용과 지연을 줄일 수 있습니다.

기본 모델과 named model

kittypaw setup 으로 정한 모델은 기본 모델입니다. 추가 모델은 별도 ID 를 갖는 named model 로 저장됩니다. 채팅 중 모델을 바꿔 테스트하거나, 특정 provider 의 응답 품질을 비교할 때 named model 이 유용합니다.

1. setup 때 추가 모델 넣기

비대화형 setup 에서는 --extra-model 로 추가 모델을 함께 저장할 수 있습니다. API key 는 account secret 으로 저장되며, 모델 ID 는 main 을 예약어로 사용하지 않습니다.

kittypaw setup --account alice --no-chat \
  --extra-model id=openai-fast,provider=openai,model=gpt-5.5

2. 나중에 모델 추가하기

이미 setup 이 끝난 계정에는 kittypaw model add [id] 로 모델을 추가합니다. [id] 를 생략하면 provider 와 model 이름으로 안정적인 ID 를 만듭니다. 예를 들어 groqqwen/qwen3-32bgroq-qwen3-32b 로 저장됩니다. 명령은 연결 확인을 먼저 시도하고, 서버가 떠 있으면 reload 를 요청해 새 모델을 바로 반영합니다.

kittypaw model add \
  --provider groq \
  --model qwen/qwen3-32b

kittypaw model add local-fast \
  --provider lmstudio \
  --model qwen3-30b-a3b-instruct-2507

kittypaw model add \
  --provider gemini \
  --model gemini-3.1-pro-preview \
  --replace

3. 채팅 중 전환하기

등록된 모델은 채팅 안에서 /model <id> 로 전환합니다. 전환은 실험과 비교에 적합합니다. 중요한 자동화의 기본 모델을 바꾸기 전에는 같은 질문과 같은 스킬을 여러 모델에 반복 실행해 차이를 확인하세요.

kittypaw chat
> /model groq-qwen
> 이 RSS 요약을 한국어 5줄로 줄여줘

모델 목록과 삭제

kittypaw model list 는 현재 account 의 모델을 ID, Provider, Model, Default 열로 보여줍니다. 더 이상 쓰지 않는 named model 은 kittypaw model remove 로 제거합니다. main 은 setup 기본 모델 예약어라 삭제할 수 없고, 대화형 모드에서는 삭제 확인을 거칩니다.

kittypaw model list --account alice

kittypaw model remove gemini-gemini-3.1-pro-preview-2 \
  --account alice \
  --force

ID 충돌과 교체

자동 ID 가 이미 있으면 대화형 모드에서 ID already exists 를 보여주고, 기본 선택은 Add as new 입니다. 그대로 Enter 를 누르면 -2, -3 같은 suffix 가 붙은 새 모델로 저장됩니다. 기존 모델을 갱신하려면 충돌 프롬프트에서 replace 를 고르거나 비대화형 실행에 --replace 를 붙입니다.

Provider 와 endpoint 선택 기준

model addanthropic, openai, gemini, openrouter, groq, mistral, deepseek, cerebras, ollama, lmstudio, llamacpp 를 provider 로 받습니다. 알려진 cloud provider 는 기본 endpoint 를 사용하므로 --base-url 이 필요 없습니다. custom endpoint, OpenAI 호환 사설 endpoint, 기본 포트가 아닌 로컬 서버에만 --base-url 을 지정하세요. llamacpp 는 입력이 없으면 http://localhost:8080/v1/chat/completions 를 기본값으로 씁니다.

Claude / OpenAI / Gemini

기본 대화, 복잡한 reasoning, tool use 안정성을 우선할 때 적합합니다.

Groq / Cerebras / DeepSeek

OpenAI 호환 endpoint 로 빠른 응답이나 저비용 실험을 할 때 좋습니다. rate limit 과 모델별 tool-call 품질을 확인하세요.

OpenRouter / Mistral

여러 모델을 비교하거나 긴 context / 특정 모델 카탈로그가 필요할 때 유용합니다.

Ollama / LM Studio / llama.cpp

로컬 실행과 개인정보 보존이 중요할 때 적합합니다. 단, 작은 모델은 tool use 와 지시 준수가 약할 수 있습니다.

운영 패턴

API key 주의

--api-key 로 넘긴 값은 process list 에 보일 수 있습니다. 가능하면 환경 변수나 대화형 prompt 를 쓰세요. 기존 secret 이 있는 모델을 --replace 할 때는 Enter=keep existing 프롬프트가 나오므로 Enter 로 키를 유지하거나 새 키를 입력할 수 있습니다. 로컬 provider 는 API key 없이 저장되고, custom base URL 을 붙인 OpenAI 호환 모델은 provider 공용 secret 대신 모델 ID 단위 credential 로 분리됩니다.

검증 기준

모델을 추가한 뒤에는 일반 대화 1회, 스킬 수동 실행 1회, 필요한 경우 채널 발송 1회를 같은 입력으로 비교하세요. 로컬 모델은 특히 tool call 누락, JSON 인자 형식, 한국어 안정성을 확인해야 합니다.