Інструкція
Markdown статті

AI-агент з пошуком у каталозі

Optional track — на відміну від Use Case 12: Copilot, categorizer і lookup живуть у тому ж training bot. Не потрібен окремий Copilot-bot.

Необхідні права та доступ

Модуль / налаштування Навіщо
Scenario Builder FAQ + categorizer + CD lookup в одному bot
Fast Line Pro Categorizer або intent для каталогу
Custom Data Модель products + seed
Settings → Operator Panel Handoff на оператора (опційно)
Runs / Chat preview 5 контрольних запитів

Бізнес-контекст

Клієнт запитує товар або персонажа з навчального каталогу. Бот відповідає з Custom Data і за потреби передає діалог оператору. Типовий патерн для e-commerce / довідникових bot без архітектури Copilot.

Очікуваний результат

  • Модель products + seed products-training.csv
  • Categorizer або filter у CD після action_fastline_pro
  • Handoff edge при «не знайдено» або за запитом клієнта
  • Не окремий Copilot-bot — усе в training bot

Архітектура

MessageKeyboard «Каталог» → WaitForInput (запит)
   → action_fastline_pro (categorizer / intent)
   → Router (valid filters)
   → custom_modules__get / search
      ├─ found     → MessageKeyboard (результат)
      ├─ not_found → уточнення або handoff
      └─ error     → повідомлення + fallback

Опційно: «Оператор» → connect (Use Case 3)

Покрокова реалізація

Крок 0. Custom Data — products

  1. Створіть модель products (alias products).
  2. Поля: name, category, faction, price.
  3. Імпортуйте products-training.csv.

Custom Data set


Крок 1. Fast Line Pro — categorizer каталогу

Параметр Значення
Тип Chat-bot
Prompt Секція каталогу в categorizer-training.txt
Тест «spellcaster from north» → JSON filters

Крок 2. Вхід і categorizer у сценарії

Нода Параметри
MessageKeyboard «Що шукаєте в каталозі?» → WaitForInput
WaitForInput outputVariable: catalog_query
action_fastline_pro user_input: {{catalog_query}}, save_response: catalog_filters

Edges: основний → lookup; fallback → «Переформулюйте запит».


Крок 3. Lookup у Custom Data

node_params (приклад) Значення
module_name products
filter by category, faction з categorizer

Edges:

Edge Повідомлення (приклад)
found «{{name}} — {{price}} золота»
not_found «Не знайшов у каталозі. Спробуйте інакше або натисніть «Оператор».»
error «Помилка пошуку.»

Крок 4. Handoff на оператора

При not_found або кнопці «Оператор»:

MessageKeyboard → operator_panel__connect_to_operator_with_msg
   (subject_alias з Use Case 3)

Edges: success / limit / error — обов'язково.

Use Case 3


Крок 5. П'ять контрольних запитів (self-check)

# Запит Очікування
1 «Geralt» found — warrior, north
2 «dragon from Mars» not_found
3 «something cheap» found або уточнення (не тиша)
4 «Оператор» / handoff connect edges
5 Невідомий intent fallback categorizer

Кожен прогін — окремий Run або скидання state; фіксуйте edge у Runs.

Troubleshooting

Симптом Що перевірити
Завжди not_found Filters vs seed CSV; регістр category/faction
AI «вигадує» товар Lookup має йти з CD, не лише з LLM text
Повторні уточнення без кінця Ліміт retry → handoff
Handoff без limit edge Edge-driven flow

Self-check

Самостійне завдання

Додайте MessageKeyboard після found: «Ще пошук» → loop на WaitForInput; «В меню» → головне меню capstone.

Довідкові посилання

Працюєте з власним ШІ-агентом?Встановіть відкритий skill, щоб ваш ШІ-агент працював з актуальною офіційною документацією ConnectiveOne.Отримати skillПотрібна підтримка?Не знайшли відповідь або потрібна допомога команди ConnectiveOne? Створіть запит у Client Portal.Створити запит