uttapen

o3 Mini (batch) vs o4 Mini (batch)

Both sit behind the same key and the same code on uttapen — the only thing that changes is the model string, so you can run each of them against your own workload without touching anything else.

Featureo3 Mini (batch)o4 Mini (batch)
ProviderOpenAIOpenAI
Model idopenai/o3-mini:batchopenai/o4-mini:batch
Context200,000 tokens200,000 tokens
Max output100,000 tokens100,000 tokens
Input / 1M tokens159,569 toman159,569 toman
Output / 1M tokens638,275 toman638,275 toman
≈ one 1,000-word request1,037 toman1,037 toman
Input caching79,784 toman / 1M39,892 toman / 1M
Image inputNoYes
File inputYesYes
Tool callingYesYes
JSON outputYesYes
Reasoning modeYesYes

Which one for what?

o3 Mini (batch)

  • Multi-step problems, maths, and tracking down a bug
  • Whole documents or a codebase in a single request
  • Agents that call your own APIs and database
1,037 toman per 1,000 words · Model page

o4 Mini (batch)

  • Multi-step problems, maths, and tracking down a bug
  • Whole documents or a codebase in a single request
  • Reading screenshots, invoices, and scanned forms
  • Agents that call your own APIs and database
1,037 toman per 1,000 words · Model page

Run both with the same code

Swap the model value between the two ids and send the same request twice; what each answer cost comes back in the X-Uttapen-Cost-Toman header.

curl https://api.uttapen.ir/v1/chat/completions \
  -H "Authorization: Bearer sk-up-…" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/o3-mini:batch",
    "messages": [{"role": "user", "content": "Introduce yourself in one sentence."}],
    "stream": true
  }'

model = "openai/o4-mini:batch"

More comparisons: all pairs · model rankings · full catalogue

base_url = https://api.uttapen.ir/v1