Что такое слоты¶
Что такое слоты¶
Содержание инструкции:
Определение¶
Слоты — это механизм для хранения информации, которую помощник собирает в процессе диалога с пользователем. Слоты используются для сохранения ключевых данных, которые могут быть полезны для выполнения задач или принятия решений в рамках диалога.
Слоты определяются в файле domain.yml
.
Типы слотов¶
Тип слота | Хранение | Применение | Особенности |
---|---|---|---|
Text | Строки | Имена, адреса | Частичный поиск |
Boolean | True/False | Подтверждения | Бинарное состояние |
Categorical | Список значений | Категории | Фиксированный набор |
Float | Числа с точкой | Цены, метрики | Математические операции |
List | Массив значений | Множественный выбор | Гибкая структура |
Any | Любой тип | Универсальное | Максимальная гибкость |
Unfeaturized | Любые данные | Технические | Без влияния на ML |
1. Текстовые слоты (Text Slot)¶
- Тип:
text
. - Описание: Хранит текстовые данные.
- Применение: Имена, адреса, описания, любые текстовые значения
-
Особенности:
- Может хранить любые строки
- Поддерживает частичный поиск
- Идеален для свободной текстовой информации
Пример записи в файле domain.yml
:
2. Логические слоты (Boolean Slot)¶
- Тип:
bool
- Описание: Хранит логические значения (true/false)
-
Применение:
- Подтверждения
- Флаги состояний
- Да/Нет вопросы
-
Особенности:
- Бинарное значение
- Простое управление состоянием
- Эффективное использование в условиях
Пример записи в файле domain.yml
:
3. Категориальные слоты (Categorical Slot)¶
- Тип:
categorical
- Описание: Хранит значения из предопределенного списка
-
Применение:
- Категории товаров
- Типы услуг
- Ограниченный выбор опций
-
Особенности:
- Фиксированный набор значений
- Валидация на уровне типа
- Удобная работа с ограниченным выбором
Пример записи в файле domain.yml
:
4. Числовые слоты (Float Slot)¶
- Тип:
float
- Описание: Хранит числовые значения с плавающей точкой
-
Применение:
- Цены
- Координаты
- Метрические данные
-
Особенности:
- Работа с дробными числами
- Математические операции
- Точное представление числовых значений
Пример записи в файле domain.yml
:
5. Список слотов (List Slot)¶
- Тип:
list
-
Описание: Хранит список значений. Длина списка, хранящегося в слоте, не влияет на диалог. Имеет значение только то, равна ли длина списка нулю или отличной от нуля.
-
Применение:
- Множественный выбор
- История действий
- Накопительные данные
-
Особенности:
- Гибкая структура
- Возможность добавления/удаления элементов
- Работа с коллекциями данных
Пример записи в файле domain.yml
:
6. Слоты любого типа (Any Slot)¶
- Тип:
any
- Описание: Хранит значения любого типа
-
Применение:
- Универсальное хранение произвольных значений (они могут быть любого типа, например, словари или списки)
- Сложные структуры данных
- Экспериментальные сценарии
-
Особенности:
- Максимальная гибкость
- Возможность хранения любых данных
- Требует дополнительной валидации
Пример записи в файле domain.yml
:
7. Unfeaturized Slot¶
- Тип:
unfeaturized
- Описание: Хранит данные, но не влияет на предсказание следующего действия (не используется в ML-модели)
-
Применение:
- Временные данные
- Промежуточные значения
- Технические параметры
-
Особенности:
- Не влияет на предсказания
- Чистое хранение
- Быстрый доступ
Пример записи в файле domain.yml
: