Use Case 1: FAQ-бот з AI-відповідями
Рівень: базовий · Модулі: Fast Line Pro, Scenario Builder · Action: action_fastline_pro
Необхідні права та доступ
| Що потрібно | Де в меню | Навіщо |
|---|---|---|
| Scenario Builder | Меню → Scenario Builder | Збірка сценарію FAQ |
| Fast Line Pro | Меню → Fast Line Pro | AI-агент і база знань |
| Fast Line Pro → База знань | Fast Line Pro → База знань | Документи FAQ; дочекайтеся індексації |
| Settings → Bots | Налаштування → Bots | Канали для preview / Telegram |
Якщо розділу немає в меню — перевірте права облікового запису або зверніться до підтримки ConnectiveOne.
Бізнес-контекст
Компанія хоче автоматично відповідати на часті питання без залучення операторів. Клієнт ставить питання у чаті — бот відповідає з бази знань; якщо відповіді немає, клієнт отримує зрозуміле fallback-повідомлення, а не тишу.
Очікуваний результат
- Клієнт пише питання після вітання.
- Fast Line Pro відповідає з бази знань.
- Якщо відповіді немає — спрацьовує fallback edge з текстом на кшталт «Спробуйте переформулювати».
- У Runs видно змінну
{{ai_answer}}після успішного запиту до AI.
Архітектура flow
Start → MessageKeyboard (вітання + «Задати питання»)
→ WaitForInput (зберегти питання)
→ Action (action_fastline_pro)
├─ основний вихід → MessageKeyboard ({{ai_answer}})
└─ fallback → «Спробуйте переформулювати»
Покрокова реалізація
Крок 0. Fast Line Pro (поза Scenario Builder)
| Що | Навіщо |
|---|---|
| Fast Line Pro → вкладка Чат-боти | Для FAQ достатньо відповідей з бази знань; інструменти не потрібні |
| База знань → txt, 5–10 Q&A | Малий файл швидше індексується на навчанні |
| Статус індексації | Дочекайтеся завершення обробки документа в БЗ перед тестом у сценарії |
Назва (напр. Training FAQ Bot) |
Має буква в букву збігатися з agent_name у сценарії (назва параметра історична — тип може бути «Чат-бот») |
Перевірка: Fast Line Pro → «Тестування» — відповіді з БЗ працюють без сценарію.
Чат-бот vs Агент у Fast Line Pro
У модулі два типи ШІ-додатків. Це не «навчання vs production» і не те саме, що бот у Scenario Builder / Settings → Bots.
| Тип | Що вміє | Коли обирати |
|---|---|---|
| Чат-бот | Відповіді з бази знань і промпту; без інструментів | FAQ, categorizer, типовий action_fastline_pro |
| Агент | Те саме + Інструменти (зовнішні дії) і розширені режими (напр. streaming) | Коли AI має щось зробити, а не лише відповісти з БЗ |
Для цього Use Case: створюйте Чат-бот. Агент знадобиться пізніше, якщо з’являться tools — див. Advanced Fast Line Pro.
Опційно після fallback: edge «Поговорити з оператором» → connect (якщо Operator Panel уже налаштовано в Use Case 3).
Крок 1. Start
| Параметр | Значення | Навіщо |
|---|---|---|
| Тригер | Повідомлення в каналі (за замовчуванням) | Запуск при першому повідомленні клієнта в preview / Telegram |
Edges: один вихід → наступна нода (вітання).
Крок 2. MessageKeyboard — вітання
Нода: Повідомлення з кнопками (send-message-keyboard).
| Параметр (Inspector) | Значення | Навіщо |
|---|---|---|
| Текст повідомлення | «Привіт! Я FAQ-бот. Натисніть кнопку, щоб задати питання.» | Перше повідомлення клієнту |
| Тип клавіатури | inline | Кнопки під повідомленням — зручно в Telegram і preview |
| Кнопка 1 | Текст: «Задати питання» · payload: ask |
Одна гілка — спрощує Use Case 1 |
| Output Variable | (можна не задавати) | Для Use Case 1 достатньо переходу по edge кнопки |
Edges: вихід кнопки ask → WaitForInput. Якщо клієнт напише текст замість кнопки — увімкніть валідацію none або додайте edge «будь-який текст» → той самий WaitForInput.
Крок 3. WaitForInput — збір питання
Нода: Очікування вводу (wait-for-input).
| Параметр | Значення | Навіщо |
|---|---|---|
| messageText | «Напишіть ваше питання одним повідомленням» | Запит до клієнта |
| outputVariable | question |
Текст потрапить у {{question}} для AI |
| Validation → type | none |
На навчанні приймаємо будь-який текст |
Edges: один вихід (успішний ввід) → Action action_fastline_pro.
Крок 4. Action — action_fastline_pro
Нода: Action → шаблон action_fastline_pro.
Що робить action: надсилає user_input агенту Fast Line Pro, отримує відповідь з бази знань, записує її у змінну.
| node_params (JSON) | Значення | Навіщо |
|---|---|---|
agent_name |
Training FAQ Bot |
Ім'я агента з Fast Line Pro |
user_input |
{{question}} |
Питання з попередньої ноди |
save_response |
ai_answer |
Ім'я змінної для відповіді → далі {{ai_answer}} |
conversation_id |
fl_conversation_id |
Зберігає контекст між питаннями в одному Run (рекомендовано) |
vision_file |
false |
Use Case 1 без вкладень |
Edges (обов'язково обидва):
| Edge | Куди | Навіщо |
|---|---|---|
| Основний вихід (відповідь є) | MessageKeyboard з {{ai_answer}} |
Клієнт бачить відповідь AI |
| fallback | MessageKeyboard: «Не знайшов відповіді. Спробуйте переформулювати.» | Без fallback бот «замовкає», якщо БЗ не дала відповіді |
Крок 5. MessageKeyboard — показ відповіді
| Параметр | Значення | Навіщо |
|---|---|---|
| Текст | {{ai_answer}} |
Підставляє відповідь AI |
| Кнопка (опційно) | «Ще питання» → edge назад до WaitForInput | Цикл FAQ без перезапуску Run |
Edges: за бажанням — loop на WaitForInput або End.
Крок 6. Тест у Runs
- Scenario Builder → Runs → Chat preview.
- Пройти: вітання → «Задати питання» → текст з FAQ → перевірити
{{ai_answer}}у trace. - Питання поза FAQ → має спрацювати fallback, не порожній текст.
Критерії приймання (self-check Runs)
Типові помилки
| Симптом | Причина | Що зробити |
|---|---|---|
| Бот «замовкає» після питання | Немає edge fallback | Підключити fallback → MessageKeyboard |
| Порожня відповідь | Невірний agent_name |
Звірити ім'я в Fast Line Pro і node_params |
{{ai_answer}} буквально в тексті |
Змінна не записана | Перевірити save_response і trace Runs |
| AI не відповідає взагалі | БЗ не проіндексована, порожній промпт або збій у FLP | Перевірити «Тестування» у Fast Line Pro без сценарію; потім agent_name і fallback |