TGViewer
Вася Сизов | grok ML Вася Сизов | grok ML @grok_ml · 64 subscribers
Post #18 50
RAG за 40 минут или VS CODE на "максималках"

До нового года я начал погружаться в построение RAG-ов. Простыми словами - а давайте в контекст промпта для LLM будем добавлять свои локальные данные. Но не все данные, а максимально подходящие под запрос. Звучит не очень сложно, но вот написать такое руками даже с библиотеками - все равно время.

Примерно в то же время я узнал о Cursor - это тот же VS CODE, в котором есть две дополнительные функции:
- Chat - обычный чат с LLM, которой можно задавать вопросы по коду и не только
- Compose - на вход подаем промпт, а на выходе код. И не просто код - автоматически создаются все файлы и проект в целом. Далее можно просто уточнять требования и принимать или не принимать изменения в коде.

Мне показалось это очень интересным, и я решил использовать Cursor для написать простого RAG в виде web приложения. Требования у меня были следующие:
- Стек - django, langchain, faiss, небольшая llm для локального использования
- В django - три страницы - просто чат с llm, вкладка для загрузки pdf документа и окно для вопросов по этому pdf, и третья страница - визуализация разбиения документов на части

Здесь нужно остановиться поподробнее про разбиение pdf документа. Идея следующая: загружаем pdf документ, парсим его, разбиваем текст на кусочки. Далее задаем вопрос, по этому вопросу с помощью faiss ищем похожие на вопрос кусочки из pdf, добавляем эти кусочки в контекст промпта для llm рядом с вопросом, получаем ответ на основе этого контекста. В итоге, можно задавать вопросы по любому pdf документу!

Думаю, идея понятна. Переходим к реализации, а точнее, к написания промптов в Cursor. Из интересного:
- РАБОЧИЙ прототип был готов через 40 минут
- Используемая модель в cursor - claude 3.5 sonnet
- Я промпты писал исключительно на русском
- Если возникали ошибки - я просто копировал их из командной строки без комментариев. Если были сложные ошибки, то добавлял в контекст файлы с кодом (в cursor так тоже можно)
- Один раз возникла ошибка при отображении элемента в django-приложении - я просто сделал скриншот и отправил его cursor

Если коротко - это восторг! Я не написал ни одной строки кода. Но есть и некоторые тонкости:
- Я заранее понимал какие промпты писать, так как с темой был знаком (да и с django на базовом уровне тоже)
- Код, очевидно, не оптимальный. Иногда даже рабочий, но не правильный. После подготовки прототипа нужно будет потратить много времени на рефакторинг и анализ

Но главный вывод - для прототипов на коленке просто must have. С моим кодом ознакомиться можно здесь: https://github.com/Vasily-Sizov/simple_rag. Я специально не вносил никаких своих изменений, чтобы можно было понять, на что способен cursor.

PS: Cursor на данный момент бесплатный и нет ограничений на создаваемые аккаунты!
GitHub GitHub - Vasily-Sizov/simple_rag Contribute to Vasily-Sizov/simple_rag development by creating an account on GitHub.
More from @grok_ml
  1. Oct 7, 2026North Star: почему главная метрика компании — обычно не деньги Первый шаг из состояния, гд…
  2. Oct 4, 2026RAG отвечает правильно в 90% случаев, а пользователи говорят, что модель плохая Кейс из жи…
  3. Sep 27, 2026Точечная оценка и доверительный интервал 🔵Accuracy 90% на 100 объектах и на 100 000 — это…
  4. Sep 14, 2026В предыдущем посте были пять паттернов workflow. Общее у них одно: путь по шагам задан код…
  5. Sep 14, 2026В прошлом посте была шкала из шести уровней автономии. У неё есть слабое место: граница ме…
  6. Sep 2, 2026Что вообще такое «агент» Агентом сейчас называют что угодно: чат-бота, скрипт с одним пром…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →