Skip to content

gorinator/Pilula

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pilula

Pilula — Офлайн сканер лекарств

Наведи камеру на упаковку — получи всё о препарате.
Работает без интернета. AI на борту.


Скриншоты

Главное меню

Главное меню
Режим камеры

Сканирование
Описание лекарства

Описание лекарства
AI Советник офлайн

AI Чат

О приложении

Pilula — iOS-приложение для мгновенного распознавания лекарств через камеру. Приложение работает полностью офлайн: встроенная AI-модель Qwen2.5 отвечает на вопросы о препаратах без интернета. Локальная база лекарств позволяет мгновенно получать информацию о дозировке, взаимодействиях и дешёвых аналогах.

Важно: Pilula — информационный инструмент. Не является медицинским советником. Всегда консультируйтесь с врачом перед приёмом лекарств.

Возможности

  • Сканер упаковок — наведи камеру на лекарство, OCR распознаёт название
  • База лекарств — информация о дозировке, форме, курсе, МНН и аналогах
  • Проверка взаимодействий — мгновенная проверка совместимости двух препаратов
  • AI Советник — чат с Qwen2.5 1.5B, работает офлайн, отвечает на русском
  • История сканов — все ранее отсканированные препараты с датой и статусом
  • Аналоги и цены — поиск более дешёвых заменителей с тем же действующим веществом

Стек технологий

Компонент Технология
Язык Swift 5.9
UI-фреймворк SwiftUI
OCR Vision (VNRecognizeTextRequest)
AI движок llama.cpp (XCFramework)
AI модель Qwen2.5 1.5B Q4_K_M
Хранение истории UserDefaults + JSON
Минимальный iOS 17.0

Установка и запуск

Требования

  • Xcode 15.0 или новее
  • Mac с Apple Silicon (M1/M2/M3)
  • iPhone с iOS 17+ (рекомендуется iPhone 15)

Шаги запуска

# 1. Клонируй репозиторий
git clone https://gitverse.ru/gorinator/Pilula.git
cd Pilula

# 2. Открой проект в Xcode
open Pilula.xcodeproj

# 3. Выбери команду разработчика в Signing & Capabilities
# (Pilula → Targets → Pilula → Signing & Capabilities → Team)

# 4. Выбери целевое устройство iPhone 15 или симулятор

# 5. Нажми Cmd+R для сборки и запуска

Добавление AI-модели (Qwen2.5)

  1. Скачай модель с HuggingFace:

    from huggingface_hub import hf_hub_download
    hf_hub_download(
        repo_id="Qwen/Qwen2.5-1.5B-Instruct-GGUF",
        filename="qwen2.5-1.5b-instruct-q4_k_m.gguf"
    )

    Файл весит ~900 MB.

  2. Переименуй файл: qwen2.5-1.5b-q4.gguf

  3. Перетащи в Xcode в группу Pilula/Resources/ — убедись, что галочка Add to target: Pilula стоит

Добавление базы лекарств ГРЛС

  • Официальный источник: https://grls.rosminzdrav.ru
  • Файл: drugs_ru.sqlite → положить в Pilula/Resources/

Архитектура

Pilula/
├── App/            — точка входа, корневой TabView
├── Features/
│   ├── Home/       — главный экран с карточками и недавними сканами
│   ├── Scanner/    — OCR сканер, обработка результатов
│   ├── DrugInfo/   — база препаратов, проверка взаимодействий
│   ├── AIAdvisor/  — чат с LLM, построение промптов
│   └── History/    — история сканирований с персистентностью
├── LlamaWrapper/   — ObjC++ обёртка над llama.cpp + XCFramework
├── Models/         — Drug, ScanResult, DrugInteraction
└── Utils/          — цвета, шрифты, расширения

Архитектурный подход: Feature-based MVVM с @StateObject / @EnvironmentObject.

AI модель

Qwen2.5 1.5B Instruct (Q4_K_M)

  • Разработчик: Alibaba Cloud
  • Лицензия: Apache 2.0
  • Размер: ~900 MB (квантизация Q4_K_M)
  • Движок: llama.cpp (MIT)
  • Работает: полностью офлайн, без интернета
  • Язык ответов: русский (задаётся системным промптом)

Лицензия

MIT License — см. файл LICENSE.


Pilula не является медицинским советником и не заменяет консультацию врача.

About

💊 Офлайн-сканер лекарств с AI-советником на борту — OCR + Qwen2.5 1.5B, без интернета, Swift/iOS 17

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors