В сценарии можно обращаться к модели GPT-3.5 TURBO, чтобы отвечать на различные вопросы.
Запросы к chatGPT корректно работают только в чатах. На входящей телефонии могут быть сбросы из-за долгих ответов нейросети.
На исходящей телефонии BPL-функции не работают.
Настройка сценария
1. Чтобы использовать chatGPT-3 в сценарии, сделайте следующие шаги:
- Установите блок вопроса и в стрелке поставьте галочку Сохранить ответ,
- Тип выходных данных выберите Ветка по умолчанию.
- В Название переменной напишите question.
- Таким образом мы сохраняем вопрос пользователя в переменную question.
2. В блоке Арифметика, в поле Тип выберите Произвольный тип.
3. В поле BPL-выражение напишите функцию для работы с chatGPT-3:
$answer = gpt3.ask($question, 0.7)
Где:
$answer – переменная, в которую будет записан ответ нейросети.
$question – запрос к нейросети на русском или английском языке.
0.7 – число от 0 до 1 обозначающее степень достоверности и вариативности ответов нейросети (0 – максимальная достоверность и минимальная вариативность, 1 – минимальная достоверность и максимальная вариативность).
4. Нажмите Преобразовать BPL в AST.
5. После блока Арифметика поставьте блок Условие и соедините их стрелкой.
6. Установите блок с типом Информация. В поле Информационное сообщение (произносится роботом) напишите {answer}.
В этом блоке будет выводиться ответ нейросети.
7. В стрелке из блока Условия, в поле Тип выберите По умолчанию.
8. Установите блок Информация. В поле Информационное сообщение (произносится роботом) напишите Таймаут ответа.
Таймаут для получения ответа – 1 минута. Если для получения ответа потребуется больше 1 минуты, то будет возвращена переменная с пустым значением.
9. В стрелке из блока Условия, в поле Тип выберите Условие "ИЛИ" и добавьте два условия нажав кнопку Добавить условие.
В первом поле первого условия напишите {answer}, второе поле оставьте пустым.
В первом поле второго условия напишите {answer}, во втором поле напишите answer, без фигурных скобок.
В этом условии проверяется наличие ответа нейросети, так как если было возвращено пустое значение, значит время ожидания ответа превысило максимальное значение в 1 минуту.
10. При необходимости соедините стрелками блоки информации с блоком вопроса.
Это нужно, если вы хотите зациклить сценарий.
Пример работы
Протестировать работу фрагмента можно в тестовом виджете. Узнать как создать тестовый виджет можете в этой статье.
Таким образом вы можете задать вопрос нейросети chatGPT-3.