Наш почтовый ассистент уже умеет листать базу знаний. Но что, если клиент задаст вопрос за пределами базы знаний — например: что входит в последний релиз Интеллос? Если база знаний ещё не обновлена, рабочий процесс окажется в тупике. Чтобы это исправить, нужно дать ему навык живого поиска!

Инструменты

Инструменты
Инструменты — это суперсила вашего AI-процесса. Раздел Инструменты в Интеллос — это как супермаркет плагинов. Он наполнен готовыми суперсилами: поиск в интернете, прогноз погоды, рисование изображений или сложные математические вычисления. Вы просто устанавливаете их и подключаете к своему рабочему процессу в несколько кликов. Теперь продолжим улучшать текущий рабочий процесс.

Практика 1: Доработка области подпроцесса в узле Итерация

Мы добавим в наш ассистент новую логику: сначала проверить базу знаний; если ответа там нет — выполнить поиск в интернете. Чтобы сосредоточиться на новой логике, оставим только эти узлы: Пользовательский ввод, Экстрактор параметров и Итерация.

Шаг 1: Запрос к базе знаний и Судья

1

Войдите в Итерацию

  1. Кликните, чтобы войти в область подпроцесса узла Итерация.
  2. Оставьте узел Поиск знаний и убедитесь, что переменная запроса — {x} item.
  3. Удалите предыдущий узел LLM.
2

Добавьте Судью (узел LLM)

Добавьте узел LLM сразу после узла Поиск знаний. Его задача — определить, действительно ли информация из базы знаний может ответить на вопросы.
  • Для сессии Контекст: выберите Knowledge Retrieval / {x} result Array [Object] из узла Поиск знаний
  • Системный промпт:
  • Сообщение пользователя:
Настройки LLM
Вот как это выглядит на холсте.
Предпросмотр рабочего процесса

Шаг 2: Создание развилки

1

Добавьте узел ЕСЛИ/ИНАЧЕ

После узла LLM добавим узел ЕСЛИ/ИНАЧЕ. Задайте правило: если вывод LLM содержит Information not found in knowledge base.Это означает, что мы не можем ответить с помощью информации из базы знаний.
Добавление узла ЕСЛИ/ИНАЧЕ
2

Добавьте инструмент для поиска

Подключим инструмент поиска после ветки IF. Это означает, что когда в базе знаний не находится релевантная информация для ответа, мы используем веб-поиск, чтобы найти ответы.
  1. После узла IF кликните по значку плюса (+) и откройте вкладку Инструменты.
  2. В строке поиска введите DuckDuckGo. Плагин DuckDuckGo уже доступен в Интеллос и не требует API-ключа.
Поиск инструмента
3

Выберите DuckDuckGo Search

Раскройте DuckDuckGo и нажмите DuckDuckGo Search.
Выбор DuckDuckGo Search
4

Задайте запрос

Панель настроек инструмента откроется сразу. Перейдите к полю Query string и выберите Iteration/{x} item. Остальные настройки оставьте по умолчанию.
Некоторые инструменты поиска (например, Google через SerpApi) требуют API-ключ. Он указывается один раз в настройках авторизации инструмента. Храните ключ в безопасности и не делитесь им с другими.
Добавление строки запроса
5

Настройте оба пути

Теперь нам нужны разные способы ответа в зависимости от того, по какому пути мы идём.Путь ответа на основе поискаДобавьте новый узел LLM, чтобы ответить на вопрос на основе результатов поиска. Подключите его к узлу DuckDuckGo Search.Система:
Сообщение пользователя:
Промпт для LLM 2
Путь поиска по базе знанийПосле узла Else добавьте новый узел LLM для обработки ответов на основе базы знаний.Система:
Сообщение пользователя:
Промпт для LLM 3
6

Объедините информацию

  1. В подпроцессе (внутри блока Итерации) добавьте узел Агрегатор переменных, который в самом конце соединяет и LLM 2, и LLM 3.
  2. На панели Агрегатор переменных выберите переменные LLM 2/{x}text String и LLM 3/{x}text String в качестве назначаемых переменных.
Так мы сводим два возможных ответа в один путь.
Настройка Агрегатора переменных
Вот как теперь выглядит рабочий процесс.
Предпросмотр рабочего процесса 2

Шаг 3: Финальная сборка письма

Теперь, когда наши логические ветки завершили обработку, объединим все ответы в одно аккуратное письмо.
1

Настройте вывод Итерации

Кликните по узлу Итерация и задайте {x}Variable Aggregator/{x}output String в качестве выходных переменных.
Вывод Итерации
2

Подключите итоговый LLM

После узла Итерация подключите новый узел LLM, чтобы свести воедино все выводы. Можете использовать промпт ниже.Система:
Сообщение пользователя:
Промпт для LLM 4
3

Завершите узлом вывода

После узла LLM добавьте узел End. Задайте выходную переменную LLM 4/{x}text String.
Настройка вывода
Теперь мы полностью завершили настройку и конфигурацию рабочего процесса. Наш почтовый ассистент может отвечать на вопросы на основе базы знаний и при необходимости использовать веб-поиск для дополнительных ответов.
Предпросмотр финального рабочего процесса
Попробуйте отправить письмо с вопросом, которого точно нет в базе знаний. Посмотрим, успешно ли AI использует веб-поиск, чтобы найти связанные ответы.

Мини-задание

  1. Какие ещё условия можно выбрать в узле ЕСЛИ/ИНАЧЕ?
  2. Просмотрите раздел Инструменты — сможете ли вы добавить ещё один инструмент в этот рабочий процесс?