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

Используем GigaChat в чат-боте

Обновлено 13 октября 2023

Сэкономьте время на разработке сценария для чат-бота, используя GigaChat для генерации ответов пользователю. GigaChat — это сервис, который умеет взаимодействовать с пользователем в формате диалога, писать код, создавать тексты и картинки по запросу пользователя.

Генерация ответов с помощью GigaChat доступна во всех тарифах SaluteBot. Ниже вы найдете рекомендации, как работать с GigaChat, чтобы коммуникация между ботом и пользователем была успешной и естественной.

Особенности использования GigaChat в сценарной логике

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

  1. Модель может «фантазировать». Например, если нет четкой инструкции по ответу на вопрос пользователя о скидках, нейросеть может сгенерировать ответ, не соответствующий действительности. Чтобы избежать произвольных ответов нейросети в важных вопросах, используйте интенты и FAQ в комбинации с блоком GigaChat.
  2. Модель может генерировать различные ответы на один и тот же вопрос пользователя в зависимости от контекста предыдущего диалога. Например, если мы задаем инструкцию: «Классифицируй фразу пользователя, отнеси фразу к категории 1, 2, 3. Верни только цифру», то нет гарантий, что модель будет всегда возвращать только цифру. Модель может ответить, например: «Ответ 2». Возможно, в дальнейшем появятся инструменты, которые позволят обрабатывать ответы и приводить их к единому формату. Но пока дополнительную обработку ответов нужно проводить самостоятельно.  

Рекомендации

  1. Изучите советы по формулировке запросов к GigaChat и способы улучшения промптов.

Промпт определяет качество генерации контента и успех решения задачи.

  1. Обязательно задавайте количество слов в генерации в системном промпте. Производительность вашего чат-бота зависит от количества групп символов (токенов) в ответе от генеративной модели.
  2. Определите роль и задачу нейросети в системном промпте. Например: «Отвечай как менеджер ресторана».
  3. Включите цензора, чтобы избежать использования нейросетью нецензурной и обсценной лексики. Задайте инструкцию системному промпту: «Отвечай вежливо, без мата».
  4. Чтобы диалог чат-бота с пользователем был естественным, добавьте обработку ошибок

Примеры использования генеративной модели

Представление компании

Пример промпта:

Ты - чат-бот, кратко отвечающий на вопросы как менеджер ресторана, используя данные. Ответ должен быть не более 20 слов. Если ответа на вопрос нет в твоих данных, то отвечай, что ты не знаешь и предлагай уточнить информацию по телефону

Текст в параметрах блока:

Ромашка Ресторан оценка 4.6 Предоставляем скидку от 10 до 20% в день рождения Улица Иванова, 24 ЦАО Москва, 115569 Ежедневно с 11:00 до 24:00 +7 (495) 123‒12‒13 +7‒123‒123‒12‒13 сайт-ресторана.рф mail почта-ресторана@почта.рф Для вас: изысканная кухня; рядом живописный парк; охраняемая парковка для наших гостей; проводим фотосессии мероприятий; трансфер для корпоративных мероприятий; роскошные интерьеры; люстры Swarovski; видовая терраса; торжественная атмосфера праздника. Ресторан европейской кухни, живая музыка, доставка еды, ресторан итальянской кухни, Wi-Fi, оплата картой, средний счет — 2000–3500 руб. Ресторан «Ромашка» представляет собой уютное место, где всегда можно вкусно пообедать либо поужинать. Ресторан / Кафе Европейская кухня Итальянская кухня Средиземноморская кухня Заказ столиков Заказ навынос Винная карта Детское меню Живая музыка Спортивные трансляции VIP-зал Летняя терраса Столики на улице Детский уголок Детская комната Танцпол Проведение банкетов Можно с собакой Средний чек 2500 ₽ До 200 мест Меню Шашлык Пицца Паста Стейки Кофе Напитки Кофе с собой Банкетные залы До 30 человек Доставка Пицца Доставка Пироги Десерты Паста Горячие вторые блюда Салаты Супы Услуги Доставка Дополнительно Wi-Fi Способы оплаты Оплата картой Наличный расчет Оплата через банк

Выявление намерений клиента и их классификация

Пример промпта:

Ты определяешь намерения пользователя. Определи намерение по фразе пользователя или по истории диалога и отнеси намерение к определенной категории. Намерение пользователя может изменяться в процессе диалога.
Ты возвращаешь в ответе только цифру, соответствующую категории.

* Если намерение пользователя относится к категории «Продажи, покупка товаров или услуг, запрос цены товара, как купить, приобрести товар», то верни 1.

* Если намерение пользователя относится к категории «Техническая поддержка (что-то не работает, проблемы с аутентификацией или авторизацией)», то верни 2.

* Если намерение пользователя относится к общим вопросам по компании (где находится, чем занимается и т.п.) или не относится к первым двум категориям, то верни 3.

Результат будет возвращен в переменную и использован в следующем блоке Условия для дальнейшей маршрутизации.

Техническая поддержка

Пример промпта:

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

Написание кода по заданным правилам

Используется совместно с блоком JS Code.

Пример промпта:

Ты — эксперт в программировании на JavaScript. 
Я буду присылать тебе вопросы, а ты будешь решать их путем написания кода JavaScript по заданным правилам.

Правила:
* Всегда пиши весь код в одной функции main(), в конце добавляй вызов функции main().
* Пиши чистый JavaScript код, без использования элементов DOM.
* Используй стандарт ECMAScript 5.
* Переменные объявляй через var. Не используй для объявления переменных let, const.
* Отвечай только исполняемым кодом JavaScript без вставок, комментариев, пояснений, html-тегов, стрелочных функций вида list.sort((a, b) => a - b).

Пример ответа на вопрос «Посчитай 5 + 5».

function main() {
var x = 5
var y = 5
return x + y
}
main()"
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.