PharmaCheck AI: как я собрал проверяемый AI-прототип

PharmaCheck AI — мой pet-проект в роли AI Integration Engineer. Цель проекта была не в том, чтобы “просто подключить LLM”, а в том, чтобы собрать прикладную AI-систему с понятной бизнес-логикой, проверяемыми источниками, ограничениями безопасности и воспроизводимым результатом.

Задача

Идея проекта: пользователь вводит два препарата, а система помогает оценить возможное лекарственное взаимодействие. Ключевое ограничение: языковая модель не должна быть самостоятельным источником медицинских фактов. Сначала система собирает проверяемые данные, формирует evidence package, валидирует результат и только после этого использует LLM для структурированного объяснения.

Что было реализовано

В проекте собран backend-пайплайн, который включает: распознавание торговых названий и действующих веществ; каталог препаратов на основе открытых данных; интеграции с медицинскими источниками; работу с DailyMed, openFDA, RxNorm, RxClass и DDInter; Telegram-интерфейс для пользовательского сценария; Cloudflare Worker как промежуточный relay; Yandex Cloud Functions как серверную среду; YandexGPT для формирования объяснения; строгую валидацию ответа; обработку неуверенных и неоднозначных случаев; разделение private production-контура и публичной portfolio-версии.

Архитектурный принцип

Главный принцип проекта: сначала данные и доказательства, потом интерпретация. LLM в этом проекте не “угадывает” ответ. Она работает внутри ограниченного backend-контракта: получает подготовленный пакет данных, следует структуре ответа и не должна выходить за рамки проверяемых источников. Если препараты не распознаны однозначно, система не делает медицинский вывод, а просит уточнить ввод. Это важнее, чем выдать красивый, но потенциально неверный ответ.

Безопасность и ограничения

Отдельный фокус был на том, чтобы проект можно было безопасно показывать работодателям и заказчикам. Что было сделано: секреты не хранятся в репозитории; production identifiers и live endpoints не публикуются; DDInter используется только в private noncommercial-контуре; публичная версия вынесена в отдельный sanitized portfolio case; медицинские ограничения явно показаны пользователю; система не назначает, не отменяет и не изменяет лечение. Публичный GitHub-репозиторий содержит архитектуру, описание решений, скриншоты, evals и ограничения, но не раскрывает production-инфраструктуру и чувствительные данные.

Результат

На текущем этапе проект показывает: рабочий private production-MVP; Telegram-сценарий взаимодействия; evidence-first подход к работе с LLM; 200 проверенных действующих веществ; 290 автоматических тестов; 151 security-релевантный тест; отдельный публичный portfolio case для демонстрации проекта.

Моя роль

В этом проекте я отвечал за: продуктовую концепцию; архитектуру AI-интеграции; пользовательский сценарий; работу с внешними API и источниками данных; prompt engineering; интеграцию YandexGPT; облачную инфраструктуру; безопасность публичной витрины; тестирование и упаковку проекта в portfolio case.

Что этот проект доказывает

Для меня PharmaCheck AI стал не просто учебным проектом, а примером того, как должен выглядеть прикладной AI-прототип: у него есть понятная задача; есть backend-логика; есть проверяемые источники; есть ограничения; есть тесты; есть безопасная публичная версия; есть сценарий, который можно показать работодателю. Этот проект хорошо отражает мой текущий фокус: AI Integration Engineering — LLM, API, cloud, automation, validation и понятная бизнес-логика в одной работающей системе.