Реалізація бота з генерацією зображень (AI) у мобільному додатку

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Реалізація бота з генерацією зображень (AI) у мобільному додатку
Середній
~3-5 днів
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Реалізація бота з генерацією зображень (AI) у мобільних додатках

Генерація зображень на мобільному — завжди серверна задача. Stable Diffusion на пристрої технічно можлива на сучасних iPhone (Core ML) та флагманських Android, але час генерації 30–60 секунд та перегрів роблять це непридатним для продакшн-додатка. Працюємо через API.

Вибір генеративної моделі

DALL-E 3 (OpenAI). Добре розуміє складні текстові описи, суворо дотримується промпту. Фіксовані ціни за зображення. Висока якість, особливо для реалістичних сцен та ілюстрацій. Обмеження: не можна робити портрети реальних людей, сувора модерація.

Stable Diffusion через Replicate / Modal / Runpod. Open-source модель, запускається на арендованих GPU. Величезна гнучкість: LoRA-адаптери для стилізації, ControlNet для контролю композиції, інпейнтинг. Дешевше DALL-E на великих обсягах. Моделі: SDXL, Flux.1, SD 3.5.

Midjourney API. Офіційного API немає — тільки через неофіційний wrapper або Discord-інтеграцію. Не рекомендуємо для продакшну через нестабільність.

Ideogram / Recraft. Хороша робота з текстом на зображеннях (логотипи, постери) — у DALL-E та SD з цим традиційно проблеми.

Асинхронна генерація: обов'язковий паттерн

Генерація займає 3–15 секунд залежно від моделі та складності. Мобільний клієнт не може тримати HTTP-з'єднання відкритим — таймаут мережі або перехід у фон перерве запит.

Правильний паттерн: polling або WebSocket.

Polling:

POST /generate → { "task_id": "abc123", "status": "queued" }
GET /tasks/abc123 → { "status": "processing", "progress": 40 }
GET /tasks/abc123 → { "status": "done", "image_url": "..." }

WebSocket / SSE: сервер пушить оновлення по мірі готовності.

На Android — WorkManager для фонових запитів з polling, щоб генерація продовжувалась навіть якщо користувач згорнув додаток. На iOS — URLSession background configuration.

// iOS: фонова загрузка результату
let config = URLSessionConfiguration.background(withIdentifier: "image.generation")
let session = URLSession(configuration: config, delegate: self, delegateQueue: nil)

func pollTaskStatus(taskId: String) {
    var components = URLComponents(string: "\(baseURL)/tasks/\(taskId)")!
    let task = session.dataTask(with: components.url!) { [weak self] data, _, _ in
        guard let result = try? JSONDecoder().decode(GenerationTask.self, from: data!) else { return }
        if result.status == "done" {
            self?.downloadAndDisplay(url: result.imageUrl!)
        } else {
            DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
                self?.pollTaskStatus(taskId: taskId)
            }
        }
    }
    task.resume()
}

Prompt-інженеринг у мобільному боті

Користувачі мобільного додатка пишуть короткі запити: «нарисуй кота», «логотип для кав'ярні». Це погані промпти для генерації. Бот повинен збагачувати їх перед відправленням до моделі.

Два підходи:

LLM-розширення промпту. GPT-4o mini бере користувацький запит та перетворює його на розгорнутий промпт з деталями стилю, освітлення, настрою.

PROMPT_ENHANCER = """
Ти допомагаєш покращувати промпти для генерації зображень.
Візьми коротке описання та розширь його до детального промпту.
Додай стиль, освітлення, настрій. Відповідь тільки на англійській —
це мова Stable Diffusion.
Максимум 200 слів.
"""

Параметричний UI. Користувач вибирає стиль (реалізм / аніме / олія / акварель) через кнопки, потім пише описання. Стиль додається до промпту програмно. Простіше, передбачуваніше.

Negative prompt та модерація

Для Stable Diffusion negative prompt знижує артефакти. Базовий: blurry, low quality, deformed, extra limbs, watermark. Для дитячих/сімейних додатків додаємо фільтрацію контенту до negative prompt та safety checker на серверній стороні.

Перед відправленням користувацького запиту — OpenAI Moderation API або власний фільтр. Відхилені запити логуються.

UI для генерації

Процес генерації повинен бути візуально цікавим, а не просто спіннером:

  • Анімований placeholder як progressbar або shimmer ефект
  • Показ етапів: «Аналізую запит → Генерую → Обробляю»
  • Після готовності — плавне появлення зображення (fade in / reveal animation)

Результат: кнопки «Завантажити», «Поділитись», «Згенерувати ще», «Змінити промпт». Галерея попередніх генерацій у межах сесії.

Варіації та редагування

DALL-E 3 підтримує inpainting — заміну частини зображення. Stable Diffusion через img2img дозволяє ітерувати за базовим зображенням. Для мобільного UI це означає інструмент виділення області (маска) поверх зображення — як гумка.

Процес впровадження

Вибір генеративного API під завдання та стиль додатка.

Серверна частина: очередь завдань, асинхронна генерація, зберігання результатів.

Prompt-збагачення через LLM.

Мобільний UI з анімацією прогресу та галереєю.

Тестування з реальними користувацькими запитами, налаштування модерації.

Часові орієнтири

Базовий бот з DALL-E 3 / Replicate API — 1 тиждень. Зі варіаціями стилів, img2img, prompt-інженерингом та галереєю — 3–4 тижні.