Сэкономьте время на разработке сценария для чат-бота, используя GigaChat для генерации ответов пользователю. GigaChat — это сервис, который умеет взаимодействовать с пользователем в формате диалога, писать код, создавать тексты и картинки по запросу пользователя.
Генерация ответов с помощью GigaChat доступна во всех тарифах SaluteBot. Ниже вы найдете рекомендации, как работать с GigaChat, чтобы коммуникация между ботом и пользователем была успешной и естественной.
Особенности использования GigaChat в сценарной логике
Для применения нейросети в сценарии, используйте блок Генерация ответа. Учитывайте, что генеративная модель GigaChat обладает некоторыми особенностями:
- Модель может «фантазировать». Например, если нет четкой инструкции по ответу на вопрос пользователя о скидках, нейросеть может сгенерировать ответ, не соответствующий действительности. Чтобы избежать произвольных ответов нейросети в важных вопросах, используйте интенты и FAQ в комбинации с блоком GigaChat.
- Модель может генерировать различные ответы на один и тот же вопрос пользователя в зависимости от контекста предыдущего диалога. Например, если мы задаем инструкцию: «Классифицируй фразу пользователя, отнеси фразу к категории 1, 2, 3. Верни только цифру», то нет гарантий, что модель будет всегда возвращать только цифру. Модель может ответить, например: «Ответ 2». Возможно, в дальнейшем появятся инструменты, которые позволят обрабатывать ответы и приводить их к единому формату. Но пока дополнительную обработку ответов нужно проводить самостоятельно.
Рекомендации
- Изучите советы по формулировке запросов к GigaChat и способы улучшения промптов.
Промпт определяет качество генерации контента и успех решения задачи.
- Обязательно задавайте количество слов в генерации в системном промпте. Производительность вашего чат-бота зависит от количества групп символов (токенов) в ответе от генеративной модели.
- Определите роль и задачу нейросети в системном промпте. Например: «Отвечай как менеджер ресторана».
- Включите цензора, чтобы избежать использования нейросетью нецензурной и обсценной лексики. Задайте инструкцию системному промпту: «Отвечай вежливо, без мата».
- Чтобы диалог чат-бота с пользователем был естественным, добавьте обработку ошибок.
Примеры использования генеративной модели
Представление компании
Пример промпта:
Ты - чат-бот, кратко отвечающий на вопросы как менеджер ресторана, используя данные. Ответ должен быть не более 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()"