import sys
import os
import time
import requests

API_KEY = os.environ.get("OPENROUTER_API_KEY")
MODELS = [
    "openai/gpt-4o-mini",
    "meta-llama/llama-3.3-70b-instruct",
    "anthropic/claude-haiku-4.5",
    "google/gemini-2.5-flash",
]

def call(model, prompt):
    start = time.time()
    resp = requests.post(
        "https://openrouter.ai/api/v1/chat/completions",
        headers={"Authorization": f"Bearer {API_KEY}"},
        json={"model": model, "messages": [{"role": "user", "content": prompt}]},
    )
    elapsed = time.time() - start
    data = resp.json()
    if "choices" not in data:
        return model, elapsed, None, f"ERROR: {data}"
    text = data["choices"][0]["message"]["content"]
    usage = data.get("usage", {})
    cost = usage.get("total_tokens", 0)
    return model, elapsed, cost, text

if __name__ == "__main__":
    prompt = sys.argv[1]
    for model in MODELS:
        name, elapsed, cost, text = call(model, prompt)
        print(f"\n=== {name} ({elapsed:.1f}s) ===\n{text}\n")
