model_list:
  # ── oO aliases (used by ml/serving; see oO/CLAUDE.md AI stack) ──────────
  - model_name: tip-generator
    litellm_params:
      model: ollama/qwen2.5:1.5b
      api_base: http://host.docker.internal:11434

  - model_name: embedder
    litellm_params:
      model: ollama/nomic-embed-text
      api_base: http://host.docker.internal:11434

  - model_name: judge
    litellm_params:
      model: anthropic/claude-haiku-4-5-20251001
      api_key: os.environ/ANTHROPIC_API_KEY

  # Kimi Code CLI agent (own container, own Moonshot/Kimi subscription via `kimi login`)
  - model_name: kimi-agent
    litellm_params:
      model: openai/kimi-agent
      api_base: http://kimi-agent:8000/v1
      api_key: dummy

  # ── raw model exposure ─────────────────────────────────────────────────
  - model_name: ollama/qwen3.5:4b
    litellm_params:
      model: ollama/qwen3.5:4b
      api_base: http://host.docker.internal:11436

  - model_name: ollama/qwen3:8b
    litellm_params:
      model: ollama/qwen3:8b
      api_base: http://host.docker.internal:11436

  - model_name: ollama/qwen2.5:1.5b
    litellm_params:
      model: ollama/qwen2.5:1.5b
      api_base: http://host.docker.internal:11436

  - model_name: ollama/qwen2.5:0.5b
    litellm_params:
      model: ollama/qwen2.5:0.5b
      api_base: http://host.docker.internal:11436

  - model_name: ollama/gemma3:4b
    litellm_params:
      model: ollama/gemma3:4b
      api_base: http://host.docker.internal:11436

  - model_name: ollama/gemma3:1b
    litellm_params:
      model: ollama/gemma3:1b
      api_base: http://host.docker.internal:11435

  - model_name: ollama/nomic-embed-text
    litellm_params:
      model: ollama/nomic-embed-text
      api_base: http://host.docker.internal:11435

  # OpenRouter free-tier models
  - model_name: meta-llama/llama-3.3-70b-instruct:free
    litellm_params:
      model: openrouter/meta-llama/llama-3.3-70b-instruct:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: meta-llama/llama-3.2-3b-instruct:free
    litellm_params:
      model: openrouter/meta-llama/llama-3.2-3b-instruct:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: deepseek/deepseek-r1:free
    litellm_params:
      model: openrouter/deepseek/deepseek-r1:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: qwen/qwen3-4b:free
    litellm_params:
      model: openrouter/qwen/qwen3-4b:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: qwen/qwen3-coder:free
    litellm_params:
      model: openrouter/qwen/qwen3-coder:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: google/gemma-3-27b-it:free
    litellm_params:
      model: openrouter/google/gemma-3-27b-it:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: google/gemma-3-12b-it:free
    litellm_params:
      model: openrouter/google/gemma-3-12b-it:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: mistralai/mistral-small-3.1-24b-instruct:free
    litellm_params:
      model: openrouter/mistralai/mistral-small-3.1-24b-instruct:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: nvidia/nemotron-3-super-120b-a12b:free
    litellm_params:
      model: openrouter/nvidia/nemotron-3-super-120b-a12b:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: openai/gpt-oss-120b:free
    litellm_params:
      model: openrouter/openai/gpt-oss-120b:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: minimax/minimax-m2.5:free
    litellm_params:
      model: openrouter/minimax/minimax-m2.5:free
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: nousresearch/hermes-3-llama-3.1-405b:free
    litellm_params:
      model: openrouter/nousresearch/hermes-3-llama-3.1-405b:free
      api_key: os.environ/OPENROUTER_API_KEY

litellm_settings:
  success_callback: ["langfuse"]
  failure_callback: ["langfuse"]
  drop_params: true
  fallbacks:
    - deepseek/deepseek-r1:free: ["ollama/qwen3.5:4b"]
