Claude Opus 5.5 è disponibile su SeedRouter
SeedRouter Docs

Kimi K3

Chiama Kimi K3 con l'API ufficiale Chat Completions, Responses o Anthropic Messages: finestra di contesto di 1M token, ragionamento sempre attivo e il livello di ragionamento che preferisci.

View Markdown

Kimi K3 è il modello di punta di Moonshot AI per il coding di lungo periodo, gli agenti e il lavoro della conoscenza. Ragiona sempre prima di rispondere, e con reasoning_effort scegli quanto a fondo. Invia la richiesta ufficiale Kimi a SeedRouter: cambia l'URL di base e la chiave API, mantieni il corpo.

ID modello

ID modelloFinestra di contestoOutput massimoLivello di ragionamentoLivello di ragionamento predefinito
kimi-k31,048,576 token1,048,576 token (predefinito 131,072)low, high, maxmax

Input: testo e immagini. Output: testo. Consulta la pagina del modello per i prezzi attuali.

Esempio rapido

curl https://api.seedrouter.ai/v1/chat/completions \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kimi-k3",
    "messages": [{"role": "user", "content": "Explain context caching in one sentence."}]
  }'

Endpoint

FormatoMetodo e percorsoAutenticazione
Chat CompletionsPOST https://api.seedrouter.ai/v1/chat/completionsAuthorization: Bearer <key>
ResponsesPOST https://api.seedrouter.ai/v1/responsesAuthorization: Bearer <key>
Anthropic MessagesPOST https://api.seedrouter.ai/v1/messagesx-api-key: <key> oppure Authorization: Bearer <key>, più anthropic-version

Tutti e tre restituiscono il formato di risposta ufficiale di Kimi, con o senza streaming. Mantieni la chiave API nel codice lato server.

Parametri

Campi di Chat Completions:

NomeTipoObbligatorioPredefinitoNote
modelstringSì—kimi-k3.
messagesobject[]Sì—Messaggi di testo; immagini come parti image_url (vedi Input di immagini).
max_completion_tokensintegerNo131072Fino a 1048576. Include i token di ragionamento. max_tokens è il nome deprecato dello stesso limite.
reasoning_effortenumNomaxlow, high o max. Qualsiasi altro valore restituisce 400.
stopstring or string[]No—Fino a 5 sequenze.
response_formatobjectNo{"type": "text"}text, json_object o json_schema (con json_schema.name e json_schema.schema).
toolsobject[]No—Strumenti di tipo funzione.
tool_choicestring or objectNoautoauto e none vengono applicati. required e una funzione con nome sono accettati, ma non forzano una chiamata.
streambooleanNofalseTrasmette server-sent events.
stream_options.include_usagebooleanNofalseAggiunge il chunk finale con l'utilizzo.
prompt_cache_optionsobjectNo{"mode": "implicit", "ttl": "5m"}mode: implicit. ttl: 5m o 1h.
prompt_cache_key, safety_identifier, prediction—No—Accettati.
logprobs, top_logprobs—No—Accettati (top_logprobs da 0 a 20), ma non vengono restituite probabilità logaritmiche.
temperature, top_p, n, presence_penalty, frequency_penalty—No1.0, 0.95, 1, 0, 0Fissi. Qualsiasi altro valore restituisce 400, quindi non inviarli.

Ragionamento e livello di ragionamento

Kimi K3 ragiona sempre; non c'è modo di disattivare il ragionamento. reasoning_effort stabilisce quanto: max (il predefinito) per il lavoro più difficile, high per la maggior parte dei compiti, low per passaggi rapidi e semplici. Il ragionamento viene restituito in reasoning_content, accanto a content. I token di ragionamento vengono fatturati come token di output e rientrano in max_completion_tokens.

Nelle conversazioni a più turni e nelle chiamate agli strumenti, rimanda ogni messaggio dell'assistente senza modificarlo, compreso il suo reasoning_content.

Input di immagini

Kimi K3 accetta le immagini come data URI base64. Un URL pubblico di un'immagine non è accettato e restituisce 400, come sull'API di Kimi.

{"role": "user", "content": [
  {"type": "image_url", "image_url": {"url": "data:image/png;base64,<BASE64_DATA>"}},
  {"type": "text", "text": "Describe this image."}
]}

Caching del contesto

Il caching è automatico: un prefisso di prompt ripetuto viene letto dalla cache alla tariffa più bassa per l'input in cache. prompt_cache_options.ttl sceglie per quanto tempo un prefisso scritto resta in cache, 5m (il predefinito) o 1h; scegli 1h quando tra le tue richieste passano più di cinque minuti. usage.prompt_tokens_details.cached_tokens riporta i token letti dalla cache e cache_write_tokens le scritture in cache fatturate per la richiesta.

Dimensioni di fatturazione

Vedi i prezzi attuali nella pagina del modello. Una richiesta viene fatturata in base ai token che utilizza:

  • token di input,
  • token di input in cache (cached_tokens),
  • token di scrittura in cache (cache_write_tokens),
  • token di output, incluso il ragionamento.

I prezzi non cambiano con la lunghezza del contesto. L'addebito si basa sull'usage riportato con la risposta completata. Una richiesta fallita non viene addebitata. I registri di utilizzo del tuo account mostrano l'addebito esatto di ogni richiesta.

Output

Una richiesta Chat Completions senza streaming restituisce:

{
  "id": "chatcmpl-...",
  "object": "chat.completion",
  "created": 1790585961,
  "model": "kimi-k3",
  "choices": [{
    "index": 0,
    "finish_reason": "stop",
    "message": {"role": "assistant", "reasoning_content": "...", "content": "..."}
  }],
  "usage": {
    "prompt_tokens": 90,
    "completion_tokens": 57,
    "total_tokens": 147,
    "cached_tokens": 90,
    "prompt_tokens_details": {"cached_tokens": 90, "cache_write_tokens": 0}
  }
}

Con "stream": true ogni chunk contiene un delta con reasoning_content o content. Con stream_options.include_usage, un ultimo chunk con un array choices vuoto riporta l'utilizzo prima di data: [DONE].

Responses API e Codex

POST /v1/responses accetta il corpo Responses: input, instructions, max_output_tokens, reasoning.effort (low, high, max), text.format (json_schema), tools (function e lo strumento personalizzato apply_patch), tool_choice, stream, prompt_cache_options, prompt_cache_key e safety_identifier. Il ragionamento viene restituito come elemento reasoning con una parte summary_text, e uno stream trasporta eventi numerati da response.created a response.completed. L'API è stateless: previous_response_id e conversation vengono ignorati, quindi invia l'intera conversazione in input. Lo strumento web_search viene ignorato.

Per usare Kimi K3 in Codex, aggiungi un provider a ~/.codex/config.toml e imposta SEEDROUTER_API_KEY:

model = "kimi-k3"
model_provider = "seedrouter"
model_context_window = 1048576

[model_providers.seedrouter]
name = "SeedRouter"
base_url = "https://api.seedrouter.ai/v1"
env_key = "SEEDROUTER_API_KEY"
wire_api = "responses"

Formato Anthropic Messages

Anche il codice scritto per l'API Anthropic Messages può chiamare Kimi K3: invia il corpo Messages a /v1/messages con "model": "kimi-k3". system, max_tokens, tools, tool_choice (auto, none) e output_config.effort (low, high, max) vengono applicati, e metadata.user_id e cache_control sono accettati. stop_sequences (fino a 5), tool_choice any e output_config.format sono accettati ma non hanno effetto. Il ragionamento viene restituito come blocchi thinking. Le immagini vengono passate come sorgenti base64.

Errori

Gli errori usano {"error": {"code": ..., "message": "..."}} (l'endpoint Messages usa il formato di errore di Anthropic). Il code è un codice dal catalogo errori comune. Le richieste fallite non vengono addebitate.

Suggerimenti

  • Parti dal livello di ragionamento high e passa a max solo per i problemi più difficili; low è adatto a passaggi rapidi e semplici.
  • Imposta max_completion_tokens abbastanza alto sia per il ragionamento sia per la risposta: è un unico budget per entrambi.
  • Metti il contesto lungo e riutilizzato all'inizio del prompt, così le richieste successive lo leggono dalla cache, e usa il TTL 1h quando le richieste sono distanziate.

Correlati