ym88659208ym87991671
GigaChat в Code | Документация для разработчиков

GigaChat в Code

Обновлено 26 сентября 2023

Сервис предназначен для генерации ответа пользователю чат-бота через GigaChat.

При попадании чат-бота в стейт с функцией $llm.fetchRequest() выполняется предусмотренный по сценарию запрос в GigaChat.

Параметр функции

ПараметрТипОбязательностьОписание
userContentstringДаТекст запроса в gigachat. Текст запроса с переменными. Не более 1500 символов
systemContentstringНетСистемный промпт. Возможность задать промпт, который позволяет настроить дополнительные правила и условия обработки запроса. Не более 1500 символов
noHistorybooleanНетОтключить отправку истории переписки.
true: история переписки не добавляется в запрос в GigaChat. Отправка истории отключена вручную
false: история переписки отправляется. По умолчанию история отправляется
timeoutnumНетTаймаут выполнения запроса в миллисекундах. Значение по умолчанию должно задаваться в конфиге. По умолчанию установлено значение 6 секунд

Возвращаемый объект имеет следующие поля:

  • isOk: При успешном выполнении запроса принимает значение true. При ошибке внутри сервиса или при истечении таймаута принимает значение false.
  • message: Текст ответа GigaChat.
  • error: Строка с описанием ошибки. В случае успешного запроса принимает значение undefined. При истечении таймаута принимает значение Read timed out.
  • status: Числовой код состояния http (например, 200 или 401). При ошибке внутри сервиса или при истечении таймаута запроса принимает значение -1.

Пример использования:

state: noMatch
event!: noMatch
script:
var systemContent = "Отвечай в стиле крокодила Гены из мультика чебурашка";
var userContent = $request.query;
$llm.fetchRequest({"systemContent": systemContent, "userContent": $request.query, "noHistory": true})
.then(function (response) {
if (response.isOk) {
$reaction.answer(response.message);
} else {
$reactions.transition('/transwerToOperator');
}
$jsapi.log("### log: " + toPrettyString($temp.answer));
});

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

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

При совершении более 50 запросов в течение 10 минут будет произведена блокировка на 10 минут, по истечению которой вы сможете продолжить работу. Максимальное количество обращений от одного клиента - 500.

ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.