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

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

  • Формат тела API-запроса
  • Отправка запроса через API
  • Отправка запроса через Yandex Cloud ML SDK
  • Генеративный ответ
  • Особенности ответа
  1. Концепции
  2. Генеративный ответ

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

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

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

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

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

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

Формат тела API-запросаФормат тела 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"
    }
  ]
}

Отправка запроса через APIОтправка запроса через API

REST API
gRPC API

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

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

Где:

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

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

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

Где:

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

Отправка запроса через Yandex Cloud ML SDKОтправка запроса через Yandex Cloud ML SDK

Чтобы отправить запрос на получение генеративного ответа через Yandex Cloud ML SDK, выполните код на языке Python. В приведенном примере показаны основные особенности использования ML SDK для получения генеративного ответа:

#!/usr/bin/env python3

from __future__ import annotations

import pprint

from yandex_cloud_ml_sdk import YCloudML


def main() -> None:

    sdk = YCloudML(
        folder_id="<идентификатор_каталога>",
        auth="<API-ключ>",
    )
    sdk.setup_default_logging()

    search = sdk.search_api.generative(
        # You can use only one of the three params: site, host, or url
        site=["yandex.cloud", "yandex.ru"],
        # host=['yandex.cloud/', 'yandex.ru/'],
        # url=['https://yandex.cloud/ru/docs/serverless-containers/concepts/container', 'https://yandex.cloud/ru/docs/container-registry/concepts/docker-image'],
        fix_misspell=True,
        enable_nrfm_docs=True,
        search_filters=[
            {"date": ">20250101"},
            {"lang": "ru"},
            {"format": "pdf"},
        ],
    )

    # You can pass a string as a query
    search_result = search.run("Yandex Cloud generative Search API params")

    # You can examine the search_result structure via pprint
    # to get to know how to work with it:
    pprint.pprint(search_result)
    print()

    queries = [
        # You can also pass a {'text', 'role'} dict like in the completions models
        {"text": "Gen search api params", "role": "user"},
        "With examples",
    ]

    # And you can pass an array of any allowed types
    search_result = search.run(queries)  # type: ignore[arg-type]
    print(search_result.text)
    print()

    # Also search result itself could be used as one of the queries for a better context
    queries.append(search_result)  # type: ignore[arg-type]
    queries.append("Get me more examples of how to use Generative Search API with gprc")

    search_result = search.run(queries)  # type: ignore[arg-type]
    print(search_result.text)
    print()


if __name__ == "__main__":
    main()

Где:

  • <идентификатор_каталога> — идентификатор каталога, в котором создан сервисный аккаунт.

  • <API-ключ> — API-ключ сервисного аккаунта, полученный ранее и необходимый для аутентификации в API.

    В примерах используется аутентификация с помощью API-ключа. Yandex Cloud ML SDK также поддерживает аутентификацию с помощью IAM-токена и OAuth-токена. Подробнее см. в разделе Аутентификация в Yandex Cloud ML SDK.

Текст поискового запроса задается в методе .run, а параметры поиска — в свойствах соответствующего объекта класса search_api.generative:

  • В свойствах 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 страниц в одном поиске.

  • 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 года. Необязательный параметр.

Исходный код библиотеки ML SDK и примеры использования доступны в репозитории на GitHub. Подробнее о Yandex Cloud ML SDK см. в документации AI Studio.

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

Сервис 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 ТОО «Облачные Сервисы Казахстан»