В рамках проекта разработана RAG-система, которая способна отвечать на различные вопросы об искусстве. Основным доменом проекта является художники и их работы.
Участники команды: Калязин Николай (по вопросам tg: @FanatBoba), Бурыкина Алина, Волков Даниил
В данном проекте используются два крупных набора данных про художников:
- WikiArt (https://www.wikiart.org/ru) - 80984 наименования произведений и 3518 имен различных художников. Скраппинг проходил с помощью кода, взятого в репозитории: https://github.com/michaelvin1322/scrapWikiArt/tree/master. Общее время сбора: 12 часов.
- Open Data at the National Gallery (https://github.com/NationalGalleryOfArt/opendata/tree/main) - датасет, содержащий описание 130 тысяч работ. Есть детальные описания всех работ, которые содержатся в национальной галерее вплоть до способа появления работы в ней
По итогу получилось 81 тысяч объектов с описанием (и авторов, и работ) в датасете. Их мы разделили на чанке по 384 символа и использовали в дальнейшем для создания эмбеддингов.
Проект покрывает только данные о различных художниках и использует информацию на английском языке. Поэтому во время фазы тестирования надо использовать только англоязычные вопросы. Вопросы, на которых считались метрики есть в jupyter-notebook в директории exps
В рамках работы использовались следующие инструменты и модели:
- RAG Dev: Langchain
- Эмбеддер: E5-Large
- База данных: FAISS
- LLM: Azure OpenAI GPT-4 Small
- Dev: Streamlit, Docker
С помощью GPT o1 были придуманы различные вопросы, связанные с искусством и художникам. Так же были придуманы вопросы самостоятельно. В итоговом валидационном датасете используется 21 вопрос.
Для сравнения между гипотеза использовались две метрики: Answer Relevance и Context Relevance, которые считались от 1 до 4. В данном случае использовалась техника LLM-as-a-Judge, при которой мы использовали промпт для оценки предложенных вариантов от 1 до 4. После чего бралось среднее число.
| AR | CR | |
|---|---|---|
| Only FAISS v3 | 3.19 | 3.26 |
| FAISS + LLM v3 | 3.52 | 3.26 |
| BM25 + LLM v3 | 3.42 | 1.62 |
| FAISS + LLM v1 | 3.41 | 2.76 |
Итоговый сервис разработан на Streamlit в виде веб-приложения. Наша команда выбрала вид чата, так как он достаточно удобен. Код сервиса доступен в ветке service
Сам сервис доступен по ссылке: https://artrag.streamlit.app/


