С развитием генерации изображений появилось множество отличных продуктов для создания картинок, таких как Dall-e, Flux, Stable Diffusion и другие. В этой статье вы узнаете, как разработать приложение для генерации изображений с ИИ на платформе Интеллос.

Чему вы научитесь

  • Способам создания Агента в Интеллос
  • Базовым понятиям об Агентах
  • Основам инженерии промптов
  • Использованию инструментов
  • Концепции галлюцинаций больших моделей

1. Настройте Stability API Key

Нажмите здесь, чтобы перейти на страницу управления ключами Stability API. Если вы ещё не зарегистрировались, перед переходом на страницу управления API вам предложат пройти регистрацию. После перехода на страницу управления нажмите copy, чтобы скопировать ключ.
Далее нужно ввести ключ в разделе Интеллос - Инструменты - Stability, выполнив следующие шаги:
  • Войдите в Интеллос
  • Откройте раздел Инструменты
  • Выберите Stability
  • Нажмите Authorize
Авторизация
  • Введите ключ и сохраните

2. Настройте поставщиков моделей

Чтобы улучшить взаимодействие, нам понадобится LLM, которая конкретизирует инструкции пользователя, то есть составит промпты для генерации изображений. Далее мы настроим поставщиков моделей в Интеллос, выполнив следующие шаги. Подключите собственного поставщика моделей, выполнив шаги на изображении ниже: Нажмите Ваш аватар - Настройки - Поставщик модели
Если вы не нашли подходящего поставщика модели, платформа groq предоставляет доступ к LLM, например Llama. Войдите на страницу управления groq API Нажмите Create API Key, задайте нужное имя и скопируйте API Key. Вернитесь в Интеллос - Поставщик модели, выберите groqcloud и нажмите Настроить.
Вставьте API Key и сохраните.
Вставьте API Key и сохраните

3. Создайте Агента

Вернитесь в Интеллос - Студия и выберите Создать с нуля.
В этом эксперименте нам достаточно разобраться с базовым использованием Агента.
Что такое АгентАгент — это система ИИ, которая имитирует поведение и возможности человека. Она взаимодействует со средой через обработку естественного языка, понимает входные данные и формирует соответствующий вывод. Агент также обладает способностью к «восприятию», может обрабатывать и анализировать данные в различных формах, а также вызывать и использовать различные внешние инструменты и API для выполнения задач, расширяя круг своих возможностей. Такая конструкция позволяет Агенту гибче справляться со сложными ситуациями и в определённой степени имитировать человеческие модели мышления и поведения.
Выберите Агент и введите имя.
Агент, введите имя
Далее вы попадёте в интерфейс оркестрации Агента, показанный ниже.
Выберите LLM. Здесь в качестве примера мы используем Llama-3.1-70B, предоставляемую groq:
Выберите Stability в разделе Инструменты:
Stability в разделе «Инструменты»

Напишите промпты

Промпты — это душа Агента, они напрямую влияют на качество вывода. Как правило, чем конкретнее промпты, тем лучше результат, но чрезмерно длинные промпты тоже могут привести к отрицательному эффекту. Инженерию подбора промптов называют Prompt Engineering. В этом эксперименте не переживайте, если вы ещё не освоили Prompt Engineering, — мы будем изучать её шаг за шагом позже. Начнём с самых простых промптов:
Каждый раз, когда пользователь вводит команду, Агент будет знать эту инструкцию системного уровня и поэтому поймёт, что при выполнении задачи пользователя по рисованию ему нужно вызвать инструмент stability. Например: нарисуй девушку, держащую раскрытую книгу.

Не хотите писать промпты? Конечно, можно и без них!

Нажмите Сгенерировать в правом верхнем углу блока «Инструкции».
Сгенерировать в правом верхнем углу блока «Инструкции»
Введите свои требования в поле Инструкции и нажмите Сгенерировать. Сгенерированные промпты появятся справа — это промпты, созданные ИИ.
Ваши требования в поле «Инструкции» и нажатие «Сгенерировать»
Однако, чтобы как следует разобраться в промптах, на начальных этапах не стоит полагаться на эту функцию.

Опубликуйте

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

Вопрос 1: Как задать стиль генерируемых изображений?

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

Вопрос 2: Как отклонять некоторые запросы отдельных пользователей?

Во многих бизнес-сценариях нам нужно избегать вывода нежелательного контента, но LLM зачастую «недалёки» и беспрекословно следуют инструкциям пользователя, даже если выводимый контент ошибочен. Явление, когда модель изо всех сил пытается ответить пользователю, выдумывая ложный контент, называется галлюцинациями модели. Поэтому нам нужно, чтобы при необходимости модель отклоняла запросы пользователя. Кроме того, пользователи могут задавать вопросы, не связанные с бизнесом, и нам также нужно, чтобы Агент отклонял такие запросы. Мы можем использовать формат markdown, чтобы разделить разные промпты по категориям, поместив промпты, которые учат Агента отклонять нежелательный контент, под заголовком «Constraints». Разумеется, этот формат нужен лишь для стандартизации, и вы можете применять собственный.
Например, спросим: что сегодня на ужин?
В более официальных бизнес-сценариях для отклонения запросов пользователя можно подключить библиотеку запрещённых слов. Добавьте ключевое слово «dinner» в разделе Добавить функцию - Модерация контента. Когда пользователь вводит это ключевое слово, приложение-агент выводит «Sorry, I don’t understand what you’re saying.»