Умный роутер (Smart Router)
Описание
Этот компонент представляет собой логический разветвитель на базе искусственного интеллекта, расширяющий возможности стандартных условных операторов. В отличие от жесткого сопоставления текстовых строк, данный модуль использует языковую модель для семантического анализа и классификации входящих запросов.
Особенности использования
- Вы можете использовать Smart Router в любой части потока, где применим компонент If-Else.
- В качестве эксперимента попробуйте создать поток по примеру для If-Else, но замените его на Smart Router.
- Вместо использования регулярных выражений (
regex), используйте таблицу Routes (Маршруты) для определения выходных путей для ваших сообщений.
Таблица маршрутов (Routes)
Таблица Routes определяет категории для распределения запросов. Например, для анализа тональности текста таблица маршрутов может выглядеть следующим образом:
| Имя маршрута (Route Name) | Описание маршрута (Route Description) | Сообщение маршрута (Route Message) |
|---|---|---|
| Positive (Положительный) | Положительный отзыв, удовлетворенность или комплименты. | - |
| Negative (Отрицательный) | Жалобы, проблемы или неудовлетворенность. | - |
| Neutral (Нейтральный) | Вопросы, запросы информации или нейтральные утверждения. | Thank you for your inquiry! (Спасибо за ваш запрос!) |
Этот компонент создает порты для маршрутов Positive, Negative и Neutral. Когда LLM классифицирует входящий текст, она направляет его на выходной порт соответствующей категории по имени маршрута. Для маршрутов Positive и Negative передается исходный текст сообщения. Для маршрута Neutral вместо исходного текста отправляется сообщение маршрута: «Thank you for your inquiry!».
Параметр Override Output (Переопределить вывод) позволяет отправлять одно и то же сообщение независимо от того, какой маршрут выбрала LLM. Сообщение переопределения имеет приоритет над всеми остальными вариантами вывода и полностью заменяет как исходный текст, так и любые пользовательские сообщения маршрутов. В примере с анализом тональности, если установить Override Output на «Message received», все маршруты будут отправлять это сообщение.
Параметр Additional Instructions (Дополнительные инструкции) дает модели вспомогательные указания. Используйте заполнитель {input_text} для ссылки на классифицируемый текст и {routes} для обращения к списку имен маршрутов через запятую.
Например, чтобы добавить контекст конкретной области, укажите в качестве пользовательского промпта следующее:
The text "{input_text}" is from a customer support context.
Consider the urgency and emotional tone when choosing from {routes}.Параметры компонента
| Название (Name) | Тип (Type) | Описание (Description) |
|---|---|---|
| Language Model | LanguageModel | Входной параметр. Языковая модель, используемая для классификации. Она получает входной текст и доступные категории, после чего возвращает точное имя категории, которая совпала. Обязательно. |
| Input | String | Входной параметр. Основной текстовый ввод для классификации. Обязательно. |
| Routes | Table | Входной параметр. Таблица, определяющая категории для маршрутизации. Каждая строка содержит имя маршрута (обязательно), описание для помощи LLM в понимании категории (опционально) и пользовательское выходное сообщение (опционально). Компонент создает по одному выходному порту для каждой категории. |
| Override Output | Message | Входной параметр. Опциональное переопределяющее сообщение, которое имеет приоритет над всеми остальными вариантами вывода. При заполнении оно заменяет и исходный текст, и любые сообщения маршрутов для всех веток. Продвинутая настройка. |
| Additional Instructions | String | Входной параметр. Дополнительные инструкции для классификации на базе LLM. Добавляются к базовому промпту классификации, который уже включает таблицу маршрутов. Используйте {input_text} для ссылки на текст и {routes} для списка имен маршрутов через запятую. |
| Include Else Output | Boolean | Входной параметр. Включает выходной порт Else для случаев, когда текст не подошел ни под один маршрут. Если отключено, при отсутствии совпадений вывод не производится. По умолчанию: false. |
| Else | Message | Выходной параметр. Доступен только если параметр Include Else Output установлен в значение true. Передает переопределяющее сообщение (если оно задано) или исходный входной текст, если ни один маршрут не подошел. |