Claude Haiku 4.5 vs Claude Haiku 5.5
Lequel choisir, et quand
claude-haiku-5-5 est la génération la plus récente et coûte dix fois moins : $0.1 en entrée et $0.5 en sortie contre $1 et $5 pour claude-haiku-4-5, avec des lectures en cache à $0.01 contre $0.1. Il relève aussi les limites : un contexte de 1000000 tokens contre 200000, 128000 tokens en sortie contre 64000, une limite de connaissances en 2026-06 contre 2025-02, et une mise en cache dès 512 tokens là où claude-haiku-4-5 en exige 4096. Deux points à vérifier avant de migrer : les prompts de plus de 100000 tokens sont facturés 5x plus cher, et son tokenizer compte environ 30% de tokens en plus pour le même texte. Pour la plupart des charges de travail, la mise à niveau reste malgré tout moins chère.
Benchmarks
Claude Haiku 5.5 : le fournisseur n'a publié aucun résultat de benchmark.
Chiffres publiés par les fournisseurs : Alibaba (Qwen) Anthropic ByteDance Google Moonshot OpenAI Tencent Z.ai
Tarifs
| Claude Haiku 4.5 | Claude Haiku 5.5 | Δ | |
|---|---|---|---|
| Entrée / 1M de tokens | $1 | $0.1 | 10× |
| Sortie / 1M de tokens | $5 | $0.5 | 10× |
| Lecture de cache / 1M de tokens | $0.1 | $0.01 | 10× |
| Écriture de cache | 1.25x (5m) / 2x (1h) | 1.25x (5m) / 2x (1h) | - |
Tarifs relevés dans le catalogue en direct à la génération du site ; la page de chaque modèle affiche la grille tarifaire à jour.
Leur position : prix en entrée pour 1M de tokens, parmi les 78 modèles de chat facturés dans cette unité (échelle logarithmique)
Capacités
| Claude Haiku 4.5 | Claude Haiku 5.5 | |
|---|---|---|
| Appel d'outils | oui | oui |
| Contrôle de la réflexion | configurable | configurable |
| Sortie structurée | oui | oui |
| Mise en cache des prompts | explicite (vous indiquez le préfixe) | explicite (vous indiquez le préfixe) |
| Durée de vie du cache | 5m default, 1h option | 5m default, 1h option |
| Préfixe minimal mis en cache | 1024 tokens | 1024 tokens |
Spécifications
| Claude Haiku 4.5 | Claude Haiku 5.5 | |
|---|---|---|
| Modalités d'entrée | texte image | texte image |
| Modalités de sortie | texte | texte |
| Date de sortie | 2025-10-15 | 2026-10-07 |
| Coupure des connaissances | 2025-02 | 2026-06 |
| Fenêtre de contexte | 200K | 1M |
| Sortie maximale | 64K | 128K |
| Paramètre de réflexion |
| output_config.effort |
| Valeurs acceptées | budget_tokens
"adaptive" returns 400 | output_config.effort
|
| Valeur par défaut | off, with no thinking unless the request sets it | medium |
Les spécifications sont reprises de la documentation de chaque fournisseur ; quand un fournisseur ne publie pas une valeur, la ligne est omise et non déduite. Sources complètes : Claude Haiku 4.5 · Claude Haiku 5.5
Un prompt, deux modèles, mesurés via la passerelle
Claude Haiku 4.5 réussi · 3 sentences
# Why Your LLM Bill Doubled Reasoning models like o1 and o3 process queries through extended chains of thought before responding, consuming 5-10x more tokens internally than standard models while also charging higher per-token rates. This means both your input token usage and per-unit costs increased simultaneously—a compounding effect that easily doubles overall spend. Unless you've significantly reduced queries to other models or have very selective reasoning deployment, the math makes a doubling entirely predictable.
sortie 106 tok latence 2.8 s
Claude Haiku 5.5 réussi · 3 sentences
Enabling reasoning makes the model generate a long internal chain of thought before its answer, and those thinking tokens are billed as output tokens, which cost several times more than input tokens. The model often produces many times more output per request than it did without reasoning, so the per-call cost rises even when the visible answer looks about the same length. Because that extra spend scales with every request, the bill roughly doubled, and we can control it by setting reasoning budgets, using reasoning only for tasks that need it, or routing simpler requests to a non-reasoning model.
sortie 332 tok (+159 réflexion) latence 2.9 s
Le respect de la consigne (exactement trois phrases, ça se compte), l'adaptation au public visé (le registre d'un directeur financier) et l'écart de facturation dû à la réflexion masquée, que révèlent les compteurs de tokens ci-dessous.
Claude Haiku 4.5 réussi · 8/8 cases
# Fixed Function ```python def longest_run(xs): if not xs: return 0 best = 1 cur = 1 for i in range(1, len(xs)): if xs[i] == xs[i - 1]: cur += 1 best = max(best, cur) else: cur = 1 return best ``` # Bug Explanation The original function has two related bugs stemming from incorrect initialization and loop logic. First, `best` and `cur` start at 0, which causes single-element lists to incorrectly return 0 instead of 1—a run of one identical element should have length 1. Second, `cur` is reset to 0 (not 1) when a mismatch occurs, causing the next matching pair to be undercounted. More critically, if the longest run ends at the last index, `best` is only updated *during* the loop when a mismatch is encountered; if no mismatch follows the final run, `best` never captures it. […]
sortie 310 tok latence 4.0 s
Claude Haiku 5.5 réussi · 8/8 cases
```python def longest_run(xs): if not xs: return 0 best = cur = 1 for i in range(1, len(xs)): if xs[i] == xs[i - 1]: cur += 1 else: cur = 1 best = max(best, cur) return best ``` The bug is that `cur` counts adjacent equal *pairs*, not run *elements*. A run of k equal items produces k−1 matching pairs, so the function returns one less than the true length, and a single-element input produces no pairs at all, so it returns 0 instead of 1. Resetting `cur` to 0 on a mismatch compounds this by starting every run one step behind. The fix starts both `cur` and `best` at 1 (a non-empty list always has a run of at least one element), resets `cur` to 1 on a mismatch, and updates `best` after every element rather than only inside the equal-branch. The empty-list guard keeps the function from returning 1 for `[]`. […]
sortie 1012 tok (+591 réflexion) latence 6.0 s
La justesse réelle du correctif (il s'exécute), la densité de l'explication et l'économie de tokens sur une tâche bien délimitée.
Claude Haiku 4.5 réussi · 5/5 fields, guidance null
```json { "company": "Meridian Robotics", "quarter": "Q3", "revenue_usd_m": 412, "growth_pct": 11, "guidance": null } ```
sortie 63 tok latence 1.6 s
Claude Haiku 5.5 réussi · 5/5 fields, guidance "Formal guidance withheld pending the Q4 "
```json { "company": "Meridian Robotics", "quarter": "September quarter", "revenue_usd_m": null, "growth_pct": 11, "guidance": "Formal guidance withheld pending the Q4 close" } ``` Notes: The text gives revenue as 412 but doesn't state the currency, so I left `revenue_usd_m` as null. Growth is "eleven and change," so 11 is an approximation.
sortie 725 tok (+572 réflexion) latence 4.6 s
Le respect du schéma (aucun champ inventé), la tentation d'halluciner (le texte indique que la guidance n'est pas communiquée) et les différences entre les mécanismes de sortie structurée.
Claude Haiku 4.5 réussi · 123 words, 0 banned, 1 question
# Introducing Prompt Cache Across Providers We're excited to announce our latest API gateway feature: intelligent prompt caching that works across multiple AI providers. This powerful capability stores frequently used prompts and their contexts, dramatically reducing latency and API costs for your applications. By intelligently managing cached prompts across providers like OpenAI, Anthropic, and others, you can optimize your infrastructure without changing your code. Why wait for responses when cached results can be delivered instantly? The system automatically handles cache invalidation and updates, ensuring your applications always access current information while maintaining performance gains. With support for complex multi-turn conversations and dynamic content, this feature scales seamlessly with your business needs. […]
sortie 165 tok latence 3.0 s
Claude Haiku 5.5 réussi · 120 words, 0 banned, 1 question
**Introducing Prompt Cache Sync, the newest feature in GatewayOne.** Teams routing requests across OpenAI, Anthropic, and Google have often paid to process the same long system prompts again and again. Now the gateway stores those prompts once and reuses them wherever they appear, regardless of provider. Repeated context is matched by content hash, so cached prefixes return faster and cost less, with no changes to your application code. How much could this save your team? Enable Prompt Cache Sync from the dashboard, and your next billing report will show the difference. Cache entries follow your existing retention settings and can be purged per project at any time. Availability begins this week for all Scale and Enterprise plans worldwide. Start today.
sortie 2164 tok (+1929 réflexion) latence 9.9 s
Le respect des contraintes (nombre de mots, liste de mots interdits, une seule question), l'empreinte stylistique et la maîtrise de la longueur.
Passez de l'un à l'autre en changeant une seule ligne
Les deux identifiants figurent dans chaque onglet ci-dessous : les deux lignes surlignées sont le seul changement. Même endpoint, même clé, même format de requête.
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.chat.completions.create(
model="claude-haiku-4-5",
# model="claude-haiku-5-5", # décommentez cette ligne, commentez celle du dessus
messages=[{"role": "user", "content": "Summarize this diff"}],
)
print(resp.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://synthorai.io/v1",
apiKey: "sk-syn-...",
});
const resp = await client.chat.completions.create({
model: "claude-haiku-4-5",
// model: "claude-haiku-5-5", // décommentez cette ligne, commentez celle du dessus
messages: [{ role: "user", content: "Summarize this diff" }],
});
console.log(resp.choices[0].message.content);curl https://synthorai.io/v1/chat/completions \
-H "Authorization: Bearer sk-syn-..." \
-H "Content-Type: application/json" \
-d '{
"model": "claude-haiku-4-5",
# "model": "claude-haiku-5-5", # décommentez cette ligne, commentez celle du dessus
"messages": [{"role": "user", "content": "Hello"}]
}'package main
import (
"context"
"fmt"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://synthorai.io/v1"),
option.WithAPIKey("sk-syn-..."),
)
resp, _ := client.Chat.Completions.New(context.TODO(), openai.ChatCompletionNewParams{
Model: "claude-haiku-4-5",
// Model: "claude-haiku-5-5", // décommentez cette ligne, commentez celle du dessus
Messages: []openai.ChatCompletionMessageParamUnion{
openai.UserMessage("Summarize this diff"),
},
})
fmt.Println(resp.Choices[0].Message.Content)
}import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.chat.completions.*;
OpenAIClient client = OpenAIOkHttpClient.builder()
.baseUrl("https://synthorai.io/v1")
.apiKey("sk-syn-...")
.build();
ChatCompletion resp = client.chat().completions().create(
ChatCompletionCreateParams.builder()
.model("claude-haiku-4-5")
// .model("claude-haiku-5-5") // décommentez cette ligne, commentez celle du dessus
.addUserMessage("Summarize this diff")
.build());
System.out.println(resp.choices().get(0).message().content().orElse(""));FAQ
Lequel est le moins cher, Claude Haiku 4.5 ou Claude Haiku 5.5 ?
Claude Haiku 5.5 est moins cher sur la ligne « Entrée / 1M de tokens » ($0.1 contre $1, soit un écart de 10×). D'autres lignes peuvent dire l'inverse : le tableau ci-dessus donne la grille tarifaire complète, et le coût réel dépend de la composition de votre trafic.
Puis-je faire un test A/B entre Claude Haiku 4.5 et Claude Haiku 5.5 sans deux intégrations ?
Oui. Les deux passent par le même endpoint compatible OpenAI, avec une seule clé API. Pour passer de l'un à l'autre, il suffit de changer l'identifiant du modèle, soit une ligne : vous pouvez donc envoyer une part du trafic à chacun et comparer directement les factures.
Claude Haiku 4.5 et Claude Haiku 5.5 prennent-ils en charge la mise en cache des prompts ?
Oui. Les deux facturent les lectures de cache moins cher que leur tarif d'entrée : une charge de travail dont le préfixe est déjà en cache coûte donc moins que ne le laissent penser les tarifs publics. Les lignes de lecture de cache figurent dans le tableau des tarifs ci-dessus.