Trans_for_doctors / QUICKSTART.md
Mintik24's picture
🎉 Полный рефакторинг проекта Medical Transcriber
e275025

Быстрый старт: STT + LLM-корректор с генерацией DOCX отчетов

🚀 Установка (2 минуты)

1. Установить UV (рекомендуется)

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
powershell -ExecutionPolicy BypassUser -c "irm https://astral.sh/uv/install.ps1 | iex"

# Или через pip
pip install uv

2. Установить зависимости проекта

cd /home/robot/Documents/novaya_vetka/Trans_for_doctors

# Установить основные зависимости (STT + Knowledge Base)
uv sync

# ИЛИ установить с LLM коррекцией (OpenAI)
uv sync --extra llm

3. Настроить API ключ OpenAI (если нужна LLM коррекция)

cd corrector
cp .env.example .env
nano .env  # или любой редактор

Добавьте ваш OpenAI API ключ:

OPENAI_API_KEY=sk-ваш-настоящий-ключ-здесь

📝 Использование

Быстрый тест (проверка что всё работает)

# Проверить установку пакетов
python -m quick_test
### Запуск полного пайплайна

```bash
# Все в одном: STT → Knowledge Base → LLM Correction → Reports
python -m run_pipeline_demo

Обработать один аудио файл

from pipeline import MedicalTranscriptionPipeline, PipelineConfig
from pathlib import Path

# Конфигурация
config = PipelineConfig(
    model_path=Path("./"),
    device="auto",  # или 'cuda', 'cpu'
    language="russian",
    correction_enabled=True,  # LLM коррекция
    generate_report=True      # Генерировать DOCX
)

# Запуск пайплайна
pipeline = MedicalTranscriptionPipeline(config)
result = pipeline.process_audio_file(Path("audio.wav"))

print(result)

Legacy: Автоматическая обработка результатов

# Если уже есть результаты транскрибации (result_*.json)
python -m corrector.auto_process

# С параметрами пациента
python -m corrector.auto_process \
  --patient-name "Иванов Иван Иванович" \
  --patient-dob "01.01.1980" \
  --study-area "Поясничный отдел позвоночника"

📂 Структура выходных файлов

results/
├── result_20260115_120000.json              # Оригинальная транскрипция
├── result_20260115_120000_corrected.json    # Исправленная версия
└── reports/
    └── report_20260115_120000.docx          # DOCX отчет

🧪 Тестирование

# Быстрая проверка проекта
python -m quick_test

# Запуск единичных тестов
uv run pytest tests/test_knowledge_base.py -v
uv run pytest tests/test_stt.py -v

# Все тесты с покрытием
uv run pytest tests/ --cov=.

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

⚙️ Конфигурация

Все настройки управляются через:

  1. pyproject.toml — основные зависимости
  2. corrector/.env — API ключи и параметры LLM
  3. medical_terms.txt — медицинские термины

💡 Рекомендации

  • Используйте uv sync для управления зависимостями
  • Добавьте новые медицинские термины в medical_terms.txt
  • Используйте gpt-4o-mini для экономии средств при большом объеме
  • Логируйте ошибки для отладки

🔗 Быстрые ссылки

Команда Что делает
uv sync Установить зависимости
python -m quick_test Проверить установку
python -m run_pipeline_demo Запустить пайплайн
python -m corrector.auto_process Обработать результаты
uv run pytest tests/ -v Запустить тесты

Проект готов к использованию! Начните с python -m quick_test