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

AI-агенты

AI-агенты в FlutterFlow позволяют интегрировать взаимодействия на основе ИИ с использованием продвинутых LLM (больших языковых моделей) непосредственно в ваше приложение. AI-агент — это, по сути, настраиваемый чат-бот или сервис на основе ИИ, определяемый и управляемый в FlutterFlow.

Выбрав провайдера (Google, OpenAI или Anthropic), модель (например, GPT-4, Claude, Gemini) и указав системные инструкции и предзагруженные сообщения, вы можете создать агента для обработки ввода пользователя с учетом контекста.

Вот несколько примеров AI-агентов:

  • AI-стилист: В приложении для электронной коммерции в сфере моды AI-агент анализирует фото предметов одежды, загруженные пользователями из их гардероба, и предоставляет советы по стилю на основе комбинаций цветов, стилей, сезонов и индивидуальных предпочтений.
  • Умный помощник по рецептам: AI-агент в кулинарном приложении, который предлагает рецепты на основе имеющихся у пользователя ингредиентов, диетических ограничений или предпочтений в еде и предлагает интерактивные инструкции по приготовлению.
  • AI-тьютор или преподаватель: Конверсационный агент в образовательных приложениях, который помогает пользователям изучать сложные темы, предоставляя пошаговые объяснения, отвечая на последующие вопросы или адаптируя контент под темп обучения.
Предварительные требования

Перед началом настройки AI-агентов убедитесь, что вы:

  1. Выполнили все шаги в Настройка Firebase. Обратите внимание, что при настройке тщательно следуйте шагам 5 и 8 из раздела Разрешить FlutterFlow доступ к вашему проекту, чтобы правильно добавить роль Администратор Cloud Functions пользователю firebase@flutterflow.io.
  2. Обновили проект Firebase до плана Blaze, поскольку мы полагаемся на Firebase Cloud Functions для безопасной обработки коммуникаций, связанных с ИИ.

Создание AI-агента

Чтобы создать AI-агента, выберите вкладку Agents в левом меню навигации, затем нажмите кнопку (+). Укажите описательное Имя агента (например, "ShoppingAssistant") и нажмите Create.

к сведению

На базовом плане вы можете создать один AI-агент, а на плане Growth и выше — неограниченное количество AI-агентов.

После создания агента настройте его с использованием следующих опций:

Модельный промпт

  • Описание: Краткое объяснение того, что делает AI-агент. Обратите внимание, что оно не отправляется в модели ИИ.
  • Системное сообщение: Определяет роль ИИ и то, как он должен вести себя при ответе пользователям. Например, «Вы — AI-стилист по моде…» указывает агенту отвечать как профессиональный стилист, сосредотачиваясь на нарядах, цветах и предлагаемых комбинациях.

Предзагруженные сообщения

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

  • Роль: Указывает, от кого сообщение — от Пользователя или Помощника.
  • Сообщение: Фактический текст ввода, который может отправить пользователь или помощник.
  • Пример:
    • Роль = Пользователь: "Какой наряд подойдет к моему среднему тону кожи в солнечный день?"
    • Роль = Помощник: "Для вашего среднего тона кожи в солнечный день отличным вариантом будет пастельная блузка с белыми чиносами! Рассмотрите добавление солнцезащитных очков и удобной обуви."
подсказка

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

Настройки модели

  • Провайдер: Позволяет выбрать поставщика ИИ для этого агента. В настоящее время мы поддерживаем OpenAI, Google и Anthropic.
    • OpenAI и Anthropic: Если вы выберете OpenAI или Anthropic, FlutterFlow создаст Cloud Function в Firebase для безопасной передачи запросов в API ИИ. Поэтому ваш проект Firebase должен быть на плане Blaze (платном), чтобы развернуть необходимую облачную функцию. Обратите внимание, что развернутая облачная функция будет доступна только аутентифицированным пользователям.
    • Google: При выборе Google в качестве провайдера вам нужно включить следующее в вашем проекте Firebase.
      • Аутентификация Firebase: Это обеспечивает безопасные взаимодействия между пользователями и вашими AI-агентами.
      • Vertex AI: Vertex AI — это комплексная платформа ИИ от Google, используемая для управления и развертывания моделей машинного обучения. FlutterFlow внутренне использует пакет firebase_vertexai для интеграции моделей ИИ Google в ваш проект, подключенный к Firebase.
  • Модель: Выберите из списка доступных моделей для указанного провайдера. Модели отличаются по возможностям, поддерживаемым параметрам и структуре затрат.
  • API-ключ: Введите API-ключ вашего провайдера здесь при использовании OpenAI или Anthropic. FlutterFlow безопасно хранит этот ключ в развернутой облачной функции, чтобы он оставался скрытым от конечных пользователей и сетевых запросов. Если вы используете Google, поле API-ключа не отображается, поскольку аутентификация управляется через Vertex AI в вашем проекте Firebase.
подсказка

Вы можете получить API-ключ OpenAI на странице OpenAI API Keys, а API-ключ Anthropic — в Anthropic Console.

Опции запроса

Определите типы входных данных, которые пользователи могут отправлять AI-агенту. Вы можете включить один или несколько следующих вариантов:

  • Текст: Позволяет пользователям отправлять письменные сообщения, вопросы или промпты.
  • Изображение: Позволяет пользователям загружать фото для анализа визуального контента ИИ, такого как объекты, стили или сцены.
  • PDF (только для агентов Anthropic и Google): Позволяет пользователям отправлять PDF-документы, позволяя ИИ извлекать и интерпретировать информацию из файлов, таких как резюме, отчеты или формы.
  • Аудио (только для агентов Google): Поддерживает голосовой ввод, позволяя пользователям записывать или загружать аудиоклипы для транскрипции, анализа настроения или команд на основе голоса.
  • Видео (только для агентов Google): Позволяет пользователям отправлять видеофайлы, позволяя ИИ анализировать визуальные элементы.

Выбор нескольких типов ввода упрощает пользователям четкое выражение того, что им нужно. Вместо опоры только на текстовые описания пользователи могут комбинировать входные данные. Например, в AI-агенте-стилисте включение как Текста, так и Изображения позволяет пользователям либо описывать наряды словами, либо загружать фото одежды для персонализированного анализа.

Опции ответа

Определяет тип вывода, который вы хотите получить от агента. Вы можете выбрать из следующих вариантов:

  • Текст: Возвращает обычный текстовый ответ.
  • Markdown: Позволяет использовать более богатое форматирование (заголовки, списки, ссылки), если вы отображаете контент как markdown. Например, чат-бот FAQ, который использует отформатированные маркеры, жирный или курсивный текст для выделения ключевой информации.
  • JSON: Возвращает структурированные данные, которые можно парсить программно. Например, приложение для поиска ресторанов может нуждаться в структурированных данных, например, { name: 'Pizza Palace', distance: '2.4 miles' }, для отображения динамической карты.

Параметры модели

Здесь вы можете тонко настроить, как агент генерирует ответы.

  • Температура: Контролирует, насколько креативными или случайными могут быть ответы ИИ по шкале от 0 до 1. Низкое значение (например, 0.1) делает ответы более фактическими и последовательными. Высокое значение (например, 1.0) делает ответы более креативными и разнообразными (например, для мозгового штурма идей).
  • Макс. токены: Ограничивает общее количество токенов, используемых, включая как запрос пользователя, так и ответ агента. Настройка этого помогает управлять затратами и обеспечивает краткие взаимодействия.
  • Top P: Еще одна техника для контроля разнообразия слов, которые ИИ учитывает. Обычно оставляется по умолчанию, если не требуется тонкая настройка сэмплинга.

Например, в Помощнике по написанию блога вы можете установить умеренную или высокую температуру для креативных формулировок и высокий лимит макс. токенов для подробных абзацев. Напротив, Финансовый чат-бот выиграет от низкой температуры для предоставления последовательных, точных и стабильных ответов без ненужной креативности.

Настройки развертывания

Здесь вы можете тонко настроить, как выполняется ваш AI-агент. Эти настройки помогают сбалансировать производительность, безопасность и стоимость для вашего случая использования.

  • Требовать аутентификацию: По умолчанию включено, чтобы ограничить доступ только аутентифицированным пользователям Firebase. Когда выключено, любой может вызвать вашего агента, что может представлять риск безопасности.
  • Тайм-аут (секунды): Определяет, как долго функция агента может выполняться перед завершением. Например, значение 60 позволяет функции до 60 секунд на завершение. Увеличьте, если ваш агент выполняет длительные операции или обрабатывает сложную логику.
  • Память: Выделяет память для вашего агента. Больше памяти улучшает производительность для тяжелых нагрузок, но может стоить дороже. Например, выберите 256MB для стандартных задач или 512MB+ для агентов, обрабатывающих большие данные или сложную логику.
  • Мин. экземпляры: Количество экземпляров, которые всегда держатся теплыми и готовыми. Установите 0, чтобы минимизировать затраты. Например, установка Min Instances > 0 может улучшить скорость ответа, избегая холодных стартов, но это влечет дополнительные затраты. Установите 0 для разработки или сред с низким трафиком.
  • Макс. экземпляры: Максимальное количество экземпляров, которые могут выполняться одновременно. Помогает масштабироваться под нагрузкой и избегать троттлинга. Например, установка Max Instances = 10 ограничивает параллельность до 10 запросов.

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

Для агентов, не от Google

После успешного развертывания агента любые изменения в его конфигурации — такие как изменение системного сообщения, модели или температуры — потребуют повторного развертывания агента. Для агентов Google конфигурация хранится на стороне клиента, поэтому повторное развертывание не требуется.

Теперь вы можете использовать AI-агента в логике вашего приложения FlutterFlow с помощью следующих действий.

Отправка сообщения [Действие]

Действие Send Message позволяет вашему приложению передавать ввод пользователя (например, текст или изображения) выбранному AI-агенту и получать ответ. Например, вы можете добавить это действие, когда пользователь нажимает кнопку «Отправить» после ввода в текстовое поле. AI-агент затем может ответить на основе своих системных инструкций, предзагруженных сообщений и настроек модели.

Вы можете настроить следующие опции для этого действия:

  • Выбор агента: Здесь вы выбираете конкретный AI-агент, который вы ранее настроили.
  • ID разговора: ID разговора — это уникальный идентификатор, который вы назначаете для поддержания контекста и непрерывности в нескольких взаимодействиях в рамках одного разговора. Использование последовательного ID (например, user123_AIStylist_202503181200) позволяет ИИ помнить прошлые взаимодействия и сохранять разговоры последовательными и контекстными.
  • Текстовый ввод: Здесь вы указываете сообщение или вводимый текст пользователя, который будет обрабатывать AI-агент. Обычно этот ввод поступает из состояния виджета (например, TextField).
  • Ввод изображения: Если ваш агент поддерживает обработку изображений, вы можете предоставить изображение.
  • Ввод аудио: Если ваш агент поддерживает обработку аудио, вы можете передать аудиофайлы.
  • Ввод видео: Если ваш агент может анализировать видеоконтент, предоставьте видеофайл.
к сведению
  • Имя переменной вывода действия: Это поле хранит ответ AI-агента, чтобы вы могли отобразить его пользователям или дальше обработать.

ai-agent-send-message-action.avif

Очистка истории чата [Действие]

Действие Clear Chat History позволяет очистить запомненный контекст. Оно принимает ID разговора и перестает ссылаться на существующий ID потока при следующей отправке сообщения. Например, вы можете добавить это действие на кнопку обновления внутри чата, чтобы вручную сбросить разговор и начать новый с новым контекстом.

ai-agent-reset-action.avif