Курс "Введение в LLM". ITMO University. Ai Talent Hub.
Название: т.чка
Участники:
- Щетинников Константин Дмитриевич
- Кравцов Владимир Михайлович
- Корнилова Валерия Александровна
Система Retrieval-Augmented Generation (RAG), которая помогает пользователю задавать вопросы в любой форме и получать ответы на основе статей Хабра.
Краткое описание:
Набор данных постов и комментариев с habr.com , российского коллективного блога об ИТ, компьютерных науках и всем, что связано с Интернетом.
Размер: ~300 000 документов
Языки: русский, английский, немного программного кода.
Статистика:
- Длина документов:
- Max length: 301 996
- Min length: 152
- Average length: 7732.74
- Топ-10 тем:
- javascript
- python
- android
- linux
- программирование
- java
- разработка
- apple
- microsoft
Выводы:
- язык преимущественно русский
- домен только IT, computer science, Internet. Можно попробовать парсинг сайта harb.com
- большой датасет
- в силу разной длины документов, необходимо их разбить на чанки
Для быстрого поднятия приложения данные были предварительно обработаны:
- разбиты на чанки
- векторизованы в плотные матрицы
- сохранены в файл
harb20.db
В нашем пайплайне мы применяем stepback-prompting основного запроса. Это позволяет найти в базе дополнительные чанки. На выходе используется реранкер для фильтрации более релевантных чанков.
- Stepback-prompting основного запроса
- Основной запрос и stepback-запрос векторизуются в плотные матрицы
- Матрицы передаются векторному хранилищу данных. Осуществляется поиск
k=5релевантных чанков для каждого запроса. - Найденные чанки реранжируются.
- Найденные чанки передаются LLM и генерируется ответ.
- Эмбеддер (dense vectors) -
USER-bge-m3 - Векторное хранилище -
Milvus - Реранкер -
Multilingial-e5-large - LLM -
Llama-3.3-70b-versatile
Видео тестового запуска: ./content/video.mp4
Скрипты и выборка для тестировани находится в директории ./testing
| Metric | Result |
|---|---|
| Response vs input | 0.95 |
| Response vs retrieved docs | 0.76 |
| Retrieved docs vs input | 0.8 |
- Создать директорию
./storage/data, скачать файлhabr20.dbи добавить в созданную папку.
Файлы для скачивания: ссылка - Чтобы запустить приложение, выполните команды:
uvicorn server.app:app
streamlit run client/app.py