Timeout (limit czasu)
Definicja
Timeout to limit czasu, po którym system przerywa operację (np. narzędzie, wyszukiwanie, agent), jeśli trwa za długo.
Co to w zasadzie jest?
To „bezpiecznik na czas”. Bez timeoutów:
- agent może czekać w nieskończoność,
- koszty mogą rosnąć,
- system może się blokować.
Timeouty pomagają utrzymać stabilność i przewidywalność.
Praktyczne zastosowania (konkretne scenariusze)
Scenariusz 1: Tool calling
- Cel: narzędzie ma timeout 10 sekund.
- Wejście: wywołanie API albo narzędzia.
- Kroki: ustaw limit czasu -> przerwij zbyt długie żądanie -> obsłuż błąd.
- Rezultat: brak zawieszania procesu.
- Zabezpieczenie: retry z backoffem i komunikat dla użytkownika.
Scenariusz 2: Retrieval
- Cel: wyszukiwanie kończy się po 2 sekundach i zwraca najlepsze wyniki.
- Wejście: wywołanie API albo narzędzia.
- Kroki: ustaw limit czasu -> przerwij zbyt długie żądanie -> obsłuż błąd.
- Rezultat: brak zawieszania procesu.
- Zabezpieczenie: retry z backoffem i komunikat dla użytkownika.
Scenariusz 3: Agent
- Cel: limit na cały proces, np. 60 sekund.
- Wejście: wywołanie API albo narzędzia.
- Kroki: ustaw limit czasu -> przerwij zbyt długie żądanie -> obsłuż błąd.
- Rezultat: brak zawieszania procesu.
- Zabezpieczenie: retry z backoffem i komunikat dla użytkownika.
Ryzyka i jak je ograniczać
Ryzyko 1: Timeout zbyt krótki = gorsza jakość
- Ryzyko: timeout zbyt krótki = gorsza jakość.
- Jak ograniczać: testuj i dobieraj per operacja; cache i top-k.
Ryzyko 2: Timeout zbyt długi = koszty i przeciążenie
- Ryzyko: timeout zbyt długi = koszty i przeciążenie.
- Jak ograniczać: rozsądne limity, retry z backoff, obserwacja metryk.
Ryzyko 3: Brak jasnej informacji dla użytkownika
- Ryzyko: brak jasnej informacji dla użytkownika.
- Jak ograniczać: komunikaty „nie udało się w czasie — spróbuj inaczej”.
Mapa powiązań
- Rate limiting → oba chronią system.
- Latency → timeout wpływa na czas odpowiedzi.
- Agentic workflow → limity kroków i czasu.
- LLMOps → stabilność operacyjna.
- Mini-przepływ:
Start → licznik czasu → OK / przerwij
Diagram
flowchart LR
A[Start]
B[Licznik czasu]
C[Operacja kończy się]
D[Przerwij]
E[Komunikat]
A --> B
B --> C
B --> D --> E
Diagram pokazuje, że timeout działa jak bezpiecznik, który kończy zbyt długą operację.