Реалізація AI-аналізу тональності тексту (Sentiment Analysis) у мобільному додатку

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

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

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

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Реалізація AI-аналізу тональності тексту (Sentiment Analysis) у мобільному додатку
Середній
~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-аналізу тональності у мобільному додатку

Sentiment analysis у мобільному контексті вирішує конкретні завдання: автоматична модерація користувацьких відзивів, аналіз тональності чатів та коментарів у реальному часі, моніторинг фідбеку всередину додатка. Вибір між on-device моделлю та хмарним API визначає все — latency, приватність, вартість, точність.

On-device vs Cloud API

Cloud API (OpenAI, Google Cloud Natural Language, AWS Comprehend) — точність вище, особливо на неструктурованому тексті, але кожний запит коштує грошей та вимагає сети. Для продуктової аналітики (відзиви, опитування) — нормально. Для realtime аналізу кожного вводимого символу — ні.

On-device (CoreML + BERT / TensorFlow Lite + MobileBERT) — приватно, працює offline, нулева latency по сети. Мінус: модель важить 40–80 МБ, точність нижча на неоднозначних випадках, складніше підтримувати (переобучення = оновлення додатка або OTA-модель).

На iOS: CoreML з моделлю DistilBERT-sentiment (конвертується через coremltools з Hugging Face checkpoint). Inference < 50 мс на iPhone 12+. Інціалізувати MLModel при старті додатка, не при першому виклику — иначе отримаєш 300 мс затримку при першому аналізі.

На Android: TensorFlow Lite з MobileBERT — аналогічний підхід. Interpreter інціалізуємо в Application.onCreate() у фоновому потоці.

Гранулярність тональності

Базовий positive/negative/neutral — занадто груб для більшості завдань. Fine-grained sentiment дають більше:

  • Aspect-based sentiment: «доставка відмінна, але упаковка погана» — не один sentiment, а два по різних аспектах.
  • Emotion classification: joy, anger, sadness, fear, surprise — для продуктового аналізу цінніше, ніж просто +/−.
  • Intensity: дуже негативний vs трохи негативний — впливає на пріоритет реакції.

На практиці: якщо потрібен aspect-based — беремо серверну модель (flair, spaCy з kastомними NER + sentiment pipeline) або GPT зі structured output. On-device дотягне тільки до 3-классового класифікатора без аспектів.

Конкретний кейс: аналіз in-app відзивів

Екран зворотного зв'язку: користувач пише текст → по мері набору або при submit аналізуємо тональність on-device → якщо negative score > 0.7, перед відправкою показуємо «Нам жаль, що у вас виникли труднощі. Хочете одразу зв'язатися з підтримкою?» → переводимо в чат замість публічного відзиву. Це стандартний паттерн зниження негативних публічних відзивів.

Технічна реалізація: CoreMLSentimentAnalyzer.analyze(text) повертає SentimentResult(label:score:). Debounce на 500 мс, щоб не запускати inference при кожному символі. Результат храним у ReviewDraft — при submit передаємо серверу разом з текстом.

Мультиязичність

Окрема модель під кожен мову — найкраща точність, але великий розмір бандлу. XLM-RoBERTa — мультиязична модель, одна на всі мови, гірше на кожній окремій мові, але значно краще, ніж ніяк. Для російськомовних текстів: DeepPavlov rubert-base-cased-sentiment — хорошу точність на CIS-даних, конвертується в CoreML/TFLite.

Процес роботи

Визначаємо сценарій використання (realtime vs batch, on-device vs cloud), мову текстів, потрібну гранулярність. Вибираємо модель, інтегруємо, налаштовуємо пороги для бізнес-логіки, тестуємо на репрезентативних даних з продакшену.

Орієнтири за термінами

Інтеграція готової моделі (Cloud API або pre-trained CoreML/TFLite) з базовим positive/negative/neutral — 3–5 днів. Kastomна модель з fine-tuning на своїх даних, aspect-based аналіз, мультиязична підтримка — 3–5 тижнів. Вартість розраховується індивідуально.