Исследовательский проект: сравнение RAG-систем на базе GigaChat и Mistral для ответов на вопросы студентов ОмГТУ. Цель — измерить, насколько RAG улучшает качество ответов языковой модели на доменных данных об университетской жизни, и сравнить коммерческую (GigaChat API) и локальную open-source (Mistral) конфигурации.
Выполнен в рамках участия в конференции iFORUM 2026.
| Компонент | Технология |
|---|---|
| LLM (коммерческая) | GigaChat API (Sber) |
| LLM (локальная) | Mistral (локальный вывод) |
| Оркестрация | LangChain |
| Векторная БД | ChromaDB |
| Эмбеддинги | paraphrase-multilingual-mpnet-base-v2 |
| Язык | Python 3.10+ |
rag_omstu/
├── data/
│ └── rag_omstu.json # База знаний (244 Q&A чанка)
├── pipeline/
│ ├── ingest.py # Загрузка JSON → ChromaDB
│ ├── retriever.py # Поиск по векторной БД
│ ├── chain.py # LangChain цепочка с GigaChat
│ ├── chain_mistral.py # LangChain цепочка с Mistral
│ └── evaluate.py # Метрики качества
├── results/
│ ├── results_gigachat.json # Результаты GigaChat (baseline + RAG)
│ └── results_mistral.json # Результаты Mistral RAG
├── compare.py # Сравнительный анализ трёх систем
├── main.py
├── requirements.txt
└── .env
git clone https://github.com/vladosss-prog/RAG_OMSTU
cd rag_omstu
pip install -r requirements.txtСоздай .env:
GIGACHAT_CREDENTIALS=твой_токен_base64
Загрузи базу знаний (один раз):
python pipeline/ingest.pyЗапусти:
python main.py244 Q&A чанка по темам студенческой жизни ОмГТУ:
- Стипендии и ПГАС
- Академический отпуск
- Баллы для поступления
- Сессия и каникулы
- Деканаты и контакты
- Мероприятия и организации
- Навигация по кампусу
- и другие
Источник данных — omgtu.ru.
Сравнение трёх конфигураций на тестовой выборке из 42 вопросов:
| Режим | Описание |
|---|---|
| Baseline | GigaChat без контекста (без RAG) |
| GigaChat + RAG | GigaChat + топ-3 чанка из ChromaDB |
| Mistral + RAG | Mistral (локально) + топ-3 чанка из ChromaDB |
Метрики: точность ответов, частота галлюцинаций, релевантность, среднее время ответа, корректные отказы.
| Метрика | Baseline (GigaChat) | GigaChat + RAG | Mistral + RAG |
|---|---|---|---|
| Точность, % | 21,4 | 88,1 | 85,7 |
| Галлюцинации, % | 59,5 | 0,0 | 7,1 |
| Релевантность, % | 78,6 | 100,0 | 100,0 |
| Среднее время ответа, с | 2,50 | 1,09 | 3,11 |
| Корректные отказы (из 42) | 0 | 10 | 5 |
Обе RAG-конфигурации значительно превосходят базовую модель. Разрыв между GigaChat+RAG и Mistral+RAG составляет 2,4 п.п. по точности. При этом Mistral работает полностью локально, не требует платного API и допускает дообучение на предметных данных.
Оценка проводилась вручную по трём критериям: точность (фактическая верность ответа), галлюцинация (наличие недостоверной информации), релевантность (соответствие ответа вопросу). Аннотирование выполнено четырьмя участниками команды независимо.