Как я создавал мобильное приложение: разбор медицинских анализов с ИИ в вашем кармане

От OCR и PDF до персонального ассистента — как работает мобильное приложение, для кого и как оно создано

Хочу рассказать про Healtify — мобильное приложение, которое я разработал, чтобы медицинские анализы стали понятнее и полезнее. Это не просто трекер, а инструмент с искусственным интеллектом, который читает результаты анализов, объясняет их и даёт рекомендации. Идея родилась из личной проблемы: медицинские анализы часто выглядят как набор цифр без смысла. Я решил это исправить. Вот как всё работает и что получилось.

Как я создавал мобильное приложение: разбор медицинских анализов с ИИ в вашем кармане

Проблема: анализы — это хаос

Однажды я получил результаты анализов от лаборатории: гемоглобин 134+, эритроциты 5.20+, гематокрит 39.5+. Цифры есть, а понимания — нет. Без врача или часов в интернете разобраться почти невозможно.

Лаборатории выдают таблицы или PDF-файлы, но не объясняют, что с этим делать. Сколько раз вы тоже смотрели на листок с анализами и чувствовали себя потерянными? Интернет либо путает противоречивыми данными, либо пугает несуществующими диагнозами. Мне захотелось сделать инструмент, который сам всё считает, структурирует и объясняет.

Решение: OCR, JSON и нейросети

Я разбил задачу на этапы. Вот как это работает.

1. Чтение анализов с любого носителя

Сначала нужно было научить приложение "видеть" текст — с фото, сканов или PDF. Для

Тогда я подключил Sharp — библиотеку для обработки изображений. Она увеличивает размер фото, повышает контраст, убирает шум и усиливает резкость. Пример: на мятом листе глюкоза "5.8 ммоль/л" без Sharp читалась с ошибками в 15% символов, а с Sharp — с точностью 95%. Теперь даже кривые снимки распознаются.

2. Превращение хаоса в порядок: данные в JSON

После распознавания текста нужно было привести данные в порядок. Лабораторные бланки — это хаос: показатели, единицы измерения и нормы перемешаны. Я написал кастомный парсер, который разбирает текст и превращает его в структурированный JSON. Например, из строки "Глюкоза 5.8 ммоль/л (3.3-5.5)" получается:

{ "indicator": "Глюкоза", "value": 5.8, "unit": "ммоль/л", "reference_range": { "min": 3.3, "max": 5.5 } }.
Это основа для работы ИИ.

3. Нейросети для выводов

Дальше — самое интересное. ИИ не просто проверяет, в норме ли показатели, а анализирует их в комплексе. Например, сахар 5.8 при норме до 5.5. Обычный инструмент сказал бы: "Повышен, идите к врачу". А мой смотрит шире: проверяет другие показатели (гликированный гемоглобин, триглицериды) и объясняет: "Сахар немного выше нормы, возможно, из-за еды. Если это стабильно, проверьте углеводный обмен". Такой подход делает анализ осмысленным.

4. Глубокий анализ одним нажатием

Есть функция "Think" — нажимаешь, и нейросеть выдаёт развёрнутый отчёт. Почему показатели отклонились? Что это значит? Что делать? Пример: гемоглобин 110 г/л при норме от 120. Вместо "у вас анемия" вы получите:

— Причины: "Возможен дефицит железа, B12 или скрытое кровотечение".

— Последствия: "Меньше кислорода в тканях, отсюда усталость".

— Рекомендации: "Сдайте ферритин, добавьте в рацион печень или шпинат".

Это как полноценная консультация, только быстрее.

5. ИИ-ассистент: ответы на вопросы

Встроил чат с ИИ, чтобы можно было уточнить детали. Спрашиваешь: "Почему холестерин высокий?" или "Лейкоциты 8.5 — это страшно?". Модель обучена на медицинских данных и отвечает без лишней воды. Это не замена врачу, но помогает понять базу и подготовиться к консультации.

Технический хардкор: что под капотом

Для тех, кому интересны детали: 1. OCR: Tesseract.js для текста с любых бланков. Обработка изображений: Sharp для подготовки фото. 2. Парсинг: Собственный алгоритм для JSON. 3. Нейросеть: Модель на базе GPT для анализа и рекомендаций. 4. Фронтенд: React Native для кроссплатформенности. 5. Бэкенд: Next.js с API для обработки запросов.

Итог

Это попытка сделать медицинские анализы понятными без врача под боком. Пока проект развивается, доступен только в RuStore. Что бы вы добавили? Какие функции пригодились бы? Делитесь мыслями — это помогает двигаться дальше.

2
Начать дискуссию