← Lesson
Cost and Latency
Joeven
Run
Reset
Python loads on first run
PRICE_IN = 0.5 / 1000000 PRICE_OUT = 1.5 / 1000000 def estimate(steps, tokens_in_each, tokens_out_each): usd = steps * (tokens_in_each * PRICE_IN + tokens_out_each * PRICE_OUT) return round(usd, 6) def assembler_trim(scratch, budget_tokens): kept = [] used = 0 for event in reversed(scratch): t = max(1, len(event) // 4) if used + t > budget_tokens: break kept.append(event) used += t kept.reverse() return kept, used scratch = [ "search refund policy " * 20, "obs: 5-7 days", "search exceptions " * 20, "obs: none", ] trimmed, used = assembler_trim(scratch, 120) print("full estimate 12 long steps", estimate(12, 4000, 200)) print("trimmed events", len(trimmed), "tokens~", used) print("after trim 12 steps", estimate(12, used + 200, 80)) print("cap check", "FAIL" if estimate(12, 4000, 200) > 0.02 else "ok")
Run to execute this in your browser. Nothing is sent to a server.