# Про категоризацію листів з пошти за допомогою AI

Категоризація листів з пошти дозволяє автоматично визначати категорію вхідних листів за допомогою штучного інтелекту та передавати їх операторам для швидкої обробки. Це зменшує необхідність ручної обробки та покращує швидкість реагування на запити клієнтів.

## Контекст і проблема

У багатьох випадках потрібно автоматично обробляти вхідні листи:
- Велика кількість листів потребує швидкої обробки
- Різні типи запитів потребують різних операторів або тем
- Ручна категоризація займає багато часу
- Потрібна швидка реакція на запити клієнтів

Категоризація за допомогою AI вирішує цю задачу, дозволяючи автоматично визначати категорію листа та передавати його відповідному оператору.

## Основні концепції

### Етапи обробки листа

**Етап 1: Отримання листа**
- Блок `receive_email_message` автоматично зчитує нові листи
- Текст листа зберігається в `email_message`
- Тема листа зберігається в `email_subject`
- Адреса відправника зберігається в `email_to`

**Етап 2: Категоризація за допомогою AI**
- Блок `fastline_completion` використовує AI для аналізу тексту
- AI визначає найкращу категорію запиту
- Результат зберігається в `completion` (або вказана змінна)

**Етап 3: Передача в операторську панель**
- Лист з категорією передається в операторську панель
- Категорія відповідає темі (subject) в операторській панелі
- Тема повинна мати alias, який відповідає значенню AI

## Варіанти підходів

### AI категоризація vs ручна категоризація

**AI категоризація:**
- ✅ Плюси: Швидкість, автоматизація, масштабованість
- ❌ Мінуси: Можливі помилки, потрібне налаштування промпту

**Ручна категоризація:**
- ✅ Плюси: Точність, контроль
- ❌ Мінуси: Повільність, не масштабується

**Чому використовуємо AI:**
AI дозволяє автоматично обробляти велику кількість листів та швидко передавати їх операторам, що покращує швидкість реагування на запити клієнтів.

## Прийняті рішення

### Використання fastline_completion

Action `fastline_completion` використовується для аналізу тексту листа та визначення категорії. Промпт повинен:
- Описувати задачу категоризації
- Вказувати доступні категорії
- Повертати тільки одну категорію

### Відповідність alias тем

Значення, яке повертає AI, повинно точно відповідати alias теми в операторській панелі. Це забезпечує коректне призначення листа відповідній темі.

## Наслідки для користувачів і імплементації

### Для інтеграторів

При налаштуванні категоризації важливо:

1. **Налаштувати receive_email_message** — для отримання листів
2. **Створити промпт для AI** — з описом категорій та інструкціями
3. **Налаштувати теми в операторській панелі** — з alias, які відповідають категоріям AI
4. **Перевірити точність категоризації** — налаштувати промпт для кращих результатів

### Типові помилки

**Помилка:** AI повертає неправильну категорію  
**Проблема:** Недостатньо детальний промпт або некоректні інструкції  
**Рішення:** Покращити промпт, додати приклади та чіткі інструкції

**Помилка:** Лист не призначається темі  
**Проблема:** Alias теми не відповідає значенню AI  
**Рішення:** Перевірити відповідність alias тем значенням, які повертає AI

**Помилка:** Категоризація працює повільно  
**Проблема:** Використано повільну модель або великий промпт  
**Рішення:** Використати швидшу модель або оптимізувати промпт

## Приклади використання

### Конфігурація fastline_completion

```json
{
  "model": "gpt-4o-mini",
  "temperature": 0.3,
  "prompt": "Тобі потрібно категоризувати електронні листи клієнтів. На основі наданого повідомлення '{{email_message}}' та теми '{{email_subject}}', визнач найкращу відповідну тему з наведених: консультація, скарга, уточнення. Повертай лише одну тему без додаткових пояснень.\nВажливо: обирай тільки одну категорію. Якщо жодна з них не підходить, поверни 'Інше' (other)."
}
```

### Конфігурація operator_panel__connect_to_operator_with_msg

```json
{
  "subject_alias": "{{completion}}"
}
```

## Пов'язані документи

- **Explanation:** [Підключення чату з оператором](/uk/operatorline/explanation/connect-chat-to-operator.md) — передача в операторську панель

