Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал:
http://elartu.tntu.edu.ua/handle/lib/53483Повний запис метаданих
| Поле DC | Значення | Мова |
|---|---|---|
| dc.contributor.advisor | Бачинський, Михайло Володимирович | - |
| dc.contributor.author | Петров, Юрій Сергійович | - |
| dc.contributor.author | Petrov, Yurii | - |
| dc.date.accessioned | 2026-07-15T12:19:07Z | - |
| dc.date.available | 2026-07-15T12:19:07Z | - |
| dc.date.issued | 2026-06 | - |
| dc.identifier.uri | http://elartu.tntu.edu.ua/handle/lib/53483 | - |
| dc.description.abstract | Метою роботи є проектування та розробка розподіленої системи, що складається з мобільного клієнта, серверної частини та підсистеми штучного інтелекту, і реалізує платформу для обміну текстовими порадами між користувачами з автоматичною модерацією та персоналізацією контенту. У роботі спроектовано трирівневу клієнт-серверну архітектуру: мобільний застосунок на Flutter із патерном BLoC та локальним кешуванням Hive; серверна частина на FastAPI з розгортанням на Google Cloud Run із підтримкою Firebase Authentication, Cloud Firestore та RevenueCat; підсистема штучного інтелекту на BentoML, що включає сервіс визначення токсичності та NLP-сервіс із fine-tuned моделлю DistilBERT для класифікації тематики публікацій за 5 категоріями. Для персоналізованих рекомендацій реалізовано алгоритм пошуку на основі 768- вимірних векторів із зберіганням у базі даних Qdrant. | uk_UA |
| dc.description.abstract | The aim of the work is to design and develop a distributed system consisting of a mobile client, a server-side component, and an artificial intelligence subsystem, implementing a platform for sharing text-based advice between users with automatic moderation and content personalization. The work presents a three-tier client-server architecture: a Flutter mobile application utilizing the BLoC pattern and local caching via Hive; a FastAPI backend deployed on Google Cloud Run with support for Firebase Authentication, Cloud Firestore, and RevenueCat; an artificial intelligence subsystem built on BentoML, comprising a toxicity detection service and an NLP service with a fine-tuned DistilBERT model for classifying post topics into 5 categories. For personalized recommendations, a similarity search algorithm based on 768-dimensional vectors stored in a Qdrant database was implemented. | uk_UA |
| dc.description.tableofcontents | ВСТУП.............................................................................................................................. 6 1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ОГЛЯД ІСНУЮЧИХ РІШЕНЬ................ 8 1.1 Характеристика предметної області та постановка задачі ................................ 8 1.2 Огляд існуючих рішень та аналіз конкурентів ................................................... 9 1.3 Обґрунтування вибору технологічного стеку................................................... 11 1.4 Вимоги до системи .............................................................................................. 12 2 ПРОЕКТУВАННЯ АРХІТЕКТУРИ СИСТЕМИ .................................................... 15 2.1 Загальна архітектура клієнт-серверної системи ............................................... 15 2.2 Варіанти використання........................................................................................ 17 2.3 Ключові сценарії.................................................................................................. 18 2.4 Модель даних ....................................................................................................... 21 3 РОЗРОБКА МОБІЛЬНОГО КЛІЄНТУ .................................................................... 23 3.1 Архітектура Flutter-додатку та патерн BLoC.................................................... 23 3.2 Система навігації та маршрутизації................................................................... 24 3.3 Ін'єкція залежностей та репозиторний патерн.................................................. 25 3.4 Локальне кешування даних................................................................................. 27 3.5 Інтеграція з Firebase Authentication.................................................................... 28 3.6 Система підписок RevenueCat ............................................................................ 29 4 РОЗРОБКА СЕРВЕРНОЇ ЧАСТИНИ....................................................................... 30 4.1 REST API на основі FastAPI ............................................................................... 30 4.2 Робота з Firebase Firestore ................................................................................... 32 4.3 Інтеграція NLP-сервісу модерації контенту...................................................... 33 4.5 Обробка вебхуків RevenueCat............................................................................. 34 4.6 Векторна база даних Qdrant................................................................................ 35 5 ШІ КОМПОНЕНТИ СИСТЕМИ .............................................................................. 36 5.1 Архітектура NLP-сервісу на BentoML............................................................... 36 5.2 Fine-tuning моделі DistilBERT для визначення тематики порад..................... 38 5.3 Алгоритм векторних рекомендацій ................................................................... 40 6 РОЗГОРТАННЯ СИСТЕМИ..................................................................................... 44 6.1 Розгортання серверної частини на Google Cloud ............................................. 44 6.2 Налаштування Firebase та хмарної інфраструктури ........................................ 47 6.3 Публікація та тестування додатку...................................................................... 497 БЕЗПЕКА ЖИТТЄДІЯЛЬНОСТІ, ОСНОВИ ОХОРОНИ ПРАЦІ ........................ 51 7.1 Психологічні чинники небезпеки....................................................................... 51 7.2 Вимоги до профілактичних медичних оглядів для працівників ПК .............. 54 | uk_UA |
| dc.subject | Flutter | uk_UA |
| dc.subject | FastAPI | uk_UA |
| dc.subject | Firebase | uk_UA |
| dc.subject | BLoC | uk_UA |
| dc.subject | NLP | uk_UA |
| dc.subject | рекомендаційна система | uk_UA |
| dc.subject | мобільний застосунок | uk_UA |
| dc.subject | модерація контенту | uk_UA |
| dc.subject | recommendation system | uk_UA |
| dc.subject | mobile application | uk_UA |
| dc.subject | content moderation | uk_UA |
| dc.title | Розробка кросплатформного мобільного додатку обміну порадами з використанням ШІ-модерації контенту | uk_UA |
| dc.title.alternative | Development of a Cross-Platform Mobile Application for Anonymous Advice Sharing with Artificial Intelligence content moderation | uk_UA |
| dc.type | Bachelor Thesis | uk_UA |
| dc.rights.holder | © Петров Юрій Сергійович, 2026 | uk_UA |
| dc.coverage.placename | ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна | uk_UA |
| dc.format.pages | 63 | - |
| dc.subject.udc | 004.9 | uk_UA |
| dc.relation.references | 1. Михалик Д.М. Методичні вказівки до виконання кваліфікаційної роботи бакалавра для здобувачів першого (бакалаврського) рівня вищої освіти за освітньопрофесійною програмою «Інженерія програмного забезпечення» спеціальності 121 – «Інженерія програмного забезпечення» всіх форм навчання. – Тернопіль : ТНТУ ім. І. Пулюя, 2024. – 45 с. | uk_UA |
| dc.relation.references | 2. Flutter documentation. – URL: https://docs.flutter.dev (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 3. FastAPI documentation. – URL: https://fastapi.tiangolo.com (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 4. Firebase documentation. – URL: https://firebase.google.com/docs (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 5. Sanh V., Debut L., Chaumond J., Wolf T. DistilBERT, a distilled version of BERT. – 2019. – URL: https://arxiv.org/abs/1910.01108. | uk_UA |
| dc.relation.references | 6. BentoML documentation. – URL: https://docs.bentoml.com (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 7. Qdrant vector database documentation. – URL: https://qdrant.tech/documentation (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 8. RevenueCat documentation. – URL: https://docs.revenuecat.com (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 9. Google Cloud Run documentation. – URL: https://cloud.google.com/run/docs (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 10. Detoxify library. – URL: https://github.com/unitaryai/detoxify (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 11. Devlin J. et al. BERT: Pre-training of Deep Bidirectional Transformers. – 2018. – URL: https://arxiv.org/abs/1810.04805. | uk_UA |
| dc.relation.references | 12. Reimers N., Gurevych I. Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks. – 2019. – URL: https://arxiv.org/abs/1908.10084. | uk_UA |
| dc.relation.references | 13. Hive database for Flutter. – URL: https://docs.hivedb.dev (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 14. go_router package. – URL: https://pub.dev/packages/go_router (дата звернення: 10.05.2025). | uk_UA |
| dc.relation.references | 15. Kocienda K. et al. Bloc Library for Flutter. – URL: https://bloclibrary.dev (дата звернення: 10.05.2025). | uk_UA |
| dc.contributor.affiliation | ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра програмної інженерії, м. Тернопіль, Україна | uk_UA |
| dc.coverage.country | UA | uk_UA |
| dc.identifier.citation2015 | Петров Ю. С. Розробка кросплатформного мобільного додатку обміну порадами з використанням ШІ-модерації контенту : робота на здобуття кваліфікаційного ступеня бакалавра : 121 - інженерія програмного забезпечення / наук. кер. М. В. Бачинський. Тернопіль : Тернопільський національний технічний університет імені Івана Пулюя, 2026. 63 с. | uk_UA |
| Розташовується у зібраннях: | 121 — Інженерія програмного забезпечення, F2 Інженерія програмного забезпечення (бакалаври) | |
Файли цього матеріалу:
| Файл | Опис | Розмір | Формат | |
|---|---|---|---|---|
| dyplom_Petrov_Y_2026.pdf | 1,74 MB | Adobe PDF | Переглянути/відкрити |
Усі матеріали в архіві електронних ресурсів захищені авторським правом, всі права збережені.
Інструменти адміністратора