Перейти к основному содержимому

AI-агент

Блок AI-агент в J‑Graph позволяет создавать и настраивать AI-агентов. Агенты используют LLM, чтобы гибко поддерживать диалог и обрабатывать любые запросы пользователей.

Каждый агент имеет свою роль и цель. Например, агент может быть переводчиком, который работает с несколькими языками.

Блок AI-агент

Чтобы начать работу:

  1. Настройте подключение к Caila.
  2. Добавьте блок AI-агент.

LLM для агента

Чтобы обращаться к LLM, агент использует сервис openai-proxy на платформе Caila.

предупреждение

Вы можете использовать LLM только в платном тарифе Caila.

Добавьте токен в JAICP, чтобы начать работу.

Токен доступа к Caila

Для использования сервисов и генеративных моделей из Caila в сторонних приложениях, в том числе JAICP, нужен персональный токен доступа. Чтобы выпустить токен:

  1. Перейдите в Caila.

    подсказка

    Caila и Conversational Cloud использует общую базу аккаунтов, поэтому если вы зарегистрированы в Conversational Cloud, дополнительно регистрироваться в Caila не нужно.

  2. Перейдите на страницу Мое пространствоAPI-токены.

  3. В правом верхнем углу нажмите Создать токен.

  4. Придумайте имя токена, сгенерируйте его и скопируйте в буфер обмена.

Далее добавьте токен в JAICP:

  1. Перейдите в JAICP.

  2. В разделе Токены и переменные добавьте новый токен:

    • Название — LLM_API_KEY.
    • Значение — полученный токен Caila.

Добавление блока

Чтобы добавить блок в сценарий:

  1. Нажмите Добавить реакцию на шаге в J‑Graph.
  2. Выберите AI-агент в разделе Генеративный AI.
  3. Укажите параметры агента.
  4. Нажмите Сохранить.

Параметры

Основные

  • Идентификатор агента — каждый агент в сценарии должен иметь уникальный идентификатор. В одном шаге может быть только один блок AI-агент.

  • LLM — укажите LLM, которую будет использовать агент. Чтобы обращаться к LLM, агент использует сервис openai-proxy на платформе Caila. Вы можете посмотреть доступные модели и их стоимость на странице сервиса.

    предупреждение

    Параметры для переходов работают, только если LLM поддерживает function calling. Список моделей, которые поддерживают function calling, смотрите в документации OpenAI.

    Сайт OpenAI недоступен для российских IP-адресов.

  • Роль агента — роль или персона агента в диалоге. Например: Сотрудник банка. Влияет на тон общения и на то, как агент отвечает на вопросы о себе.

  • Цель агента — в диалоге агент будет пытаться выполнить цель. Например: Помоги пользователю сделать заказ.

  • Инструкции — инструкции для агента. Используйте, чтобы задать поведение агента. Пример: Отвечай только на языке пользователя. Сначала уточни, правильно ли ты понял вопрос.

подсказка

Иногда LLM может давать неожиданные ответы или сообщать неточные данные.

Мы рекомендуем подробно заполнять параметры Роль агента, Цель агента и Инструкции. Так вы сможете получать более предсказуемые и стабильные результаты.

Внутри всех полей вы можете использовать подстановки значений в скобках {{}}. Внутри скобок может находиться любое допустимое выражение на JavaScript — например, ссылка на встроенную переменную.

История диалога

Вы можете передать в агента историю предыдущего диалога с ботом. Так агент сможет учитывать контекст диалога:

  1. Включите параметр Передавать агенту историю диалога с ботом.
  2. Заполните параметр Число последних сообщений из истории.

Переходы в другие шаги

предупреждение
  • Если пользователь находится в диалоге с агентом:

    • По умолчанию бот может перейти в другой шаг только по глобальным интентам.
    • Бот не будет реагировать на события.
  • Используйте параметры, которые указаны ниже, чтобы изменить логику перехода в другие шаги.

  • Разрешить агенту переводить диалог на других агентов в сценарии — если настройка включена, агент сможет сам переводить диалог в другие шаги с блоком AI-агент.

    примечание

    Для этого параметра возможные переходы между агентами не отображаются на холсте J‑Graph.

    При выборе шага агент учитывает:

    • Роли и цели других агентов.

    • Названия шагов, которые содержат агентов.

      подсказка

      Мы рекомендуем давать шагам названия, которые сильно отличаются друг от друга. Агент может чаще ошибаться, если в сценарии есть шаги с похожими названиями, например: NoMatch1 и NoMatch2.

  • Следующий шаг, если агент выполнил цель — бот перейдет в этот шаг, если агент считает цель выполненной и у пользователя больше нет вопросов.

  • Следующий шаг, если у агента нет информации — бот перейдет в этот шаг, если агент считает, что запрос пользователя не относится к цели.

База знаний RAG

Вы можете подключить базу знаний к агенту, чтобы он учитывал данные из базы при составлении ответов. Подробнее о работе агента и подключении базы знаний смотрите в статье Использование базы знаний.

Аналитика

Агент проставляет следующий комментарий для каждой фразы пользователя: Фраза обработана тегом AIAgent.

В разделе АналитикаДиалогиФразы по этому комментарию вы можете найти фразы, которые были обработаны агентом.

Пример

В этом примере используется один AI-агент, который переводит тексты на любые языки.

Пример с блоком AI-агент
Параметры блока
  • Идентификатор агента — translator_agent.
  • LLM — gpt-4o.
  • Роль агента — Профессиональный переводчик.
  • Цель агента — Переведи текст на другой язык.
  • Инструкции — Если нужно, уточни у пользователя целевой язык. Дай 3 лучших варианта перевода.
  • Следующий шаг, если агент выполнил цель — Feedback.
  1. Если пользователь напишет переведи слово «радостный», то диалог перейдет в шаг Translation.

  2. В шаге Translation агент будет вести диалог с пользователем:

    1. Агент уточнит, на какой язык перевести слово.
    2. Агент предложит 3 варианта перевода.
  3. Если у пользователя больше нет вопросов, то диалог перейдет в шаг Feedback.

подсказка

Вы также можете использовать несколько агентов в сценарии. Смотрите статью Мультиагентный бот в J‑Graph.