Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Search API
  • Начало работы
    • Обзор
    • Текстовый поиск
    • XML-ответ
    • HTML-ответ
    • Генеративный ответ
    • Поиск изображений
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Аудитные логи Audit Trails
  • История изменений

В этой статье:

  • Формат тела запроса
  • Отправка запроса
  • Генеративный ответ
  • Особенности ответа
  1. Концепции
  2. Генеративный ответ

Генеративный ответ

Статья создана
Yandex Cloud
Улучшена
magician-neko
Обновлена 15 октября 2025 г.
  • Формат тела запроса
  • Отправка запроса
  • Генеративный ответ
  • Особенности ответа

Вы можете использовать текстовый поиск Yandex Search API в сочетании с генеративными возможностями YandexGPT, чтобы получить на поисковый запрос пользователя единый емкий и понятный генеративный ответ, при формировании которого нейросеть анализирует релевантные результаты текстового поиска Yandex Search API по указанным сайтам. Генерация ответа возможна на русском, казахском и узбекском языках. Язык генерации зависит от типа поиска и языка запроса.

По умолчанию можно отправить не более одного синхронного запроса для получения генеративного ответа в секунду. Подробнее об ограничениях Yandex Search API см. в разделе Квоты и лимиты в Yandex Search API.

Для выполнения запросов необходима роль search-api.webSearch.user.

Подробнее о стоимости получения генеративных ответов на запросы см. Правила тарификации для Yandex Search API.

Формат тела запросаФормат тела запроса

Имена полей тела запроса различаются в REST API и gRPC API: в REST API используется camelCase, в gRPC API — snake_case.

Каждый запрос на получение генеративного ответа должен содержать тело запроса в формате JSON следующего вида:

REST API
gRPC API
{
  "messages": [
    {
      "content": "<текст_сообщения_1>",
      "role": "ROLE_USER"
    },
    {
      "content": "<ответ_модели_2>",
      "role": "ROLE_ASSISTANT"
    },
    {
      "content": "<текст_сообщения_3>",
      "role": "ROLE_USER"
    },
    {
      "content": "<ответ_модели_4>",
      "role": "ROLE_ASSISTANT"
    },
    ...
    {
      "content": "<текст_сообщения_n>",
      "role": "ROLE_USER"
    }
  ],
  "site": {
    "site": [
      "<адрес_сайта_1_для_поиска>",
      "<адрес_сайта_2_для_поиска>",
      ...
      "<адрес_сайта_5_для_поиска>"
    ]
  },
  "host": {
    "host": [
      "<хост_1_для_поиска>",
      "<хост_2_для_поиска>",
      ...
      "<хост_5_для_поиска>"
    ]
  },
  "url": {
    "url": [
      "<страница_1_для_поиска>",
      "<страница_2_для_поиска>",
      ...
      "<страница_10_для_поиска>"
    ]
  },
  "folderId": "<идентификатор_каталога>",
  "fixMisspell": true|false,
  "enableNrfmDocs": true|false,
  "searchFilters": [
    {
      "date": "<дата_обновления_документов>",
      "lang": "<язык_документов>",
      "format": "<формат_документов>"
    }
  ]
  "searchType": "string",
  "getPartialResults": true|false,
  "metadata": {
    "fields": "object"
  }
}

Где:

  • messages — одиночный поисковый запрос или поисковый запрос с контекстом в форме чата с моделью. Задается в виде массива объектов, в каждом из которых содержатся два элемента:

    • content — текст сообщения пользователя или ответа модели (в зависимости от значения элемента role).
    • role — роль автора сообщения. Возможные значения:
      • ROLE_USER — означает, что автор сообщения — пользователь, а в поле content — запрос пользователя.
      • ROLE_ASSISTANT — означает, что автор сообщения — модель, а в поле content — ответ модели.

    Подробнее о режиме чата в YandexGPT см. в разделе Как реализовать чат с помощью Responses API.

  • В полях site, host и url задается область поиска. При этом поля site, host и url — взаимоисключающие, задать можно только одно из них. Если ни одно из полей не указано, поиск будет выполнен по всему поисковому индексу Яндекса.

    • site — ограничение области поиска релевантных документов по массиву сайтов. Не более 5 сайтов в одном поиске.

      Например, для сайта yandex.cloud поиск будет выполняться по всем документам вида *.yandex.cloud/*. То есть, в область поиска попадут документы со следующими адресами:

      • yandex.cloud/
      • subdomain.yandex.cloud/
      • yandex.cloud/path/
      • subdomain.yandex.cloud/path/

      В поле site можно указать конкретный путь к области поиска, например https://yandex.cloud/ru/docs.

    • host — ограничение области поиска релевантных документов по массиву хостов. Не более 5 хостов в одном поиске.

      Например, для хоста yandex.cloud/ поиск будет выполняться по всем документам вида yandex.cloud/*. То есть, в область поиска попадут документы со следующими адресами:

      • yandex.cloud/
      • yandex.cloud/path/

      В отличие от ограничения области поиска в поле site, заданное в поле host ограничение не распространяется на поддомены. В поле host также нельзя указать конкретный путь к области поиска.

    • url — ограничение области поиска релевантных документов по массиву страниц. Например https://yandex.cloud/ru/docs/serverless-containers/concepts/container и https://yandex.cloud/ru/docs/container-registry/concepts/docker-image. Не более 10 страниц в одном поиске.

  • folderId — идентификатор каталога.

  • fixMisspell — параметр отвечает за проверку текста запроса на опечатки. Если параметр задан, то перед отправкой текст запроса проверяется на наличие опечаток. При этом, если опечатки были найдены, в ответ добавляется поле fixedMisspellQuery, содержащее исправленный текст запроса, который был отправлен в модель. Необязательный параметр. Возможные значения: true или false.

  • enableNrfmDocs — параметр определяет, попадут ли в поиск документы, недоступные при прямом переходе с главной страницы. Параметр работает только в том случае, если область поиска задана параметром site. Например, если вы хотите добавить в поиск страницу, на которую нельзя перейти ни по одной из ссылок, ведущих с главной страницы сайта, то необходимо включить параметр enableNrfmDocs. Необязательный параметр. Возможные значения: true или false.

  • searchFilters — дополнительный текст, который будет добавлен к каждому запросу. Используется для передачи поисковых операторов date:, mime: и lang:. Например, если указать "date": ">20250101", то в ответ на запрос будут получены только документы с датой обновления после 1 января 2025 года. Необязательный параметр. Поля date, lang и format являются взаимоисключающими — в теле запроса можно передать только одно из них.

  • searchType — тип поиска, влияет на область поиска и язык ответов. Возможные значения:

    • SEARCH_TYPE_RU — для типа поиска Русский. Ответ будет сгенерирован на русском языке.
    • SEARCH_TYPE_KK — для типа поиска Казахский. При запросе на русском языке ответ будет сгенерирован на русском, при запросе на казахском языке — на казахском.
    • SEARCH_TYPE_UZ — для типа поиска Узбекский. При запросе на русском языке ответ будет сгенерирован на русском, при запросе на узбекском языке — на узбекском.
  • getPartialResults — параметр определяет, отправлять ли промежуточные результаты генерации ответа, или дождаться финальных результатов генерации и прислать весь ответ целиком. Необязательный параметр. Возможные значения: true или false. Значение по умолчанию false.

  • metadata — дополнительные параметры поиска. Опциональный параметр.

Пример тела запроса:
{
  "messages": [
    {
      "content": "Что такое контейнеризация и как она реализована в Yandex Cloud?",
      "role": "ROLE_USER"
    }
  ],
  "site": {
    "site": [
        "https://ru.wikipedia.org/wiki/Контейнеризация",
        "https://yandex.cloud/ru/docs/serverless-containers/",
        "https://yandex.cloud/ru/docs/container-registry/"
    ]
  },
  "folderId": "aoevhr118rhc********",
  "fixMisspell": "true",
  "enableNrfmDocs": "true",
  "searchFilters": [
    {
      "date": ">20250101"
    }
  ]
}
{
  "messages": [
    {
      "content": "<текст_сообщения_1>",
      "role": "ROLE_USER"
    },
    {
      "content": "<ответ_модели_1>",
      "role": "ROLE_ASSISTANT"
    },
    {
      "content": "<текст_сообщения_2>",
      "role": "ROLE_USER"
    },
    {
      "content": "<ответ_модели_3>",
      "role": "ROLE_ASSISTANT"
    },
    ...
    {
      "content": "<текст_сообщения_n>",
      "role": "ROLE_USER"
    }
  ],
  "site": {
    "site": [
      "<адрес_сайта_1_для_поиска>",
      "<адрес_сайта_2_для_поиска>",
      ...
      "<адрес_сайта_5_для_поиска>"
    ]
  },
  "host": {
    "host": [
      "<хост_1_для_поиска>",
      "<хост_2_для_поиска>",
      ...
      "<хост_5_для_поиска>"
    ]
  },
  "url": {
    "url": [
      "<страница_1_для_поиска>",
      "<страница_2_для_поиска>",
      ...
      "<страница_10_для_поиска>"
    ]
  },
  "folder_id": "<идентификатор_каталога>",
  "fix_misspell": true|false,
  "enable_nrfm_docs": true|false,
  "search_filters": [
    {
      "date": "<дата_обновления_документов>",
      "lang": "<язык_документов>",
      "format": "<формат_документов>"
    }
  ]
}

Где:

  • messages — одиночный поисковый запрос или поисковый запрос с контекстом в форме чата с моделью. Задается в виде массива объектов, в каждом из которых содержатся два элемента:

    • content — текст сообщения пользователя или ответа модели (в зависимости от значения элемента role).
    • role — роль автора сообщения. Возможные значения:
      • ROLE_USER — означает, что автор сообщения — пользователь, а в поле content — запрос пользователя.
      • ROLE_ASSISTANT — означает, что автор сообщения — модель, а в поле content — ответ модели.

    Подробнее о режиме чата в YandexGPT см. в разделе Как реализовать чат с помощью Responses API.

  • В полях site, host и url задается область поиска. При этом поля site, host и url — взаимоисключающие, задать можно только одно из них. Если ни одно из полей не указано, поиск будет выполнен по всему поисковому индексу Яндекса.

    • site — ограничение области поиска релевантных документов по массиву сайтов. Не более 5 сайтов в одном поиске.

      Например, для сайта yandex.cloud поиск будет выполняться по всем документам вида *.yandex.cloud/*. То есть, в область поиска попадут документы со следующими адресами:

      • yandex.cloud/
      • subdomain.yandex.cloud/
      • yandex.cloud/path/
      • subdomain.yandex.cloud/path/

      В поле site можно указать конкретный путь к области поиска, например https://yandex.cloud/ru/docs.

    • host — ограничение области поиска релевантных документов по массиву хостов. Не более 5 хостов в одном поиске.

      Например, для хоста yandex.cloud/ поиск будет выполняться по всем документам вида yandex.cloud/*. То есть, в область поиска попадут документы со следующими адресами:

      • yandex.cloud/
      • yandex.cloud/path/

      В отличие от ограничения области поиска в поле site, заданное в поле host ограничение не распространяется на поддомены. В поле host также нельзя указать конкретный путь к области поиска.

    • url — ограничение области поиска релевантных документов по массиву страниц. Например https://yandex.cloud/ru/docs/serverless-containers/concepts/container и https://yandex.cloud/ru/docs/container-registry/concepts/docker-image. Не более 10 страниц в одном поиске.

  • folder_id — идентификатор каталога.

  • fix_misspell — параметр отвечает за проверку текста запроса на опечатки. Если параметр задан, то перед отправкой текст запроса проверяется на наличие опечаток. При этом, если опечатки были найдены, в ответ добавляется поле fixed_misspell_query, содержащее исправленный текст запроса, который был отправлен в модель. Необязательный параметр. Возможные значения: true или false.

  • enable_nrfm_docs — параметр определяет, попадут ли в поиск документы, недоступные при прямом переходе с главной страницы. Параметр работает только в том случае, если область поиска задана параметром site. Например, если вы хотите добавить в поиск страницу, на которую нельзя перейти ни по одной из ссылок, ведущих с главной страницы сайта, то необходимо включить параметр enable_nrfm_docs. Необязательный параметр. Возможные значения: true или false.

  • search_filters — дополнительный текст, который будет добавлен к каждому запросу. Используется для передачи поисковых операторов date:, mime: и lang:. Например, если указать "date": ">20250101", то в ответ на запрос будут получены только документы с датой обновления после 1 января 2025 года. Необязательный параметр. Поля date, lang и format являются взаимоисключающими — в теле запроса можно передать только одно из них.

  • search_type — тип поиска, влияет на область поиска и язык ответов. Возможные значения:

    • SEARCH_TYPE_RU — для типа поиска Русский. Ответ будет сгенерирован на русском языке.
    • SEARCH_TYPE_KK — для типа поиска Казахский. При запросе на русском языке ответ будет сгенерирован на русском, при запросе на казахском языке — на казахском.
    • SEARCH_TYPE_UZ — для типа поиска Узбекский. При запросе на русском языке ответ будет сгенерирован на русском, при запросе на узбекском языке — на узбекском.
  • get_partial_results — параметр определяет, отправлять ли промежуточные результаты генерации ответа, или дождаться финальных результатов генерации и прислать весь ответ целиком. Необязательный параметр. Возможные значения: true или false. Значение по умолчанию false.

  • metadata — дополнительные параметры поиска. Опциональный параметр.

{
  "messages": [
    {
      "content": "Что такое контейнеризация и как она реализована в Yandex Cloud?",
      "role": "ROLE_USER"
    }
  ],
  "site": {
    "site": [
        "https://ru.wikipedia.org/wiki/Контейнеризация",
        "https://yandex.cloud/ru/docs/serverless-containers/",
        "https://yandex.cloud/ru/docs/container-registry/"
    ]
  },
  "folder_id": "aoevhr118rhc********",
  "fix_misspell": "true",
  "enable_nrfm_docs": "true",
  "search_filters": [
    {
      "date": ">20250101"
    }
  ]
}

Отправка запросаОтправка запроса

REST API
gRPC API

Чтобы отправить запрос, используйте метод search для генеративного поиска GenSearch. При необходимости установите утилиты cURL и jq:

curl \
  --request POST \
  --header "Authorization: Bearer <IAM-токен>" \
  --data "@<путь_к_файлу>" \
  "https://searchapi.api.cloud.yandex.net/v2/gen/search" \
  | jq

Где:

  • <IAM-токен> — IAM-токен пользователя или сервисного аккаунта с ролью search-api.webSearch.user.
  • <путь_к_файлу> — путь к файлу с телом запроса.

Чтобы отправить запрос, используйте вызов GenSearchService/Search. При необходимости установите утилиты gRPCurl и jq:

grpcurl \
  -rpc-header "Authorization: Bearer <IAM-токен>" \
  -d @ < <путь_к_файлу> \
  searchapi.api.cloud.yandex.net:443 yandex.cloud.searchapi.v2.GenSearchService/Search \
  | jq

Где:

  • <IAM-токен> — IAM-токен пользователя или сервисного аккаунта с ролью search-api.webSearch.user.
  • <путь_к_файлу> — путь к файлу с телом запроса.

Генеративный ответГенеративный ответ

Сервис Yandex Search API возвращает ответ в формате JSON следующего вида:

Примечание

Ответ не содержит обязательных полей. Поле может отсутствовать в ответе, если не содержит значащей информации.

REST API
gRPC API
{
  "message": {
    "content": "<текст_ответа>",
    "role": "ROLE_ASSISTANT"
  },
  "sources": [
    {
      "used": false|true,
      "url": "<ссылка_на_найденный_документ_1>",
      "title": "<заголовок_найденного_документа_1>"
    },
    {
      "used": false|true,
      "url": "<ссылка_на_найденный_документ_2>",
      "title": "<заголовок_найденного_документа_2>"
    },
    ...
    {
      "used": false|true,
      "url": "<ссылка_на_найденный_документ_n>",
      "title": "<заголовок_найденного_документа_n>"
    }
  ],
  "searchQueries": [
    {
      "text": "<текст_запроса_1>",
      "reqId": "<идентификатор_запроса_1>"
    },
    {
      "text": "<текст_запроса_2>",
      "reqId": "<идентификатор_запроса_2>"
    },
    ...
    {
      "text": "<текст_запроса_n>",
      "reqId": "<идентификатор_запроса_n>"
    },
  ],
  "isAnswerRejected": false|true,
  "isBulletAnswer": false|true,
  "fixedMisspellQuery": "<исправленный_текст_запроса>"
}

Где:

  • message.content — текст генеративного ответа. Сноски в тексте указывают на источники, список и порядок которых приведены в поле sources.

  • sources — массив документов-источников, которые были найдены при запросе, могли использоваться YandexGPT в качестве источников информации при формировании ответа и на которые могут быть сделаны сноски в поле message.content. Каждый документ-источник содержит поля:

    • used — индикатор того, использовался ли данный документ при формировании ответа. Возможные значения: true или false.
    • url — URL документа.
    • title — заголовок документа. Может отсутствовать в результатах, если владелец сайта не определил заголовок страницы.
  • searchQueries — список дополнительных поисковых запросов, с которыми генеративная модель обращалась к поиску. Каждый запрос содержит поля:

    • text — текст поискового запроса.
    • reqId — уникальный идентификатор запроса Yandex Search API.
  • isAnswerRejected — индикатор отказа модели предоставить ответ из-за этических ограничений:

    • false — модель вернула ответ.
    • true — модель отказалась вернуть ответ.
  • isBulletAnswer — индикатор буллетного ответа, когда модель не может дать хороший ответ и предлагает набор буллетов с различной информацией:

    • false — модель дала хороший ответ.
    • true — модель предложила набор буллетов.
  • fixedMisspellQuery — исправленный текст запроса. Необязательная опция. Присутствует в ответе только в том случае, если в теле запроса задан параметр fixMisspell и в тексте запроса были найдены опечатки.

Пример генеративного ответа с ограничением по сайтам:
[
  {
    "message": {
      "content": "**Контейнеризация** (виртуализация на уровне операционной системы) — **метод 
      виртуализации**, при котором ядро операционной системы поддерживает несколько изолированных 
      экземпляров пространства пользователя вместо одного. [1] Эти экземпляры (контейнеры или зоны) с точки 
      зрения выполняемых в них процессов идентичны отдельному экземпляру операционной системы. [1] Ядро 
      обеспечивает полную изолированность контейнеров, поэтому программы из разных контейнеров не могут 
      воздействовать друг на друга. [1]\n\n**В Yandex Cloud контейнеризация реализована с помощью сервиса 
      Yandex Serverless Containers**. [5][6] Контейнер позволяет запустить в Yandex Cloud приложение, 
      которое содержится в Docker-образе. [6] \n\n**Некоторые особенности реализации контейнеризации в 
      Yandex Cloud:**\n\n* **Создание ревизии контейнера**. [6] Ревизию контейнера можно создать только из 
      Docker-образа, который загружен в реестр Yandex Container Registry. [6] Другие реестры не 
      поддерживаются. [6] Ревизия содержит всю информацию, необходимую для запуска контейнера. [6]\n* 
      **Вызов контейнера**. [6] После создания ревизии контейнера его можно вызвать через HTTPS, с помощью 
      триггера или с помощью расширения Yandex API Gateway. [6]\n* **Масштабирование контейнера**. [6] Если 
      контейнер вызывается быстрее, чем экземпляр успевает обработать запрос, сервис масштабирует контейнер 
      — запускает его дополнительные экземпляры. [6] Таким образом обеспечивается параллельная обработка 
      запросов. [6]\n* **Подготовленные экземпляры**. [6] Подготовленный экземпляр — это экземпляр 
      контейнера, при запуске которого гарантированно нет холодного старта. [6]",
      "role": "ROLE_ASSISTANT"
    },
    "sources": [
      {
        "used": false,
        "url": "https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F",
        "title": "Контейнеризация — Википедия"
      },
      {
        "used": true,
        "url": "https://yandex.cloud/ru/docs/serverless-containers/tutorials/functions-framework-to-container",
        "title": "Разработка функций в Functions Framework и их развертывание в Yandex Serverless Containers | Yandex Cloud - Документация"
      },
      {
        "used": false,
        "url": "https://yandex.cloud/ru/docs/container-registry/",
        "title": "Yandex Container Registry | Yandex Cloud - Документация"
      },
      {
        "used": false,
        "url": "https://yandex.cloud/ru/docs/container-registry/concepts/docker-image",
        "title": "Docker-образ. Что это и как работает? | Yandex Cloud - Документация"
      },
      {
        "used": false,
        "url": "https://yandex.cloud/ru/docs/serverless-containers/operations/",
        "title": "Инструкции по работе с Yandex Serverless Containers | Yandex Cloud - Документация"
      },
      {
        "used": true,
        "url": "https://yandex.cloud/ru/docs/serverless-containers/concepts/container",
        "title": "Контейнер в Yandex Serverless Containers | Yandex Cloud - Документация"
      },
      {
        "used": true,
        "url": "https://yandex.cloud/ru/docs/container-registry/operations/docker-image/docker-image-push",
        "title": "Загрузить Docker-образ в реестр Container Registry | Yandex Cloud - Документация"
      },
      {
        "used": false,
        "url": "https://yandex.cloud/ru/docs/serverless-containers/tutorials/deploy-app-container",
        "title": "Запуск контейнерного приложения в Yandex Serverless Containers | Yandex Cloud - Документация"
      },
      {
        "used": false,
        "url": "https://yandex.cloud/ru/docs/container-registry/tutorials/fault-tolerance",
        "title": "Настройка отказоустойчивой архитектуры в Yandex Cloud | Yandex Cloud - Документация"
      },
      {
        "used": false,
        "url": "https://yandex.cloud/ru/docs/serverless-containers/tf-ref",
        "title": "Справочник Terraform для Yandex Serverless Containers | Yandex Cloud - Документация"
      }
    ],
    "searchQueries": [
      {
        "text": "что такое контейнеризация и как она реализована в yandex cloud date 2025 01 01 date 2025 01 01 date 2025 01 01",
        "reqId": "1742492744075717-6834712924673670818-e23cqdex********-BAL"
      },
      {
        "text": "как контейнеризация реализована в yandex cloud date 2025 01 01 date 2025 01 01 date 2025 01 01",
        "reqId": "1742492744352285-5531077099747983300-hhsihxn5********-BAL"
      },
      {
        "text": "что такое контейнеризация date 2025 01 01 date 2025 01 01 date 2025 01 01",
        "reqId": "1742492744351443-10540017330195862709-gai4ndrg********-BAL"
      }
    ],
    "isAnswerRejected": false,
    "isBulletAnswer": false,
    "fixedMisspellQuery": "Что такое контейнеризация и как она реализована в Yandex Cloud?"
  }
]
{
  "message": {
    "content": "<текст_ответа>",
    "role": "ROLE_ASSISTANT"
  },
  "sources": [
    {
      "url": "<ссылка_на_найденный_документ_1>",
      "title": "<заголовок_найденного_документа_1>",
      "used": false|true
    },
    {
      "url": "<ссылка_на_найденный_документ_2>",
      "title": "<заголовок_найденного_документа_2>",
      "used": false|true
    },
    ...
    {
      "url": "<ссылка_на_найденный_документ_n>",
      "title": "<заголовок_найденного_документа_n>",
      "used": false|true
    }
  ],
  "search_queries": [
    {
      "text": "<текст_запроса_1>",
      "req_id": "<идентификатор_запроса_1>"
    },
    {
      "text": "<текст_запроса_2>",
      "req_id": "<идентификатор_запроса_2>"
    },
    ...
    {
      "text": "<текст_запроса_n>",
      "req_id": "<идентификатор_запроса_n>"
    },
  ],
  "is_answer_rejected": false|true,
  "is_bullet_answer": false|true,
  "fixed_misspell_query": "<исправленный_текст_запроса>"
}

Где:

  • message.content — текст генеративного ответа. Сноски в тексте указывают на источники, список и порядок которых приведены в поле sources.

  • sources — массив документов-источников, которые были найдены при запросе, могли использоваться YandexGPT в качестве источников информации при формировании ответа и на которые могут быть сделаны сноски в поле message.content. Каждый документ-источник содержит поля:

    • url — URL документа.
    • title — заголовок документа.
    • used — индикатор того, использовался ли данный документ при формировании ответа. Возможные значения: true или false.
  • search_queries — список дополнительных поисковых запросов, с которыми генеративная модель обращалась к поиску. Каждый запрос содержит поля:

    • text — текст поискового запроса.
    • req_id — уникальный идентификатор запроса Yandex Search API.
  • is_answer_rejected — индикатор отказа модели предоставить ответ из-за этических ограничений:

    • false — модель вернула ответ.
    • true — модель отказалась вернуть ответ.
  • is_bullet_answer — индикатор буллетного ответа, когда модель не может дать хороший ответ и предлагает набор буллетов с различной информацией:

    • false — модель дала хороший ответ.
    • true — модель предложила набор буллетов.
  • fixed_misspell_query — исправленный текст запроса. Необязательная опция. Присутствует в ответе только в том случае, если в теле запроса задан параметр fix_misspell и в тексте запроса были найдены опечатки.

Пример генеративного ответа с ограничением по сайтам:
{
  "message": {
    "content": "**Контейнеризация** (виртуализация на уровне операционной системы) — **метод 
    виртуализации**, при котором ядро операционной системы поддерживает несколько изолированных экземпляров 
    пространства пользователя вместо одного. [1] Эти экземпляры (контейнеры или зоны) с точки зрения 
    выполняемых в них процессов идентичны отдельному экземпляру операционной системы. [1] Ядро обеспечивает 
    полную изолированность контейнеров, поэтому программы из разных контейнеров не могут воздействовать друг 
    на друга. [1]\n\n**В Yandex Cloud контейнеризация реализована с помощью сервиса 
    Yandex Serverless Containers**. [7] Он позволяет запустить в Yandex Cloud приложение, 
    которое содержится в Docker-образе. [7] \n\n**Некоторые особенности реализации контейнеризации в 
    Yandex Cloud:**\n\n* **Создание ревизии контейнера**. [7] Ревизию можно создать только из 
    Docker-образа, который загружен в реестр Yandex Container Registry. [7] Другие реестры не 
    поддерживаются. [7] Ревизия содержит всю информацию, необходимую для запуска контейнера. [7]\n* **Вызов 
    контейнера**. [7] После создания ревизии контейнер можно вызвать через HTTPS, с помощью триггера или 
    расширения Yandex API Gateway. [7]\n* **Масштабирование контейнера**. [7] Если контейнер вызывается 
    быстрее, чем экземпляр успевает обработать запрос, сервис масштабирует контейнер — запускает его 
    дополнительные экземпляры. [7] Таким образом обеспечивается параллельная обработка запросов. [7]\n* 
    **Подготовленные экземпляры**. [7] Это экземпляр контейнера, при запуске которого гарантированно нет 
    холодного старта. [7] В подготовленном экземпляре до вызова контейнера инициализируются компоненты среды 
    выполнения Serverless Containers, загружается и инициализируется пользовательское приложение. [7]",
    "role": "ROLE_ASSISTANT"
  },
  "sources": [
    {
      "url": "https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F",
      "title": "Контейнеризация — Википедия",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/serverless-containers/tutorials/functions-framework-to-container",
      "title": "Разработка функций в Functions Framework и их развертывание в Yandex Serverless Containers | Yandex Cloud - Документация",
      "used": true
    },
    {
      "url": "https://yandex.cloud/ru/docs/container-registry/",
      "title": "Yandex Container Registry | Yandex Cloud - Документация",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/container-registry/concepts/docker-image",
      "title": "Docker-образ. Что это и как работает? | Yandex Cloud - Документация",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/container-registry/operations/docker-image/docker-image-push",
      "title": "Загрузить Docker-образ в реестр Container Registry | Yandex Cloud - Документация",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/serverless-containers/tutorials/deploy-app-container",
      "title": "Запуск контейнерного приложения в Yandex Serverless Containers | Yandex Cloud - Документация",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/serverless-containers/concepts/container",
      "title": "Контейнер в Yandex Serverless Containers | Yandex Cloud - Документация",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/serverless-containers/tf-ref",
      "title": "Справочник Terraform для Yandex Serverless Containers | Yandex Cloud - Документация",
      "used": true
    },
    {
      "url": "https://yandex.cloud/ru/docs/serverless-containers/operations/",
      "title": "Инструкции по работе с Yandex Serverless Containers | Yandex Cloud - Документация",
      "used": false
    },
    {
      "url": "https://yandex.cloud/ru/docs/container-registry/tutorials/fault-tolerance",
      "title": "Настройка отказоустойчивой архитектуры в Yandex Cloud | Yandex Cloud - Документация",
      "used": false
    }
  ],
  "search_queries": [
    {
      "text": "что такое контейнеризация и как она реализована в yandex cloud date 2025 01 01 date 2025 01 01 date 2025 01 01",
      "req_id": "1742493532407414-13584885235180537459-jjleoq7t********-BAL"
    },
    {
      "text": "как контейнеризация реализована в yandex cloud date 2025 01 01 date 2025 01 01 date 2025 01 01",
      "req_id": "1742493532717030-17218638161437229208-rs6g5w5h********-BAL"
    },
    {
      "text": "что такое контейнеризация date 2025 01 01 date 2025 01 01 date 2025 01 01",
      "req_id": "1742493532716328-3123354248981714225-rs6g5w5h********-BAL"
    }
  ],
  "is_answer_rejected": false,
  "is_bullet_answer": false,
  "fixed_misspell_query": "Что такое контейнеризация и как она реализована в Yandex Cloud?"
}

Особенности ответаОсобенности ответа

В зависимости от запроса и полученных результатов поиска, при формировании генеративного ответа Yandex Search API может выдавать такие предупреждения:

  • Если сервис не нашел ни одного документа по запросу:

    Ничего не нашлось.
    Переформулируйте запрос или спросите что-нибудь ещё.

  • Если сервис нашел документы-источники по запросу, но извлечь из них информацию не получилось:

    Не удалось извлечь информацию по запросу из найденных документов. Попробуйте открыть их самостоятельно или перейти к результатам поиска.

  • Если сервис нашел документы-источники и извлек из них информацию, но нет уверенности в высоком качестве ответа, Yandex Search API предваряет ответ следующим сообщением:

    На сайтах по данной теме доступна различная информация, её обзор ниже.

Была ли статья полезна?

Предыдущая
HTML-ответ
Следующая
Поиск изображений
Проект Яндекса
© 2025 ООО «Яндекс.Облако»