Разработать приложение для интеллектуального поиска с применением больших языковых моделей (LLM) и подхода Retrieval Augmented Generation (RAG).
Большие языковые модели сегодня активно применяются в коммерческих IT-продуктах, в том числе в замкнутом корпоративном контуре. Одним из наиболее распространенных кейсов языкового моделирования являются вопросно-ответные системы. Решения на базе RAG сегодня являются стандартом генеративных реализации генеративных вопросно-ответных систем.
определиться с приложением: это может быть мобильное приложение, чат-бот, веб-приложение, приложение для ПК и т. д.
ознакомиться с базовыми возможностями фреймворка LangChain (Document loaders, Embeddings, Chat Models, Retrievers)
подготовить (собрать, загрузить) базу знаний: это могут быть файлы PDF, ссылки в сети Интернет, пространства в Notion и другое
развернуть локально LLM с использованием Ollama / llama.cpp либо использовать GigaChat API (в этом случае рекомендуется рассмотреть фреймворк GigaChain - расширение LangChain)
При использовании GigaChat API бесплатно предоставляется около 1 млн. токенов. Этого должно хватить для выполнения задания. Преподаватель не поддерживает покупку платных пакетов.
реализовать подход RAG для поиска ответов на вопросы по собранной базе документов
разработать приложение-обёртку для реализованного RAG
оформить отчёт
вы можете использовать любые большие языковые модели с открытыми весами; рекомендуется попробовать Llama3.1 и Mistral (модели в Ollama либо квантованные версии с Hugging Face)
для локального запуска больших языковых моделей у вас должно быть минимум 8 ГБ оперативной памяти
LangChain является рекомендуемым решением для разработки ядра вопросно-ответной системы, однако вы можете использовать другие фреймворки (например LlamaIndex)
задание предполагает реализацию RAG в базовом варианте (загрузка документов, разделение их на чанки, векторизация чанков, размещение чанков в векторном хранилище, организация цепочки для извлечения релевантных чанков и получения ответа на вопрос), использование продвинутых техник RAG (MMR, Reranking, Ensemble retriever и др.) не требуется
Домашнее задание считается выполненным, если оно загружено через электронный кабинет ОмГТУ и принято преподавателем
Преподаватель оставляет за собой право отклонить работу, если оформление отчёта не соответствует требованиям нормоконтроля
титульный лист здесь (указать преподавателя, которому сдаёте ЛР)
рекомендуется скачать и использовать титульник в Microsoft Word; если делаете отчет в Google Docs, то титульник лучше в Microsoft Word заранее подготовьте и конвертируйте в pdf; а потом pdf уже склеивайте;
отчёт должен содержать следующие разделы:
введение (1 страница) с описанием актуальности систем интеллектуального поиска
раздел 1 с описанием процесса реализации RAG (от 3 страниц)
раздел 2 с описанием процесса разработки приложения (здесь необходимы скриншоты) (от 3 страниц)
заключение (1 страница)
список использованных источников (обратите внимание на оформление)