Skip to content

GPT-4.5 — February 2025

What Changed

GPT-4.5 was the last major release in the GPT-4 generation, focused on scaling unsupervised learning further — improving pattern recognition, creative reasoning, and emotional intelligence without primarily adding more instruction tuning. It reduced hallucinations and showed improved calibration (better uncertainty acknowledgment). It was the first model explicitly positioned around "knowing what it doesn't know."

GPT-4.5 was succeeded by GPT-5 in August 2025.

Key Technical Details

The key investment was in pre-training compute and data quality rather than post-training RL. The model showed that unsupervised scaling (richer world models, better latent representations) independently improves alignment behaviors like honesty and calibration, without requiring more RLHF data.

In Plain English

A better base model is easier to align. If the model has richer internal representations of uncertainty, post-training can refine rather than fight against the base distribution.

Technical Details
  • Pricing: $75/M input tokens, $150/M output tokens at launch — significantly above GPT-4o, reflecting the compute investment.
  • Emotional intelligence: Notably improved on tasks requiring social reasoning, empathy modeling, and long-form coherent narrative.
  • Deprecation: Folded into "Legacy Models" after GPT-5 launch, still accessible for Pro subscribers.

Practical Implications

GPT-4.5 reduced hallucinations and improved calibration, and was the first model explicitly positioned around “knowing what it doesn’t know.” Launch pricing was \(75/M input** and **\)150/M output tokens. It was succeeded by GPT-5 in August 2025 and later folded into Legacy Models, with access retained for Pro subscribers.

Interview Questions

  1. What is the distinction between scaling unsupervised pre-training vs. scaling post-training alignment — and how might each affect calibration differently?
  2. Why might a better base model be "easier to align," and what does this imply for the compute allocation between pre- and post-training?

Code Example

(No code sample in the source entry.)