llm-connect/contracts/functional/rates.md
tegwick 09aa1f3604
Some checks failed
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Has been cancelled
Implement LLM-WP-0007: Kimi K3 default and EUR spend reporting
Add moonshotai/kimi-k3 as OpenRouter basemodel default after live smoke,
USD→EUR cost conversion, append-only usage ledger, and CLI run/cost/spend
week commands with token and euro reporting.
2026-08-03 22:00:34 +02:00

1.1 KiB

Model Rate Registry

llm_connect.rates owns static model list prices used for planning and post-hoc estimates.

Contract

  • ModelRate records model_id, prompt and completion rates in USD per 1,000 tokens, currency, source_url, and captured_at.
  • ModelRateRegistry.default() returns the bundled OpenRouter snapshot (base rates captured 2026-05-17; moonshotai/kimi-k3 captured 2026-08-03 at $0.003 / $0.015 per 1k prompt/completion).
  • ModelRateRegistry.from_yaml(path) accepts the package/consumer override shape:
schema_version: 1
currency: USD
source_url: https://openrouter.ai/models
captured_at: "2026-05-17"
rates:
  openai/gpt-4o-mini:
    prompt_per_1k: 0.00015
    completion_per_1k: 0.00060
  moonshotai/kimi-k3:
    prompt_per_1k: 0.003
    completion_per_1k: 0.015
  • merged_with(override) returns a new registry where matching override entries replace default entries by model_id.

Rates are a static snapshot. Consumers decide whether captured_at is fresh enough for their workflow. List prices remain USD; EUR display conversion is handled by llm_connect.fx / estimate_cost.