File size: 5,021 Bytes
e275025
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
# Быстрый старт: STT + LLM-корректор с генерацией DOCX отчетов

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

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

```bash
# 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. Установить зависимости проекта

```bash
cd /home/robot/Documents/novaya_vetka/Trans_for_doctors

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

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

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

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

Добавьте ваш OpenAI API ключ:
```
OPENAI_API_KEY=sk-ваш-настоящий-ключ-здесь
```

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

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

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

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

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

```python
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: Автоматическая обработка результатов

```bash
# Если уже есть результаты транскрибации (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 отчет
```

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

```bash
# Быстрая проверка проекта
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=.
```

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

- **[ARCHITECTURE.md](ARCHITECTURE.md)** — архитектура системы
- **[INSTALLATION_UV.md](INSTALLATION_UV.md)** — подробная инструкция по UV
- **[SUMMARY.md](SUMMARY.md)** — полный обзор проекта
- **[pipeline/README.md](pipeline/README.md)** — документация пайплайна
- **[stt/README.md](stt/README.md)** — документация STT модуля
- **[knowledge_base/README.md](knowledge_base/README.md)** — база знаний
- **[corrector/README.md](corrector/README.md)** — LLM коррекция

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

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

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`**