ym88659208ym87991671
Генерируем ответ с помощью GigaChat | Документация для разработчиков

Генерируем ответ с помощью GigaChat

Обновлено 12 февраля 2024

Для генерации ответа клиенту голосового робота через GigaChat используйте блок Генерация ответа.

Блок выполняет запрос в GigaChat. Генерация ответа в GigaChat выполняется по параметрам, заданным в настройках блока. После получения ответа выполняется переход по сценарию.

Подключение блока в сценарий

Для подключения блока в сценарий:

  1. Откройте проект сценария Graph для вашего голосового робота.

  2. Выберите в сценарии шаг, на котором вы хотите добавить обращение в GigaChat.

  3. Добавьте блок Генерация ответа.

  4. Заполните параметры блока.

  5. Сохраните и соберите сценарий.

С рекомендациями по созданию промптов вы можете ознакомиться в разделе Создание промптов.

Параметры блока

ПараметрОписаниеПример
Системный промптТекстовое поле, многострочное. Не более 1500 символов. Позволяет задать промпт для настройки контекста обработки основного промпта. Поддерживает использование переменных сценарияОтвечай в стиле Винни Пуха
ЗапросТекстовое поле, многострочное. Не более 1500 символов. Текст вопроса к GigaChat. Поддерживает использование переменных сценария$queryText содержит вопрос пользователя из диалога с голосовым роботом, например, Где купить гречишный мед?. В блоке можно вручную заполнить переменную с историей, указав ее в нужном месте текста промпта
Ответ от GigaChatТекстовое поле для указания названия переменной, в которую должен сохраниться ответ от GigaChat. Не более 30 символов
Выводить результат пользователюОтметка об отправке сообщения пользователюtrue: отправлять сообщение клиенту голосового робота при выполнении блока, в случае успешного выполнения и получения ответа от GigaChat
false: не отправлять сообщение. Результат будет сохранен в указанную переменную
Учитывать контекст диалогаОтметка о включении отправки истории диалогаtrue: история диалога отправляется
false: история диалога не добавляется в запрос в GigaChat. Отправка истории отключена вручную

Все параметры блока, кроме параметра Системный промпт, являются обязательными.

Выходы из блока в сценарии

Успешно - успешное выполнение запроса в GigaChat и получение ответа.

Ошибка - при выполнении запроса в GigaChat возникла ошибка.

Обратите внимание: клиенту не будут переданы дополнительные сообщения или уведомления, пока не будет получен ответ от GigaChat.

Обработка ошибок

При возникновении ошибки выход из блока произойдет по переходу Ошибка. Для подробной обработки ошибки необходимо сохранять ответ со статусом ошибки в системные переменные:

НазваниеОписаниеКомментарий
$gigaChatResponseStatusКод ошибки, возникшей при выполнении запросаПример значения: 408 (Таймаут при выполнении запроса)
В сценарии можно использовать в блоке Условия, добавив кастомное условие, например, $gigaChatResponseStatus==408 и сделать переход из блока для случаев таймаута
$gigaChatResponseErrorТекст ошибки, возникшей при выполнении запросаПример значения: Read timed out

Список возвращаемых статусов ошибок

КейсКод ошибкиОписание ошибки
Ограничение тарифа403Restricted for the current tariff
Таймаут выполнения запроса (выполнение запроса не выполнено в указанный таймаут)408Read timed out
Превышены лимиты по размеру полей Запрос или Системный промпт413Content is too large
Ошибка при выполнении запроса в GigaChat500Request failed
Достигнуто максимальное количество запросов в GigaChat на одного клиента503.1The limit of requests for the user per day
Достигнуто максимальное количество обращений для тестового виджета503.2The limit of requests for test per project
Запросы ограничены для текущей интеграции503.3Restricted for the channelType
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.