> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Параллельный поиск

Плагин Parallel предоставляет два провайдера [Parallel](https://parallel.ai/) `web_search`,
оба из которых возвращают ранжированные, оптимизированные для LLM фрагменты
из веб-индекса, созданного для ИИ-агентов:

| Провайдер | id | Аутентификация |
| - | - | - |
| Parallel Search (бесплатный) | `parallel-free` | Не требуется — бесплатный [Search MCP](https://docs.parallel.ai/integrations/mcp/search-mcp) от Parallel |
| Parallel Search | `parallel` | `PARALLEL_API_KEY` — платный Search API, более высокие лимиты запросов и настройка цели |

Установите `tools.web.search.provider` в значение `parallel-free` или `parallel`, чтобы явно
выбрать один из них; автоматическое обнаружение не выполняется ни для одного из них.

> [!NOTE]
>
> Модели прямого OpenAI Responses (`api: "openai-responses"`, провайдер
> `openai`, официальный базовый URL API) автоматически используют встроенный
> веб-поиск OpenAI, когда `tools.web.search.provider` не задан, пуст, имеет значение `"auto"`
> или `"openai"`, поэтому по умолчанию они обходят Parallel. Установите
> `tools.web.search.provider` в значение `parallel-free` или `parallel`, чтобы вместо этого
> направлять их через Parallel. См. [обзор веб-поиска](https://docs2.openclaw.ai/ru/tools/web.md).

## Установка плагина

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw plugins install @openclaw/parallel-plugin
openclaw gateway restart
```

## Ключ API (платный провайдер)

Для `parallel-free` ключ не нужен, но этот провайдер всё равно необходимо выбрать явно. Для платного
провайдера `parallel` требуется ключ API:

**1. Создание учётной записи**

Зарегистрируйтесь на [platform.parallel.ai](https://platform.parallel.ai) и
создайте ключ API на панели управления.

**2. Сохранение ключа**

Задайте `PARALLEL_API_KEY` в окружении Gateway или выполните настройку с помощью:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw configure --section web
```

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

```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  plugins: {
    entries: {
      parallel: {
        config: {
          webSearch: {
            apiKey: "par-...", // необязательно, если задан PARALLEL_API_KEY
            baseUrl: "https://api.parallel.ai", // необязательно; OpenClaw добавляет /v1/search
          },
        },
      },
    },
  },
  tools: {
    web: {
      search: {
        // "parallel-free" для бесплатного Search MCP или "parallel" для
        // показанного здесь платного провайдера на основе API.
        provider: "parallel",
      },
    },
  },
}
```

**Альтернатива через переменную окружения:** задайте `PARALLEL_API_KEY` в окружении
Gateway. При установке Gateway поместите её в `~/.openclaw/.env`.

## Переопределение базового URL

Применяется только к платному провайдеру `parallel`; `parallel-free` всегда использует
`https://search.parallel.ai/mcp` и игнорирует эту настройку.

Задайте `plugins.entries.parallel.config.webSearch.baseUrl`, чтобы направлять платные
запросы через совместимый прокси-сервер или альтернативную конечную точку (например,
Cloudflare AI Gateway). OpenClaw нормализует адреса, содержащие только имя хоста, добавляя в начало
`https://`, и добавляет `/v1/search`, если путь ещё не оканчивается на него. Итоговая
конечная точка входит в ключ кеша поиска, поэтому результаты из разных
конечных точек никогда не используются совместно.

## Параметры инструмента

Оба провайдера предоставляют нативную структуру поиска Parallel, чтобы модель заполняла
цель на естественном языке и несколько коротких запросов по ключевым словам — сочетание,
которое Parallel [рекомендует](https://docs.parallel.ai/search/best-practices) для
получения наилучших результатов.

**objective** `string` *required*

Описание исходного вопроса или цели на естественном языке (не более 5000
символов). Должно быть самодостаточным.

**search\_queries** `string[]` *required*

Краткие поисковые запросы по ключевым словам, по 3–6 слов каждый (1–5 элементов, не более 200
символов каждый). Для наилучших результатов укажите 2–3 разнообразных запроса.

**count** `number`

Количество возвращаемых результатов (1–40).

**session\_id** `string`

Необязательный идентификатор сеанса Parallel из поля `sessionId` предыдущего результата. Передавайте его
при последующих поисках в рамках той же задачи, чтобы Parallel группировал связанные вызовы и
улучшал последующие результаты. Не более 1000 символов для `parallel`; бесплатный
Search MCP `parallel-free` ограничивает его длину до 100. Идентификатор, превышающий ограничение,
отбрасывается (для платного провайдера) или заменяется новым (для бесплатного).

**client\_model** `string`

Необязательный идентификатор модели, выполняющей вызов (например, `claude-opus-4-7`,
`gpt-5.6-sol`), не более 100 символов. Позволяет Parallel адаптировать настройки по умолчанию к
возможностям вашей модели. Передавайте точный слаг активной модели; не сокращайте его до
псевдонима семейства.

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

* Parallel ранжирует и сжимает результаты для удобства рассуждений LLM, а не для
  переходов пользователей по ссылкам; вместо полного содержимого страниц ожидайте насыщенные
  фрагменты для каждого результата.
* Фрагменты результатов возвращаются в массиве `excerpts`, а также объединяются в
  `description` для совместимости с универсальным контрактом `web_search`.
* Оба провайдера возвращают `session_id`; OpenClaw предоставляет его как `sessionId` в
  полезной нагрузке инструмента, чтобы вызывающая сторона могла группировать последующие поиски.
  Идентификатор сеанса, созданный Parallel (то есть не переданный вызывающей стороной), исключается
  из записи кеша, поскольку несвязанные задачи с одинаковыми запросами не должны
  наследовать его.
* `searchId`, `warnings` и `usage` от Parallel передаются без изменений при
  наличии.
* OpenClaw всегда передаёт Parallel определённое количество результатов как
  `advanced_settings.max_results` (`parallel`) или применяет `count`
  на стороне клиента после ответа Parallel фиксированного размера (`parallel-free`). Аргумент
  `count` вызывающей стороны имеет наивысший приоритет, затем используется `tools.web.search.maxResults`, а иначе —
  универсальное значение `web_search` OpenClaw по умолчанию (5); собственное значение API Parallel по умолчанию
  равно 10.
* По умолчанию результаты кешируются на 15 минут (`cacheTtlMinutes`).
* `parallel-free` создаёт новый `session_id` для каждого вызова посредством согласования MCP,
  если вызывающая сторона его не предоставляет; `parallel` в таком
  случае оставляет его незаданным.

## Связанные материалы

* [Обзор веб-поиска](https://docs2.openclaw.ai/ru/tools/web.md) — все провайдеры и автоматическое обнаружение
* [Поиск Exa](https://docs2.openclaw.ai/ru/tools/exa-search.md) — нейронный поиск с извлечением содержимого
* [Поиск Perplexity](https://docs2.openclaw.ai/ru/tools/perplexity-search.md) — структурированные результаты с фильтрацией по доменам
