|
| 1 | +CREATE TABLE model_pricing ( |
| 2 | + id UUID PRIMARY KEY DEFAULT gen_random_uuid(), |
| 3 | + model TEXT NOT NULL, |
| 4 | + input_per_mtok DOUBLE PRECISION NOT NULL, |
| 5 | + output_per_mtok DOUBLE PRECISION NOT NULL, |
| 6 | + cache_read_per_mtok DOUBLE PRECISION NOT NULL, |
| 7 | + cache_write_per_mtok DOUBLE PRECISION NOT NULL, |
| 8 | + effective_from TIMESTAMPTZ NOT NULL, |
| 9 | + effective_until TIMESTAMPTZ, |
| 10 | + created_at TIMESTAMPTZ NOT NULL DEFAULT now() |
| 11 | +); |
| 12 | + |
| 13 | +CREATE INDEX idx_model_pricing_lookup |
| 14 | + ON model_pricing(model, effective_from); |
| 15 | + |
| 16 | +-- Seed with current Anthropic rates |
| 17 | +INSERT INTO model_pricing (model, input_per_mtok, output_per_mtok, cache_read_per_mtok, cache_write_per_mtok, effective_from) |
| 18 | +VALUES |
| 19 | + ('opus', 15.00, 75.00, 1.50, 18.75, '2025-01-01T00:00:00Z'), |
| 20 | + ('sonnet', 3.00, 15.00, 0.30, 3.75, '2025-01-01T00:00:00Z'), |
| 21 | + ('haiku', 0.80, 4.00, 0.08, 1.00, '2025-01-01T00:00:00Z'); |
0 commit comments