Архитектура системы
Архитектура системы
Многоуровневая архитектура обработки данных
graph TB
subgraph "Уровень интерфейсов"
WEB[Web-интерфейс<br/>React]
API[REST API Gateway]
AUTH[Keycloak SSO]
FS[Сетевой каталог<br/>SMB/CIFS]
end
subgraph "Уровень обработки"
UPLOAD[Модуль загрузки<br/>документов]
OCR[OCR-сервис<br/>TrOCR + EasyOCR]
LLM[LLM-анализатор<br/>Llama 3.1 70B]
MATCH[Модуль<br/>сопоставления]
end
subgraph "Уровень бизнес-логики"
EXTRACT[Извлечение<br/>критериев]
EVAL[Оценка<br/>соответствия]
SCORE[Расчет<br/>рейтинга]
REPORT[Генератор<br/>отчетов]
end
subgraph "Уровень данных"
PG[(PostgreSQL<br/>Метаданные)]
VECTOR[(Qdrant<br/>Векторное хранилище)]
DOCS[(File Storage<br/>Документы)]
end
WEB --> AUTH
AUTH --> API
API --> UPLOAD
FS --> UPLOAD
UPLOAD --> OCR
OCR --> LLM
LLM --> EXTRACT
EXTRACT --> VECTOR
LLM --> MATCH
MATCH --> EVAL
EVAL --> SCORE
SCORE --> REPORT
EXTRACT --> PG
EVAL --> PG
REPORT --> PG
REPORT --> DOCS
Компонентная модель
Слой представления
Обеспечивает удобный доступ к системе для всех категорий пользователей. Web-интерфейс построен на современном React-фреймворке, что гарантирует отзывчивость и скорость работы даже при больших объемах данных.
Слой интеграции
REST API Gateway выступает единой точкой входа для всех запросов, обеспечивая централизованное управление доступом, мониторинг и балансировку нагрузки. Интеграция с Keycloak позволяет использовать существующие доменные учетные записи.
Слой интеллектуальной обработки
Сердце системы — комбинация передовых технологий OCR и больших языковых моделей. TrOCR и EasyOCR обеспечивают высокоточное распознавание текста даже из сложных сканированных документов. Llama 3.1 70B анализирует содержимое, извлекает критерии и выполняет их сопоставление.
Слой бизнес-логики
Реализует основную логику работы системы: от извлечения критериев из технического задания до формирования итогового отчета с рекомендациями. Модульная архитектура позволяет гибко настраивать правила оценки под специфику различных категорий закупок.
Слой хранения данных
Гибридная модель хранения оптимизирована под разные типы данных:
- PostgreSQL — для структурированных метаданных и истории анализов
- Qdrant — для векторного поиска и интеллектуального сопоставления
- File Storage — для хранения исходных документов и сформированных отчетов
Масштабируемость и отказоустойчивость
Архитектура системы изначально проектировалась с учетом требований крупного бизнеса. Все компоненты поддерживают горизонтальное масштабирование, что позволяет наращивать производительность пропорционально росту нагрузки. Использование контейнеризации обеспечивает простое развертывание и обновление системы без остановки работы.
No comments to display
No comments to display