projects/mk.md

125 lines
6.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# **Техническое задание на разработку платформы для поиска по корпоративным данным с использованием LLM-моделей**
## **1. Введение**
### **1.1. Назначение документа**
Настоящее техническое задание (ТЗ) описывает требования к разработке платформы для семантического поиска и обработки корпоративных данных с использованием LLM (Large Language Models) и RAG (Retrieval-Augmented Generation).
### **1.2. Цель проекта**
Создание системы, которая:
- Индексирует корпоративные данные из BookStack и других источников.
- Обеспечивает поиск и генерацию ответов на основе LLM (ChatGPT, YandexGPT, GigaChat).
- Интегрируется с Bitrix24 через чат-бота.
- Предоставляет интерфейсы для управления и загрузки данных.
---
## **2. Описание системы**
### **2.1. Функциональные требования**
#### **2.1.1. Загрузка и обработка данных**
- Поддержка форматов: PDF, DOCX, TXT, XML, JSON, YAML, MD, MDX, HTML, XLS, CSV.
- Загрузка через BookStack (webhook) или отдельный интерфейс платформы.
- Разделение документов на чанки и их векторизация.
- Хранение в векторной БД (Weaviate или PostgreSQL с pgvector).
#### **2.1.2. Поиск и генерация ответов**
- Прием запросов через API или чат-интерфейс.
- RAG-поиск: извлечение релевантных чанков из БД.
- Генерация ответов с использованием выбранной LLM (ChatGPT, YandexGPT, GigaChat).
#### **2.1.3. Интерфейсы**
- **Админ-панель**: управление настройками, моделями, источниками данных.
- **Интерфейс загрузки файлов**: ручная загрузка документов в векторную БД.
- **Веб-чат**: тестирование и проверка работы системы.
- **Чат-бот для Bitrix24**: интеграция через API Bitrix.
### **2.2. Нефункциональные требования**
- **Производительность**: время ответа ≤ 3 сек.
- **Масштабируемость**: поддержка > 10 000 документов.
- **Безопасность**: аутентификация (OAuth2, API-ключи), разграничение прав.
- **Поддержка LLM**: возможность добавления новых моделей.
---
## **3. Архитектура**
### **3.1. Компоненты системы**
1. **BookStack (или аналог)**: хранение исходных документов.
2. **Maker-GPT (ядро системы)**:
- API для обработки запросов.
- Интеграция с векторной БД.
- Подключение к LLM.
3. **Векторная БД**: Weaviate / PostgreSQL (pgvector).
4. **Интерфейсы**:
- Админ-панель (Vue).
- Веб-чат (Vue).
- Bitrix24-бот (REST API).
### **3.2. Схема взаимодействия**
```mermaid
graph TD
A[BookStack] -->|Webhook| B[Maker-GPT]
C[Файлы] -->|Загрузка| B
B -->|Векторизация| D[Weaviate/PostgreSQL]
E[Пользователь] -->|Запрос| F[API/Чат]
F --> B -->|RAG + LLM| G[Ответ]
B -->|Интеграция| H[Bitrix24]
```
### **3.3 Запрос названия хим препарата**
```mermaid
flowchart TD
A[Пришлите мне название препарата] -->|Ответ польз-ля| B{ответ ищем по базе названий}
B -->|Найдено более 1го| C{Спросить по какому из?}
B -->|Найден 1 препарат| D[Запрос к БД по имени препарата]
C -->|Выбран препарат| D
B -->|Не найден| E{Запрос к модели для поиска похожего}
E -->|есть одно имя препарата| D
E -->|модель задала уточняющий вопрос| F[вопрос пользователю]
F -->|ответ поль-ля| E
```
---
## **4. Технологический стек**
- **Backend**: Node.js, MongoDB .
- **Векторная БД**: Weaviate / PostgreSQL + pgvector.
- **LLM-интеграция**: OpenAI API, YandexGPT API, GigaChat API.
- **Фронтенд**: Vue.
- **DevOps**: Docker.
---
## **5. Трудозатраты и сроки**
| Этап | Описание | Срок (нед.) | Трудозатраты (ч) |
|------|----------|------------|----------------|
| 1 | Интеграция с BookStack и векторной БД | 3 | 100 |
| 2 | Разработка интерфейсов (админка, чат) | 3 | 100 |
| 3 | Интеграция с Bitrix24 | 2 | 80 |
| 4 | Тестирование и доработки | 2 | 60 |
| **Итого** | | **10 недель** | **340 часов** |
---
## **6. Ожидаемые результаты**
- Рабочая платформа с RAG-поиском на корпоративных данных.
- Интеграция с BookStack и Bitrix24.
- Админ-панель, интерфейс загрузки файлов, веб-чат.
- Документация и инструкции по развертыванию.
---
## **7. Дополнительные требования**
- **Документирование API** (Swagger).
- **Логирование и мониторинг** (Prometheus).
- **Резервное копирование** данных стредствами ОС.
---
**Исполнитель:** ООО 1Концепт
**Заказчик:** _______________
**Дата:** 24.03.2025
**Подписи:**
_________________________ (Заказчик)
_________________________ (Исполнитель)
---