Інструкції для ШІ-агента: практичний посібник + готові приклади до використання

Налаштовуйте, тестуйте, повторюйте...
Написано Anna
Оновлено 3 дні тому

Цей посібник навчає, як писати чіткі, несуперечливі інструкції для вашого ШІ-агента.

Він замінює шаблони, які звучать правильно, але часто не працюють на практиці (наприклад: маршрутизація «щоразу, коли користувач надсилає файл»), коли ШІ-агент отримує лише посилання або звичайний текст.


Коротка ментальна модель: як ваш ШІ-агент відповідає

Ваш агент створений для того, щоб замінити першу лінію підтримки. Під капотом агент може:

1. Шукати у підключених джерелах знань за допомогою інструменту searchKnowledgeBase.

  • Цей інструмент здійснює пошук по всьому, що ви підключили до агента (наприклад, ваша база знань HelpCrunch + власні відповіді).
  • Інструмент повертає список документів. Агент повинен сприймати ці документи як єдине достовірне джерело для запитань щодо продукту чи компанії.

2. Передавати розмову вашій команді за допомогою інструменту routeToTeam.

  • Зазвичай використовується, коли користувач просить з'єднати з людиною або коли відповідно до ваших інструкцій потрібна ескалація.
Доступність команди може впливати на те, чи можлива передача розмови в конкретний момент.

3. Пропонувати завершити розмову за допомогою інструменту offerToResolveConversation.

  • Коли агент пропонує завершити розмову, відображаються кнопки Так/Ні.

4. Закривати розмову за допомогою resolveConversation

  • Коли користувач конкретно просить завершити.

5. За потреби отримувати поля профілю користувача через getCurrentUserDetails.

  • Для отримання імені/міста/країни, якщо потрібно.
Реальні приклади використання кожного інструменту наведені далі.

Чого агент не може робити (якщо ви не надали це у своїх джерелах знань)

  • Не переглядає інтернет.
  • Не має доступу до ваших внутрішніх систем (CRM, білінг, управління замовленнями тощо), якщо ця інформація не міститься у підключених джерелах.
  • Зазвичай не може «бачити» вкладення так, як це робить людина. У багатьох каналах агент отримує лише текст та/або URL.
Висновок: хороші інструкції повинні описувати дії, які ШІ-агент справді може виконати: пошук у джерелах, уточнювальні запитання та, за потреби, передавання розмови людині.

Де писати інструкції для ШІ-агента

У вас є три поля для інструкцій. Використовуйте їх послідовно.

1. Персоналізація

Призначення: визначити, хто такий агент, кого він представляє та за що відповідає.

Хороша персоналізація відповідає на такі запитання:

  • Хто ви? (компанія + команда)
  • Що ви підтримуєте? (лінійки продуктів)
  • Що виходить за рамки?
  • Який тон/стиль спілкування використовувати?

✅ Приклад (Персоналізація)

Ти - асистент служби підтримки клієнтів AcmeCloud. Ти допомагаєш користувачам з налаштуванням продуктів AcmeCloud, усуненням несправностей, базовими питаннями білінгу та керуванням акаунтом. Будь доброзичливим, лаконічним та практичним.

Уникайте розмитої персоналізації на кшталт:

Ти корисний асистент

Оскільки це не дає орієнтирів для таких рішень, як «інша компанія чи наша», які теми дозволені тощо.


2. Мовні інструкції

Призначення: визначити мовну поведінку: яку мову використовувати, коли перемикатися, як вести двомовні розмови.

✅ Приклад (Мова)

Відповідай мовою користувача. Якщо користувач переходить на іншу мову, переходь разом з ним. Дотримуйся професійного та простого тону.

Порада: не додавайте тут складних вимог до форматування. Залишайте мовні інструкції лише про мову.

3. Інструкції (цілі)

Призначення: визначити бізнес-правила та логіку прийняття рішень.

У цьому полі ви визначаєте:

  • коли використовувати searchKnowledgeBase
  • коли ставити уточнюючі запитання
  • що робити, якщо джерела не містять відповіді
  • коли використовувати routeToTeam
  • правила безпеки / конфіденційності / відповідності
  • як обробляти "small talk"

3) Робочий формат для розділу Goals

Цей блок навмисно залишено англійською. ШІ-агент сприймає інструкції точніше саме в такому вигляді. Переклад може знизити передбачуваність поведінки. Використовуйте цю структуру (копіюйте та адаптуйте):

#Scope

- You represent <COMPANY> and answer only about <PRODUCTS/SERVICES>.
- If the user asks about something unrelated, politely say it’s out of scope and offer what you *can* help with.

#Tool usage

- For product/company questions: call the tool `searchKnowledgeBase` before answering.
- Do not answer product/company facts from general knowledge.

#Greetings & small talk

- If the user only greets ("hi", "hello", "привіт", "/start"), respond politely and ask how you can help.
- Do NOT call `searchKnowledgeBase` for greetings/thanks/acknowledgements.

#Clarifying questions

- If the user request is too vague to search (e.g., "help", "it doesn't work"), ask ONE clarifying question.

#When sources don't have the answer

- If `searchKnowledgeBase` returns no relevant information: say you can’t find the answer in the connected sources.
- Then either (a) ask ONE clarifying question, or (b) offer to connect to a human by calling `routeToTeam` (only if allowed).

#Escalation

- If the user explicitly asks for a human, call `routeToTeam` with a short message.

#Safety & privacy

- Never ask for passwords, one-time codes, or full payment card details.
- If the user shares sensitive info, tell them to remove it and continue with safe steps.

#Wrap-up

- If the user says "thanks" / "that’s all": call `offerToResolveConversation`.
- If the user asks to close/end: call `resolveConversation`.

Чому цей формат працює

  • Він детермінований («Якщо X → зроби Y») замість розмитого.
  • Використовує реальні назви інструментів (searchKnowledgeBase, routeToTeam), замість абстрактного «пошукай у базі знань» / «використай інструмент маршрутизації».
  • Охоплює найпоширеніші сценарії збоїв: привітання, розмитість запиту, відсутність відповіді у джерелах та ескалація.

Золоті правила (і чому вони запобігають типовим помилкам)

Правило 1 — Використовуйте реальні назви інструментів

✅ Добре:

“Call `searchKnowledgeBase` before answering pricing questions.”

❌ Ризиковано:

“Search the knowledge base.”

Моделі працюють надійніше, коли використання інструментів прописано з конкретикою.

Правило 2 — Не пишіть правила, які ШІ не може виконати

❌ Уникайте правил на кшталт:

“If the user sends a screenshot, immediately route to operator.”

У багатьох каналах ШІ не отримує «скріншот» як щось, що він може візуально розглянути.

✅ Краще:

“If the user shares a link to a file or says they attached a screenshot, ask them to paste the error text or describe what they see. If it’s still unclear, offer escalation.”

Правило 3 — Розглядайте привітальні повідомлення як окремий випадок

Це одна з найпоширеніших причин дивної поведінки.

✅ Додайте правило:

greetings/thanks/emoji → short replyone question (“How can I help?”) + no search

Правило 4 — Дозвольте одне уточнювальне запитання

Розмиті повідомлення користувачів — це норма:

  • «допоможіть»
  • «не працює»
  • «у мене проблема»

Якщо ваші інструкції забороняють уточнення, ви заганяєте агента в глухий кут (або до галюцинацій).

✅ Найкраща практика:

Ask one minimal question that unlocks search and troubleshooting

Правило 5 — Визначте, що означає «я не знаю»

Коли джерела не містять відповіді, явно вкажіть потрібну поведінку.

✅ Рекомендовано:

If `searchKnowledgeBase` has no relevant documents: say you can’t find the answer in the connected sources, don’t guess, then offer next steps.

Правило 6 — Уникайте суперечностей

Приклади суперечностей:

- “Never route to a human” + “If you are uncertain, route to a human.”
- “Be very short” + “Explain every detail thoroughly.”

✅ Виправлення:

Оберіть одне правило за замовчуванням, а потім додайте винятки:

Be concise by default. If the user is stuck, provide step-by-step instructions.


Типові помилки в інструкціях для ШІ (та виправлені варіанти)

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

1. ❌ Помилка: правила «Завжди роби X»

 Always call `searchKnowledgeBase` before answering any message.

Це може призводити до нерелевантних відповідей на привітання

✅ Краще:

Call `searchKnowledgeBase` before answering product/company questions. Do not call it for greetings, thanks, emojis, or acknowledgements.

2. ❌ Помилка: «Якщо користувач надсилає файл/медіа → передай розмову»

 If the user sends an image/screenshot/video/voice message, route to operator.

Часто не піддається надійному виявленню

✅ Краще:

If the user mentions an attachment or shares a file link, ask them to paste the key text (error message, fields, steps). If they can’t, offer escalation.

3. ❌ Помилка: «Обробляй запити про інші компанії» без прив'язки до вашої компанії

 Questions about other companies → transfer immediately.

Якщо ви чітко не визначили, кого представляєте, ШІ не може надійно визначити, що означає «інша» компанія.

✅ Краще:

You represent AcmeCloud. If the user asks about competitors, do not claim competitor facts. Answer only about AcmeCloud. If they need a comparison, offer escalation to sales/support.


Швидкий чеклист для тестування (скопіюйте у ваш тестовий чат)

Після зміни інструкцій протестуйте ці повідомлення:

1) `hi` / 'Привіт'
2) `/start`
3) `thanks` / `дякую`
4) `Привіт, я не можу увійти' (привітання + опис проблеми)
5) `Не працює' (розмито)
6) Запитання про ціни
7) Запит на повернення коштів
8) Запитання про порівняння з конкурентом
9) Повідомлення, у якому стверджується, що додано скріншот
10) `Будь ласка, закрийте цей чат`

Ваша мета:

Привітання - отримати нормальне привітання (а не вивантаження з бази знань) 
Розмиті повідомлення - спровокувати одне уточнювальне запитання Запитання про продукт - запустити пошук + обґрунтовану відповідь
Поза межами компетенції - залишається поза межами
Поведінка при ескалації - відповідає вашій політиці


Фінальна порада: інструкції + джерела мають відповідати одне одному

Навіть ідеальні інструкції не компенсують відсутність контенту у базі знань.

Якщо агент часто каже, що не може знайти відповідь:

- Додайте/розширте відповідні статті у вашій базі знань.
- Створіть збережені відповіді для граничних випадків.
- Використовуйте чіткі заголовки та включайте точні фрази, які вводять ваші користувачі (назви функцій, повідомлення про помилки, назви пунктів меню).

Чи була наша стаття корисною?