Инструменты генерации изображений AI, такие как Dall-E, Mid путешествие и Stable Diffusion, в наши дни набирают популярность. Как начинающий разработчик и овца, следящая за всевозможными тенденциями, вы можете быть заинтересованы в создании собственного приложения или функции в существующем приложении, которая будет генерировать изображения из текста.

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

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

Прежде чем мы продолжим,

Вам не нужны глубокие технические знания, чтобы следовать этому руководству, но вы знаете хотя бы несколько основ создания приложений с использованием фреймворка flutter и работы с REST API. Если вы готовы, давайте займемся этим.

Сервер

Стабильный сервер Diffusion AI — Dream AI (назовем его так)

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

Итак, я искал сервисы, предлагающие бесплатный уровень для размещения моделей стабильного распространения, и наткнулся на этот сайт под названием lightningAI (создатель pytorchLighting).

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

Начните с создания новой учетной записи для себя на https://lightning.ai/sign-up.

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

После того, как вы закончите процесс регистрации (у меня пока не запрашивалась платежная информация), вы должны увидеть панель инструментов, которая выглядит примерно так.

Начните с нажатия кнопки новое приложение в правом верхнем углу панели инструментов.

Выберите параметр Programmatic API model, это предустановка, все кодирование выполняется командой Lightning, вам не нужно ничего настраивать.

Разверните его бесплатно и подождите, пока статус не станет зеленым и не появится надпись «Включено».

Нажмите Открыть приложение, чтобы просмотреть развернутую конечную точку API.

Вы должны увидеть что-то вроде этого

Мы будем использовать это в нашем приложении для выполнения запросов к API.

Приложение

Фронтенд-приложение Flutter, так как его легко запустить на рабочем столе, в Интернете и на мобильных устройствах.

Мы будем использовать dio для выполнения HTTP-запросов.

import 'package:dio/dio.dart';

class ApiService {
  final Dio dio = Dio(); // dio instance

  Future<Response> getImage() async {
    try {
      Response response = await dio.post("YOUR_URL", // use your server URL here
      data: {
            "text" : "Here the text you want to send"
       });
      return response;
    } catch (e) {
      print(e); // error handling
    }
  }
}

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

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

Создайте класс ImageConverter

import 'dart:convert';
import 'dart:typed_data';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';

class ImageConverter {
  static Widget base64(String base64String) {
    Uint8List imageBytes = base64Decode(base64String);
    return Image.memory(imageBytes);
  }
}

Теперь мы можем использовать преобразованное изображение в дереве виджетов следующим образом:

....
Container(child: ImageConverter.base64("your-base64-encoded-image"));

Вот как вы можете бесплатно создать приложение для создания изображений AI.

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