---
read_when:
    - Обновление поведения повторных попыток или значений по умолчанию для провайдера
    - Отладка ошибок отправки провайдера и ограничений частоты запросов
summary: Политика повторных попыток для исходящих вызовов к провайдерам
title: Политика повторных попыток
x-i18n:
    generated_at: "2026-07-13T18:05:05Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 24
    provider: openai
    source_hash: 9be2bcb5af829b90042bfcbc5c0e5f5cc5a3cb03dd5472737c80fa0f15803361
    source_path: concepts/retry.md
    workflow: 16
---

## Цели

- Повторять каждый HTTP-запрос, а не весь многоэтапный процесс.
- Сохранять порядок, повторяя только текущий этап.
- Не допускать дублирования неидемпотентных операций.

## Значения по умолчанию

| Параметр                    | Значение по умолчанию |
| --------------------------- | --------------------- |
| Количество попыток          | 3                     |
| Максимальная задержка       | 30000 ms              |
| Джиттер                     | 0.1 (10%)             |
| Мин. задержка для Telegram  | 400 ms                |
| Мин. задержка для Discord   | 500 ms                |

## Поведение

### Поставщики моделей

- OpenClaw позволяет SDK поставщиков самостоятельно выполнять обычные короткие повторные попытки.
- Для SDK на основе Stainless, таких как Anthropic и OpenAI, ответы, допускающие повторную попытку (`408`, `409`, `429` и `5xx`), могут содержать `retry-after-ms` или `retry-after`. Если указанное время ожидания превышает 60 секунд, OpenClaw внедряет `x-should-retry: false`, чтобы SDK немедленно вернул ошибку, а механизм переключения моделей смог перейти к другому профилю аутентификации или резервной модели.
- Переопределите это ограничение с помощью `OPENCLAW_SDK_RETRY_MAX_WAIT_SECONDS=<seconds>`. Установите значение `0`, `false`, `off`, `none` или `disabled`, чтобы SDK самостоятельно соблюдали длительные интервалы ожидания `Retry-After`.

### Discord

- Повторяет запросы при ошибках ограничения частоты (HTTP 429), превышении времени ожидания запроса, ответах HTTP 5xx и временных сбоях транспорта, таких как ошибки поиска DNS, сбросы соединения, закрытия сокета и ошибки получения данных.
- Использует значение Discord `retry_after`, если оно доступно; в противном случае применяется экспоненциальная задержка.

### Telegram

- Повторяет запросы при временных ошибках (429, превышение времени ожидания, подключение/сброс/закрытие соединения, временная недоступность).
- Использует `retry_after`, если значение доступно; в противном случае применяется экспоненциальная задержка.
- При ошибках разбора HTML/Markdown повторные попытки не выполняются; при первой попытке используется резервный вариант с обычным текстом.

## Конфигурация

Задайте политику повторных попыток для каждого поставщика в `~/.openclaw/openclaw.json`:

```json5
{
  channels: {
    telegram: {
      retry: {
        attempts: 3,
        minDelayMs: 400,
        maxDelayMs: 30000,
        jitter: 0.1,
      },
    },
    discord: {
      retry: {
        attempts: 3,
        minDelayMs: 500,
        maxDelayMs: 30000,
        jitter: 0.1,
      },
    },
  },
}
```

## Примечания

- Повторные попытки применяются к каждому запросу (отправка сообщения, загрузка медиафайла, реакция, опрос, стикер).
- В составных процессах завершённые этапы не повторяются.

## См. также

- [Переключение моделей](/ru/concepts/model-failover)
- [Очередь команд](/ru/concepts/queue)
