Skip to content

Add Kimi K3 support across applicable providers #932

Description

@navedmerchant

Problem

Kimi K3 is not available as a correctly configured model in the Moonshot and OpenCode Go providers. Users need the model's long context, multimodal input, reasoning, and automatic prompt caching to work without provider-specific failures.

Context

This affects users selecting Kimi K3 directly through Moonshot or through the curated OpenCode Go catalog. Model parameters were researched from Moonshot's platform docs (https://platform.moonshot.ai/docs) and the OpenCode Go model table (https://opencode.ai/docs/go).

Desired behavior

Add Kimi K3 to the Moonshot and OpenCode Go model registries with its confirmed capabilities and pricing, and keep related preserve-reasoning detection in sync. Do not add speculative static entries for providers whose Kimi K3 IDs have not been confirmed.

Request checklist

  • Existing issues and discussions were searched for duplicates.
  • The request describes a specific model-support gap and its user impact.

Acceptance criteria

  • Direct Moonshot model ID kimi-k3 is available with a 1,048,576-token context, default maximum output of 131,072 tokens, image support, automatic prompt caching, and pricing of $3 input / $15 output / $0.30 cache read.
  • The curated OpenCode Go catalog includes kimi-k3 with the same confirmed capabilities and pricing, routed via the OpenAI-compatible wire format (not Anthropic /v1/messages).
  • Reasoning support is declared: always-on thinking with configurable reasoning_effort (low/high/max, default max) and preserveReasoning in both registries, with kimi-k3 added to LITELLM_PRESERVE_REASONING_MODEL_IDS.
  • Focused tests cover the model catalogs (opencode-go.test.ts, lite-llm.test.ts); the full pnpm test suite passes (6851 tests).
  • Fireworks, Baseten, Bedrock, and Vertex receive no guessed static entries until provider-specific IDs are confirmed.
  • Dynamic or user-supplied catalogs such as OpenRouter require no static model addition.

Resolution

Implemented in #996.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestmodelProvider model

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions