Handle Timeouts Gracefully

Handle Timeouts Gracefully

Slow happens 🐢

Reasoning models and peak hours both make latency unpredictable. The difference between a flaky integration and a robust one is how you handle a slow response.

Handle timeouts gracefully
Retry with backoff keeps users happy

Set a real timeout ⏲️

Most SDKs default to long timeouts. Set one that matches your model: a fast model should answer in a few seconds, while reasoning models may need 30 seconds or more.

Model typeSuggested timeoutNotes
Fast / flash10–15sUsually answers in 1–3s
Standard30sLeave headroom for queues
Reasoning60s+Longer thinking time

Retry with backoff 🔁

  • Retry only idempotent requests or re-send the full prompt
  • Start with a short delay (500ms) and double it
  • Cap the number of retries at three
  • Give up gracefully with a friendly error

Tell the user what’s happening 💬

For user-facing apps, show “still thinking…” rather than a spinner that never resolves. If a retry finally fails, respond with something useful instead of a bare error.

Frequently asked questions ❓

How many retries should I use?

Two or three with exponential backoff. Beyond that you are usually just extending the outage.

Should all errors be retried?

No. Only retry timeouts and transient errors. Do not retry authentication or invalid-request failures.

Does a timeout waste credits?

No. You only pay for requests the model actually processed.

Share your thoughts
English

Did this post help you? Leave a comment below — we read every single one and reply to as many as we can.

Comments are moderated and published after a quick review.

Español

¿Te ayudó esta publicación? Deja un comentario abajo: leemos todos y respondemos a la mayoría.

Los comentarios se moderan y se publican tras una revisión rápida.

中文

这篇文章对您有帮助吗?请在下方留言——我们会阅读每一条评论并尽可能回复。

评论需经过审核后才会显示。

Deutsch

Hat dir dieser Beitrag geholfen? Hinterlasse unten einen Kommentar – wir lesen jeden einzelnen und antworten so vielen wie möglich.

Kommentare werden moderiert und nach einer kurzen Prüfung veröffentlicht.

Français

Cet article vous a-t-il aidé ? Laissez un commentaire ci-dessous – nous les lisons tous et répondons au plus grand nombre.

Les commentaires sont modérés et publiés après une vérification rapide.

Português

Este artigo ajudou você? Deixe um comentário abaixo – lemos todos e respondemos à maioria.

Os comentários são moderados e publicados após uma revisão rápida.

Nederlands

Heeft dit bericht je geholpen? Laat hieronder een reactie achter – we lezen ze allemaal en beantwoorden zoveel mogelijk.

Reacties worden gemodereerd en na een korte controle gepubliceerd.

Polski

Czy ten post Ci pomógł? Zostaw komentarz poniżej – czytamy każdy i odpowiadamy na tyle, na ile możemy.

Komentarze są moderowane i publikowane po szybkiej weryfikacji.

Русский

Эта статья помогла вам? Оставьте комментарий ниже — мы читаем каждый и отвечаем на большинство.

Комментарии модерируются и публикуются после быстрой проверки.

العربية

هل ساعدك هذا المقال؟ اترك تعليقًا أدناه — نقرأ كل تعليق ونرد على أكبر عدد ممكن.

تتم مراجعة التعليقات وتنشر بعد التحقق السريع.

日本語

この記事は役に立ちましたか?下のコメント欄にぜひ投稿してください。すべて読んで、できる限り返信します。

コメントはモデレーション後に公開されます。

한국어

이 글이 도움이 되었나요? 아래에 댓글을 남겨주세요 — 모든 댓글을 읽고 최대한 많이 답변합니다.

댓글은 검토 후 게시됩니다.

ไทย

บทความนี้ช่วยคุณได้ไหม? แสดงความคิดเห็นด้านล่าง — เราอ่านทุกความเห็นและตอบกลับให้มากที่สุด

ความคิดเห็นจะถูกตรวจสอบและเผยแพร่หลังจากการพิจารณา

עברית

האם המאמר עזר לכם? השאירו תגובה למטה — אנחנו קוראים כל תגובה ועונים לרובן.

תגובות עוברות ניהול ומתפרסמות לאחר בדיקה מהירה.

Tiếng Việt

Bài viết này có giúp bạn không? Hãy để lại bình luận bên dưới — chúng tôi đọc từng bình luận và phản hồi nhiều nhất có thể.

Bình luận được kiểm duyệt và xuất hiện sau khi xét duyệt nhanh.

Indonesia

Apakah artikel ini membantu Anda? Tinggalkan komentar di bawah — kami membaca semuanya dan membalas sebanyak mungkin.

Komentar dimoderasi dan dipublikasikan setelah pemeriksaan cepat.

Қазақша

Бұл мақала сізге көмектесті ме? Төменде пікір қалдырыңыз — біз әрқайсысын оқып, мүмкіндігінше көбіне жауап береміз.

Пікірлер модерациядан өтіп, тексерілгеннен кейін жарияланады.

Comments (0)

Demo preview: the sample comments below are seeded for layout preview. Newly submitted comments are moderated before they appear.
No comments yet. Be the first to share your thoughts!