본문으로 건너뛰기

Kimi K3는 Moonshot AI의 롱컨텍스트 에이전트 모델로, OpenAI 호환 chat 호출로 씁니다. 1,000,000토큰을 읽고 최대 1,048,576토큰을 반환하며 추론 강도 low·high·max, 도구 128개, 이미지 입력을 지원합니다.

입력 $2.70출력 $13.50100만 토큰당캐시된 입력 $0.30

플레이그라운드

요청 보내기

빠른 시작

예시는 선택한 엔드포인트의 공개 파라미터 정의를 사용합니다. API 키와 예시 미디어를 바꾼 뒤 서버에서 요청하세요.

SDK 및 연동
POSThttps://api.spicyapi.ai/v1/chat/completions

API 인증

API 키는 서버 환경 변수 SPICY_API_KEY에 보관하세요. Bearer 인증을 사용하고 JSON 요청에는 Content-Type: application/json을 지정하세요.

Authorization: Bearer $SPICY_API_KEY
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
  -H "Authorization: Bearer $SPICY_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "model": "moonshot/kimi-k3/chat",
  "messages": [
    {
      "role": "user",
      "content": "Summarise the following release notes into three bullet points."
    }
  ],
  "stream": true
}' \
  | jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'

이 모델의 입력 스키마에서 뽑아낸 예시입니다. API도 모든 요청을 같은 스키마로 검증합니다.

논리적으로 같은 요청 하나에는 같은 Idempotency-Key를 계속 쓰세요. 네트워크가 끊겼다고 새 키로 자동 재전송하지 말고, 접수된 요청을 나중에 확인할 수 있도록 request_id를 남겨 두세요. 앞서 받던 채팅 스트림이 다시 흘러나오지는 않습니다.

입력 파라미터

모델 파라미터는 JSON 요청 본문에서 model과 같은 수준에 넣습니다. 이 엔드포인트는 input으로 감싸지 않습니다.

messagesarray<object>필수

순서대로 놓인 턴 최대 256개입니다. 내용은 일반 문자열이거나 text와 image_url(detail은 auto, low, high 중 선택) 파트의 배열입니다. 도구 결과는 tool_call_id를 담은 tool 역할 메시지에 넣습니다.

기본값
지정되지 않음
제약 조건
minItems:1
maxItems:256
response_formatobject선택

출력이 산문이 아니라 구조화된 데이터라면 JSON 객체를 요청하세요.

기본값
지정되지 않음
tool_choicestring | object선택

auto면 모델이 호출을 건너뛸 수 있고, required면 강제하고, none이면 전부 막습니다.

기본값
지정되지 않음
toolsarray<object>선택

함수 정의 최대 128개입니다. 루프의 첫 요청에서 선언하세요.

기본값
지정되지 않음
제약 조건
maxItems:128
stopstring | array선택

각각 32바이트 이하인 정지 시퀀스를 최대 4개까지 문자열 또는 배열로 지정합니다. 모델이 그중 하나를 쓰는 즉시 응답이 끝나며, 일치한 텍스트 자체는 반환되지 않습니다. 기본값은 없습니다. 단가는 달라지지 않으며, 일찍 끝난 응답은 실제로 생성된 토큰만큼만 과금됩니다.

기본값
지정되지 않음
제약 조건
minLength:1
minItems:1
maxItems:4
reasoning_effortstring선택

low, high, max 중 하나이고 기본값은 max입니다. Moonshot이 K3에 대해 밝힌 단계와 기본값 그대로라, 필드를 뺀 요청도 가장 신중한 설정으로 돌아갑니다. 짧고 기계적인 턴에서는 high나 low로 낮추세요. 그런 턴에서 max는 대부분 출력 토큰만 늘립니다.

기본값
"max"
허용 값
"low""high""max"
max_tokensinteger선택

응답을 1,048,576에서 자릅니다. 기본값 32,768로도 파일 전체를 다시 쓰는 답은 조용히 잘릴 수 있으니 결과물 크기에 맞추세요. 추론 토큰도 출력으로 과금되므로, 기대하는 보이는 응답보다 여유를 두세요.

기본값
32768
제약 조건
minimum:1
maximum:1048576

결과 읽기

stream이 false이면 완성된 채팅 응답이 바로 반환됩니다. choices[].message를 읽으면 되며 작업을 폴링할 필요가 없습니다. Server-Sent Events를 지원하는 클라이언트에서는 stream을 true로 설정할 수 있습니다.

완료 응답 예시
{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "created": 1788652800,
  "model": "moonshot/kimi-k3/chat",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Here is a concise summary of the release notes."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 32,
    "completion_tokens": 14,
    "total_tokens": 46
  }
}

응답은 구조를 보여 주는 예시입니다. usage는 토큰 수이며 실제 사용량과 요금은 요청에 따라 달라집니다.

SDK 및 연동

앱, 터미널, AI 어시스턴트 또는 시각적 워크플로에서 SpicyAPI를 사용하세요. 원하는 설정 가이드를 선택하세요.

SillyTavern과 롤플레이 앱에서 사용하기

SillyTavern, RisuAI, Agnai 등 OpenAI 호환 설정이 있는 앱에 아래 기본 URL과 API 키를 붙여 넣고 모델로 moonshot/kimi-k3/chat을(를) 선택합니다. 브라우저에서 바로 호출할 수 있으며, 이 모델이 받지 않는 슬라이더 값은 오류 없이 무시됩니다.

Base URL: https://api.spicyapi.ai/v1
Model: moonshot/kimi-k3/chat

ComfyUI에서 쓰기

ComfyUI Manager나 아래 명령으로 SpicyAPI 노드를 설치한 뒤 SpicyAPI Chat 노드에서 moonshot/kimi-k3/chat을(를) 고르면 ComfyUI 그래프 안에서 이 모델을 쓸 수 있습니다.

cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi