Одна из ключевых задач NutraGen — понять, что написано в результатах анализов пользователя. Звучит просто, пока не столкнёшься с реальностью: десятки форматов лабораторий, рукописные пометки врачей, фото под углом, плохое освещение. Классический OCR здесь не справляется — нужен AI.
// Google Vision: первый слой
Google Vision API — наш первый слой обработки. Он отлично распознаёт печатный текст даже на фотографиях с перспективными искажениями. На выходе — сырой текст с координатами каждого слова. Но этот текст — каша: смешаны названия маркеров, значения, единицы измерения, референсные интервалы и примечания.
// GPT-4: структурирование хаоса
Вот тут вступает GPT-4. Мы передаём ему сырой текст от Vision API с чётким промптом: «Извлеки все биомаркеры, для каждого укажи название, значение, единицу измерения и референсный интервал. Верни JSON.» GPT-4 понимает контекст — отличает «глюкоза 5.2 ммоль/л (3.9-6.1)» от мусора вокруг. На выходе — чистый структурированный JSON.
Точность извлечения маркеров — около 95%. Оставшиеся 5% — экзотические лаборатории с нестандартным оформлением. Для критических маркеров мы всегда просим пользователя подтвердить значения.
// Сравнение с предыдущими результатами
Самое ценное — динамика. Когда пользователь загружает второй и третий анализ, система сравнивает значения, строит графики и подсвечивает тренды. Гемоглобин падает три месяца подряд? Бот предупредит. Витамин D вернулся в норму после курса? Покажет на графике. Это превращает разрозненные бумажки в историю здоровья.
// Health Score
На основе всех маркеров мы рассчитываем интегральный Health Score — одно число от 0 до 100, которое показывает общее состояние организма. Это не медицинский диагноз — это индикатор для пользователя, чтобы отслеживать динамику. Видишь, что Score растёт — значит, всё делаешь правильно.