Як я зробив офлайн ШІ-капелана для військових на Flutter — і чому атеїст взявся за духовний застосунок
Передісторія: коли логіка перестає пояснювати все
Я — IT-фахівець, бюрократ-світчер, людина, у чиєму світі все завжди було на місці: логіка, норми, правила. Бога в цій системі не було передбачено. Принаймні так я думав до лютого 2022-го.Лютий
Історія цього додатку почалася з «Молитовника воїна» (com.uralexkuch.player) — моєї першої спроби дати захисникам зручний цифровий інструмент для молитви.
Проте справжнім поштовхом до еволюції став приклад таких людей, як ігумен Макарій («Монах»). Його шлях від керівника скиту до командира підрозділу показала мені, що священник на війні — це не лише молитва, а й безпосередня присутність і підтримка в найважчі хвилини.
Я зрозумів: технології мають служити цій меті. Так «Молитовник» перетворився на «Цифрового Капелана» — систему, де штучний інтелект та віковічні тексти працюють разом, щоб ніхто не залишався наодинці зі своїми думками.
Чому Flutter і чому офлайн — це не компроміс, а вимога
З самого початку були дві незмінні умови:
1. Жодного серверу. Застосунок для військових — це питання не лише зручності, а й цифрової безпеки. Жодне повідомлення не повинно залишати пристрій. Це виключало будь-яку хмарну архітектуру з ШІ.
2. Одна кодова база — дві платформи. Я роблю це один, у вільний час, без бюджету. Flutter був очевидним вибором: один розробник, один код, Android + iOS.
Отже, весь ШІ — на пристрої. Вся база даних — локально. Повний офлайн.
Архітектура: що всередині
On-device LLM: Gemma + Flutter
Як основну модель обрав Gemma — достатньо компактна для мобільного пристрою, при цьому якість відповідей прийнятна для задачі. Інференс запускається локально через відповідний пакет для Flutter.
Головний виклик — баланс між якістю відповідей і розміром моделі та швидкістю на слабкому залізі. Це досі задача: не кожен боєць має флагман у кишені.
RAG з локальною векторною базою
Чистий LLM для цієї задачі не підходить — потрібна прив’язка до конкретних духовних текстів. Тому поверх Gemma реалізований RAG (Retrieval-Augmented Generation):
- Повний текст Біблії
- Молитовник (ранкові/вечірні правила, бойові молитви, акафісти, псалми)
- Матеріали з психологічної підтримки
Все зберігається локально у векторній базі. При кожному запиті система знаходить релевантні фрагменти і передає їх у контекст до моделі. Завдяки цьому капелан не просто генерує текст — він підбирає конкретне місце зі Писання або молитву під ситуацію.
Кризове реагування
При певних сигналах у розмові застосунок автоматично виводить контакти служб екстреної психологічної допомоги. Це не можна було не зробити, враховуючи аудиторію.
STT для голосового вводу
Не кожен боєць може або хоче друкувати. Тому додав Speech-to-Text — взаємодія з капеланом голосом теж працює повністю офлайн.
Що ще в застосунку
Молитовник — бібліотека з категоріями (бойові, ранкові, вечірні, за поранених, за полеглих, псалми), текстовий пошук по назві та змісту, поділ на кроки, аудіовідтворення.
Православний календар ПЦУ — свята, тип посту, літургійний колір, покровителі дня, тропарі, народні традиції, спеціальні молитви.
Слово на день — щоденна цитата з Біблії з коротким коментарем на головному екрані.
Безпека:
- PIN-код при вході
- Локальне збереження всієї історії чатів
- Panic Wipe — миттєве повне стирання локальної БД та ключів доступу. Одна дія в екстреній ситуації — і на пристрої не залишається нічого, крім завантаженої моделі
Персоналізація, яка важлива
Дрібниця, але важлива: при першому спілкуванні капелан запитує, як до тебе звертатися — «Брате» чи «Сестро». І дотримується цього впродовж всієї розмови. Жодного «шановний користувачу».
В застосунку для людей у стресових ситуаціях такі деталі — не UX-прикраса, а частина довіри.
Що складно і що досі не вирішено
Чесно про виклики:
- Якість on-device інференсу на бюджетних пристроях — компроміс між розміром моделі і якістю відповідей, ідеального рішення поки немає
- Розмір застосунку через вбудовану модель — це реальна проблема для завантаження там, де інтернет нестабільний
- Оцінка якості духовних відповідей — важко формалізувати метрику. Поки тестую з реальними користувачами та капеланами
- Проєкт соло без бюджету — це і свобода, і обмеження одночасно
Для кого це і навіщо
Передусім — для військових ЗСУ, Нацгвардії, ТрО, морської піхоти. Але також для ВПО, для тих, хто чекає вдома, для людей, які ніколи не вважали себе «церковними» — але відчувають, що зараз їм потрібно щось більше.
Застосунок вже в Google Play.
📲 Google Play — Цифровий капелан 🌐 Сторінка проєкту
Питання до спільноти
Буду радий обговорити в коментарях:
- Хто працював з on-device LLM у Flutter? Який досвід з Gemma або MediaPipe LLM Inference?
- Як оптимізували RAG на мобільних — які векторні бази розглядали?
- Досвід з офлайн STT у Flutter на Android?
- Чи є хтось із досвідом розробки застосунків для людей у стресових ситуаціях — які UX-підходи спрацювали?
20 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарівМоя пропозиція — дати можливість, а далі кожний вирішує сам...
З технічної точку зору можливо все ідеально . Але ви використовуєте не спеціалізовану LLM зі всіма недоліками та пропонуєте психологічні консультації.як ви вирішили питання -’Spiritual abuse, ноцебо-эфект, та інші ’сайд ефекти’ тобто мінімізували отримання психологічних травм на фоні релігії ?
Якщо Ви б переглянути додаток, там зазначено,всі застереження з тих питань, які Ви вказуєте.І якщо у людини трамва від релігії — навряд від буде користуватися додаток- чи не так?.Нажаль, універсальних відповідей в світі ще не винайшли.Тому моя пропозиція — дати можливість, а далі кожний вирішує сам...
Я правильно розумію , щоб отримати відповіді на свої питання я повинен встановити ваш додаток ?
Якщо Ви хочити загальну відповідь- в додатку є всі застереження щодо ШІ та що не є медичним чи іншим...Якщо щось більш предметне-бажано реалні відгуки про реальні кейси з використання додатку.
Дякую за детальне роз’яснення що до використання та налаштувань вашої православної моделі (уж послали так послали )
Ну чого послав))) відправив пізнавати шлях Бога).Але якщо серйозно-всі необхідні попередження для користувача щоб розумно відносився до результату є.Також роль каплена не ортодоксна-більш психологічна.Але все ж таки реальні відгуки в процесі використання- це більш цінніше- ніж теоритичний філософський диспут.
Взагалі то якщо є проблеми з психічним станом треба звертатися до фахівця, а не до релігії. Ви якщо хворієте йдете до свого лікаря а не до знахаря шамана
Проблема як дістатися до фахівця з нуля
А чи є ж опція вибору : якщо користувач проповідує Іслам або Буддизм?
Доброго, як Ви могли бачити,це передусім православна традиція.Вашу ідею можливо реалізувати,але це потребує додаткових як фінансових так інформаційних ресурсів.
Стаття повністю на ШІ, як за змістом, так і за структурою.
Ще й лайкнув автор сам себе.
Це така неповага до аудіторії...
Ви впевнені? Може і я теж ШІ? Якщо є інcтрументи які допомагють чіткіше висловити те що на душі- чомі ні?Тобто намалювати діаграми в NotebookLM — це злочин? Потрібно було PowerPoint. Ну це,як мені в дитинстві казали-рахувати на рахівниці- бо калькулятор то є зло...
І про лайк — взагалі наклеп.Якщо Ви щось маєте сказати по суті, а не емоціно-суб’єктне, не підтверджене висловлення — прошу — якщо ні — як то кажуть Бог вам суддя..
Скиньте принтскрин статті з цією частиную зі свого профілю, будь-ласка.

Якщо я помилився, — я вибачусь.
Офіційно вибачаюся.
Я помилився і був не правий.
Зрозуміло )
Це я лайкнув.
Тоді офіційно вибачаюсь перед автором
Я помилився і був не правий.