You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

15 KiB

Техническое задание на разработку системы "Medical Input Helper"

1. Введение

1.1. Наименование системы

Medical Input Helper - интеллектуальная система автоматизации ввода медицинских текстов с поддержкой AI.

1.2. Назначение системы

Разработка программного обеспечения для автоматизации процесса ввода и форматирования медицинских текстов, с интеграцией AI-моделей для анализа медицинских данных, включая обработку ЛОР-эндоскопических изображений.

2. Общие требования

2.1. Функциональное назначение

Система должна предоставлять следующие возможности:

  • Автоматическое обнаружение полей ввода в различных приложениях
  • Интеллектуальная обработка медицинских текстов с использованием LLM
  • Анализ ЛОР-эндоскопических изображений и генерация медицинских заключений
  • Drag-and-drop интерфейс для работы с текстом и изображениями
  • Фоновая работа через системный трей

2.2. Целевая аудитория

  • Врачи-оториноларингологи
  • Медицинские регистраторы
  • Медицинский персонал, работающий с EHR системами

3. Технические требования

3.1. Архитектура системы

┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│   GUI Layer     │◄──►│  Business Logic  │◄──►│   AI Services   │
│  (PyQt6)        │    │   Layer          │    │   Layer         │
└─────────────────┘    └──────────────────┘    └─────────────────┘
         │                       │                       │
         ▼                       ▼                       ▼
┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│ System Tray     │    │ Drag & Drop      │    │ LLM Models      │
│ Icon Window     │    │ Handler          │    │ Image Analysis  │
└─────────────────┘    └──────────────────┘    └─────────────────┘

3.2. Компоненты системы

3.2.1. Основные модули (реализованы)

  • main.py - точка входа приложения
  • main_window.py - главное окно и управление состоянием
  • main_interface.py - пользовательский интерфейс
  • ai_worker.py - обработка AI запросов в отдельном потоке
  • drag_drop_handler.py - обработка drag-and-drop операций
  • icon_window.py - плавающая иконка приложения

3.2.2. Структура данных

project/
├── models/                 # AI модели (LLM + компьютерное зрение)
├── data/                   # Пользовательские данные и изображения
├── chroma_db/              # Векторная база медицинских знаний
└── rag_corpus.json         # Медицинский корпус для RAG

3.3. Технологический стек

  • GUI Framework: PyQt6
  • AI/ML: llama-cpp-python, ChromaDB, Sentence Transformers
  • Computer Vision: OpenCV, Pillow, Torch
  • System Integration: uiautomation, pyperclip, keyboard
  • Utilities: qtawesome, psutil, requests

4. Функциональные требования

4.1. Модуль автоматизации ввода (реализован)

4.1.1. Обнаружение полей ввода

  • Автоматическое определение фокуса на редактируемых полях
  • Поддержка различных типов контролов (Edit, Text, ComboBox)
  • Работа с нативными приложениями и веб-браузерами

4.1.2. Управление интерфейсом

  • Плавающее окно с автоматическим позиционированием
  • Два режима работы: компактный и расширенный
  • Перетаскивание окон мышью
  • Системный трей для фоновой работы

4.2. Модуль обработки текста (реализован)

4.2.1. Базовые функции

  • Копирование текста из активных полей
  • Вставка форматированного текста
  • Drag-and-drop для текстового контента

4.2.2. AI-обработка текста

  • Интеграция с YandexGPT-5-Lite моделью
  • RAG (Retrieval-Augmented Generation) для медицинских текстов
  • Специализированные промпты для:
    • Обработки жалоб пациента
    • Форматирования анамнеза заболевания
    • Генерации медицинских заключений

4.3. Модуль работы с изображениями (частично реализован)

4.3.1. Загрузка и обработка изображений (реализовано)

  • Drag-and-drop загрузка локальных файлов
  • Загрузка изображений по URL
  • Поддержка форматов: JPG, PNG, BMP, GIF, TIFF, WebP
  • Автоматическое определение типа контента

4.3.2. Анализ ЛОР-эндоскопических изображений (требует доработки)

  • Интеграция моделей компьютерного зрения для анализа:
    • Состояния барабанной перепонки
    • Патологий наружного слухового прохода
    • Воспалительных процессов
    • Наличия инородных тел
  • Классификация изображений по типам патологий
  • Генерация структурированного ЛОР-статуса

4.3.3. Генерация медицинских заключений

  • Комбинированный анализ: изображение + анамнез
  • Автоматическая генерация заключения ИИ
  • Форматирование согласно медицинским стандартам

5. Требования к AI-компонентам

5.1. Текстовая обработка (реализована)

  • Модель: YandexGPT-5-Lite-8B-instruct (GGUF)
  • Контекст: 2048 токенов
  • Температура: 0.1 для детерминированных результатов
  • RAG система: ChromaDB с rubert-tiny2 эмбеддингами

5.2. Визуальный анализ (требует реализации)

5.2.1. Модели компьютерного зрения

  • Основная модель: Предобученная CNN для классификации ЛОР-изображений
  • Дополнительные модели:
    • Segmentation моделей для выделения областей интереса
    • Detection моделей для идентификации патологий

5.2.2. Требования к анализу изображений

  • Точность классификации: >85% для основных патологий
  • Время обработки: <10 секунд на изображение
  • Поддерживаемые патологии:
    • Отиты (наружный, средний)
    • Перфорации барабанной перепонки
    • Инородные тела слухового прохода
    • Новообразования
    • Воспалительные процессы

6. Интерфейс пользователя

6.1. Основной интерфейс (реализован)

  • Компактный режим (70px) для экономии места
  • Расширенный режим (200px) с полным функционалом
  • Адаптивные drop-зоны для разных типов контента
  • Визуальная индикация процесса обработки

6.2. Элементы управления (реализованы)

  • Кнопка "Копировать жалобы"
  • Кнопка "Копировать анамнез"
  • Кнопка "ЛОР-Статус"
  • Кнопка "Заключение ИИ"
  • Кнопка "Новый случай"

6.3. Визуальное оформление (реализовано)

  • Темная тема с градиентами
  • Иконки QtAwesome для лучшей визуализации
  • Анимации изменения размеров окон
  • Эффекты тени и прозрачности

7. Требования к производительности

7.1. Время отклика

  • Загрузка интерфейса: <3 секунд
  • Обработка текста LLM: <15 секунд
  • Анализ изображения: <10 секунд
  • Переключение между режимами: <0.5 секунд

7.2. Использование ресурсов

  • Память: <2GB в режиме ожидания
  • Память с LLM: <4GB при активной обработке
  • CPU: <15% в режиме ожидания

8. Требования к совместимости

8.1. Операционные системы

  • Windows 10/11
  • Linux (требует тестирования)
  • macOS (требует тестирования)

8.2. Целевые приложения

  • Веб-браузеры (Chrome, Edge, Firefox)
  • Текстовые редакторы (Word, Блокнот)
  • EHR системы (тестирование требуется)
  • Почтовые клиенты

9. Этапы разработки

Этап 1: Базовый функционал (РЕАЛИЗОВАН)

  • Архитектура приложения
  • Основной GUI
  • Система drag-and-drop
  • Интеграция LLM для текста
  • Системный трей и фоновая работа

Этап 2: Анализ изображений (В РАЗРАБОТКЕ)

  • Интеграция моделей компьютерного зрения
  • Разработка пайплайна обработки ЛОР-изображений
  • Тестирование точности классификации
  • Оптимизация производительности

Этап 3: Расширенная функциональность (ПЛАНИРУЕТСЯ)

  • Поддержка дополнительных медицинских специальностей
  • Интеграция с медицинскими базами данных
  • Расширенная кастомизация интерфейса
  • Пакетная обработка данных

10. Критерии приемки

10.1. Функциональные тесты

  • Автоматическое появление панели при фокусе на поле ввода
  • Корректная обработка медицинских текстов LLM
  • Точная классификация ЛОР-изображений (>85%)
  • Стабильная работа в фоновом режиме

10.2. Производительностные тесты

  • Обработка 100+ текстовых запросов без утечек памяти
  • Анализ 50+ изображений без деградации производительности
  • Работа в течение 24+ часов без перезапуска

10.3. Пользовательские тесты

  • Удобство использования медицинским персоналом
  • Сокращение времени на ввод документации на 40%
  • Положительные отзывы от 10+ тестовых пользователей

11. Документация

11.1. Техническая документация

  • README с инструкциями по установке
  • .gitignore для управления версиями
  • API документация для AI модулей
  • Руководство по развертыванию

11.2. Пользовательская документация

  • Руководство пользователя
  • Видео-инструкции по основным сценариям
  • FAQ по решению常见 проблем

12. Медицинские требования и ограничения

12.1. Предупреждения

  • Система является вспомогательным инструментом
  • Все AI-генерации должны проверяться врачом
  • Не заменяет профессиональную медицинскую диагностику

12.2. Соответствие стандартам

  • Соблюдение медицинской этики
  • Конфиденциальность patient data
  • Соответствие требованиям к медицинскому ПО

Техническое задание утверждено: [Дата] Версия: 1.0 Статус: В разработке (Этап 1 завершен, Этап 2 в процессе)