Локальный ИИ · обучение · RAG

Как загрузить школьные учебники в локального ИИ-репетитора: RAG, PDF и цитаты

Локальный ИИ-репетитор становится намного полезнее, если отвечает не только из памяти модели, а опирается на конкретный учебник, параграф или методичку. Для этого используют RAG: документы разбиваются на фрагменты, индексируются локальной embedding-моделью и перед ответом ИИ получает только те куски, которые относятся к вопросу ученика.

Актуально: сентябрь 2026 PDF · DOCX · Markdown · учебные материалы Local-first · без обязательного облака
Open WebUI Knowledge RAG Embeddings Hybrid Search Reranker Citations
Если нужен один вывод. Для школьного ИИ-репетитора не нужно fine-tune модели на каждом учебнике. Практичнее создать отдельные базы знаний по предметам и классам. Когда ребёнок задаёт вопрос, система сначала ищет релевантный фрагмент учебника, а затем передаёт его LLM. Качество такого ответа зависит не только от самой LLM, но и от парсинга PDF, chunking, embeddings, retrieval и reranking.
Учебник остаётся файломЕго не нужно «зашивать» в веса LLM.
Индекс строится отдельноФрагменты превращаются в векторы для поиска по смыслу.
LLM видит только найденноеВ prompt попадают несколько подходящих фрагментов, а не весь PDF.
Цитата обязательнаДля учебного режима полезно показывать источник каждого факта.

RAG простыми словами

RAG — Retrieval-Augmented Generation, то есть генерация ответа с предварительным поиском информации. Вместо того чтобы спрашивать LLM «что ты знаешь по теме», система сначала ищет нужный материал в собственной базе документов.

1Вопрос

«Почему зимой день короче?»

2Поиск

Найти параграф по окружающему миру.

3Контекст

Передать нужный фрагмент LLM.

4Ответ

Объяснить по возрасту ученика.

5Источник

Показать учебник и раздел.

В Open WebUI этот механизм встроен в Knowledge Bases: документы становятся поисковой базой, которую можно прикрепить к чату или конкретному профилю модели.

RAG — это не обучение модели на учебнике

RAG Ищет материал перед ответом

Документ можно заменить, удалить или переиндексировать без изменения весов LLM.

Fine-tuning Меняет поведение модели

Полезен для формата, стиля и устойчивых паттернов, но не лучший способ хранить учебник.

Если завтра ребёнок перейдёт на другой учебник, RAG-базу можно заменить за несколько минут. Fine-tuning ради этого был бы дороже, сложнее и хуже контролировался бы.

Хорошее разделение: знания курса хранятся в документах и RAG, педагогические правила — в system prompt и логике тьютора, а сама LLM отвечает за понимание вопроса и формирование объяснения.

Как устроен RAG-pipeline

Учебник / методичка PDF · DOCX · TXT · Markdown
↓
Extractionполучить текст и метаданные
Chunkingразбить материал на смысловые фрагменты
Embeddingsпревратить chunks в векторы
↓
Vector database chunks + embeddings + metadata + source/page
↓ вопрос ученика
Retrieveнайти кандидатов
Rerankподнять действительно релевантные
Contextпередать лучшие chunks в LLM
↓
Ответ + цитаты объяснение ученику со ссылкой на источник

Какие материалы лучше загружать

УчебникОсновная терминология, определения и порядок тем.
Рабочая тетрадьТиповые задания и формулировки.
МетодичкаПравила объяснения и критерии проверки.
КонспектыКраткая версия материала для повторения.
Словари и таблицыТермины, даты, формулы, правила.
Свои материалыКарточки, упражнения и памятки родителя или педагога.

Не стоит сваливать все документы всех классов и предметов в одну гигантскую коллекцию. Предметная база работает предсказуемее, если её scope понятен.

knowledge/
├── 2-class/
│   ├── matematika/
│   │   ├── textbook.pdf
│   │   ├── rules.md
│   │   └── exercises.md
│   └── russkiy/
│       ├── textbook.pdf
│       └── dictionary.md
└── 8-class/
    ├── fizika/
    └── algebra/

PDF — самое слабое место, если его неправильно извлечь

PDF может визуально выглядеть идеально, но внутри содержать текст в неправильном порядке, отдельные символы вместо слов или вообще только сканы страниц. Перед индексированием важно проверить, что реально извлеклось.

Тип 1Нормальный текстовый PDF

Текст выделяется мышью и обычно извлекается достаточно хорошо.

Тип 2Скан страниц

Нужен OCR до RAG, иначе индексировать почти нечего.

Тип 3Сложная верстка

Две колонки, сноски, таблицы и боковые вставки могут ломать порядок текста.

Тип 4Учебник с рисунками

Текстовый RAG не понимает саму схему или иллюстрацию без multimodal pipeline.

Не индексируйте учебник вслепую. Сначала откройте извлечённый текст нескольких случайных страниц. Если абзацы перемешаны, формулы потерялись или заголовки отделились от содержания, качество retrieval будет плохим независимо от embedding-модели.

Chunking: как резать учебник на фрагменты

Если отправить весь учебник в embedding как один документ, поиск будет слишком грубым. Если порезать его на отдельные предложения, потеряется смысл. Поэтому chunk должен быть достаточно коротким для точного поиска и достаточно длинным, чтобы сохранять контекст.

Слишком мелко «Испарение — это…»

Мало контекста: неизвестно, откуда определение и о чём соседний абзац.

Нормально Подраздел «Испарение воды»

Определение + пример + 1–2 связанных абзаца.

Слишком крупно Вся глава

Поиск возвращает много лишнего, а полезный факт теряется внутри большого блока.

Open WebUI поддерживает разбиение по символам или токенам и умеет сначала учитывать Markdown headings, а затем дополнительно делить большие секции. Это особенно удобно, если учебник предварительно конвертирован в чистый Markdown с заголовками.

Стартовое правило: не искать «магическое число chunk size». Сначала добейтесь логического деления по разделам, затем проверяйте retrieval на 20–30 реальных вопросах.

Embedding-модель: что использовать для русского

Embedding-модель не пишет ответ. Она превращает вопрос и chunks документов в векторы, чтобы можно было найти фрагменты, близкие по смыслу.

Open WebUI позволяет использовать локальный SentenceTransformers backend, Ollama embeddings или OpenAI-compatible embeddings. Для русскоязычной базы лучше выбирать действительно multilingual-модель.

Современный вариант Qwen3-Embedding

Семейство 0.6B, 4B и 8B; поддержка более 100 языков, включая русский, и отдельные reranker-модели.

GitHub →
Проверенный multilingual BGE-M3

Dense, sparse и multi-vector retrieval; более 100 языков и длинный вход.

GitHub →

Qwen3-Embedding официально поддерживает русский и более 100 языков, а линейка содержит отдельные embedding и reranking модели. Это делает её удобным современным кандидатом для русскоязычных учебных баз. citeturn276160search0turn276160search1

Embedding-модель нельзя менять без последствий. Старые векторы были построены другой моделью и лежат в другом embedding space. После смены модели документы нужно переиндексировать.

У школьных материалов много точных терминов: фамилии, даты, номера формул, обозначения, параграфы. Семантический поиск полезен для смысла, но keyword search иногда точнее.

Поэтому в Open WebUI можно включить hybrid search: vector retrieval объединяется с BM25, после чего кандидаты дополнительно проходят reranking. Такая схема особенно полезна для вопросов вроде «что сказано в параграфе 17 про фотосинтез?».

VectorИщет по смыслу
+
BM25Ищет точные слова
→
RerankerПересортировывает кандидатов
→
Top chunksИдут в LLM

Как это делается в Open WebUI Knowledge

  1. Открыть Workspace → Knowledge.Создать базу, например «Математика 2 класс».
  2. Загрузить учебник и дополнительные материалы.Open WebUI извлечёт текст и построит embeddings.
  3. Прикрепить Knowledge Base к модели.Например, к профилю «Учитель математики».
  4. Проверить retrieval вручную.Задать вопросы по разным главам и открыть цитируемые фрагменты.
  5. Настроить chunking и search при необходимости.Не менять параметры только ради «оптимизации» без тестового набора вопросов.

Когда RAG не нужен: Full Context

Если документ короткий — например, памятка на 2–4 страницы, список правил или план урока — retrieval может быть лишним. Open WebUI умеет передать весь файл в контекст модели.

Focused Retrieval Большой учебник

Ищем несколько нужных фрагментов и экономим context window.

Full Context Короткая памятка

Весь документ помещается в prompt и доступен модели целиком.

Для 300-страничного учебника Full Context обычно бессмысленен: даже если модель формально поддерживает большое окно, это медленнее и менее эффективно, чем качественный retrieval.

Цитаты — обязательная часть учебного режима

Open WebUI умеет показывать citations для RAG-контекста. Для ребёнка и родителя это особенно полезно: можно открыть фрагмент и проверить, действительно ли ответ опирается на учебник.

Пример ответа

Испарение — это переход вещества из жидкого состояния в газообразное с поверхности жидкости. Скорость испарения зависит от температуры, площади поверхности и движения воздуха.

Источник: Окружающий мир, 4 класс · глава 3 · «Круговорот воды»
Цитата сама по себе не доказывает ответ. Нужно проверить, что процитированный fragment действительно содержит утверждение, а не просто относится к похожей теме.

Как сделать режим «отвечай только по учебнику»

Одним prompt нельзя гарантировать абсолютную строгость, потому что LLM всё равно имеет собственные знания. Но поведение можно сделать заметно более контролируемым.

1. Retrieval обязателенПеред фактическим ответом модель должна получить источник.
2. Нет источника — нет ответаФормулировка: «В загруженных материалах я этого не нашёл».
3. Показывать citationОтвет без ссылки на fragment считать непроверенным.
4. Разделять факт и объяснениеФакт — из учебника; аналогия может быть сгенерирована ИИ.
Пример правила для профиля учителя
Отвечай на фактические вопросы по предмету только на основе
контекста, полученного из подключённой базы знаний.

Если в retrieved context нет ответа:
1. прямо скажи, что информация в учебнике не найдена;
2. не придумывай факт из памяти модели;
3. предложи уточнить вопрос или выбрать другой учебник.

Всегда отделяй:
- факт из источника;
- своё объяснение или аналогию.

Что делать с рисунками, картами, схемами и формулами

Обычный текстовый RAG индексирует то, что удалось извлечь в текст. Поэтому подпись к рисунку он найдёт, а саму схему электрической цепи или географическую карту может не понять.

ТекстОбычный RAG

Определения, параграфы, вопросы, подписи.

ФормулыНужен хороший parser

Важно не потерять символы и структуру выражения.

СхемыVision-модель

Изображение нужно подавать мультимодальной модели.

Карты и рисункиMultimodal RAG

Текстовый индекс + сохранённые изображения и ссылки на страницы.

Для первого школьного прототипа разумно начать с текстовых предметов и простых PDF. Затем отдельно добавлять vision для страниц, где без изображения теряется смысл.

Одна база или отдельная база на каждый предмет

МатематикаОтдельная Knowledge Base

Учебник, формулы, правила, типовые решения.

Русский языкОтдельная Knowledge Base

Учебник, словари, орфографические правила.

ИсторияОтдельная Knowledge Base

Учебник, даты, карты, дополнительные источники.

Общие правилаОтдельная короткая база

Как вести урок, формат ответов, критерии проверки.

Это даёт чистый scope и снижает шанс, что на вопрос по русскому языку retrieval случайно подмешает фрагмент из методички по истории.

Что происходит при обновлении материалов

Если вы заменили учебник или изменили chunking, старые chunks не обязаны исчезнуть автоматически. В Open WebUI при изменении chunk size старые документы сохраняют прежнюю нарезку до re-index. Для единообразия лучше переиндексировать коллекцию.

При смене embedding-модели re-index уже не просто желателен, а необходим: vectors разных моделей несовместимы. Это прямо отмечено в документации Open WebUI. citeturn978648search0

После серьёзного изменения RAG:
  • проверить embedding model;
  • проверить chunking;
  • запустить re-index;
  • прогнать тот же набор тестовых вопросов;
  • сравнить retrieval до и после изменения.

Как собрать первый рабочий вариант

  1. Выбрать один учебник.Например, математика одного класса.
  2. Проверить извлечение текста.Случайно открыть 10–15 страниц после parsing.
  3. Создать одну Knowledge Base.Без смешивания разных предметов.
  4. Начать с базовых настроек Open WebUI.Не оптимизировать chunking до первого теста.
  5. Составить 30 реальных вопросов.Определения, «почему», «сравни», номера параграфов и вопросы ученика.
  6. Проверять сначала retrieval.Нашёл ли система правильный fragment — до оценки ответа LLM.
  7. Включить hybrid search/reranking при необходимости.Если точные термины или даты ищутся плохо.
  8. Добавить strict-mode prompt.Нет источника → честно сказать, что ответ не найден.
Хороший MVP: один учебник, одна Knowledge Base, одна multilingual embedding-модель, 30 тестовых вопросов и обязательные citations. Этого достаточно, чтобы понять, работает ли архитектура.

Типичные ошибки

Загрузили PDF и сразу доверяют ответамНе проверили, что текст вообще корректно извлёкся.
Все предметы в одной базеRetrieval получает лишний шум и пересечения терминов.
Слишком мелкие chunksФрагменты теряют смысл и связь с разделом.
Слишком большие chunksВ контекст попадает много лишнего текста.
Embedding только под английскийРусский retrieval оказывается слабее ожидаемого.
Сменили embeddings без re-indexПоиск работает в несовместимом vector space.
Нет тестового набора вопросовНастройки меняются наугад.
Нет citationsНельзя быстро проверить, откуда модель взяла факт.

Частые вопросы

Нужно ли обучать LLM на школьном учебнике?

Обычно нет. Для знаний из конкретного учебника лучше RAG: документ остаётся отдельно и подмешивается в контекст только когда нужен.

Можно ли всё сделать без Интернета?

Да. Парсинг документов, embeddings, vector database, reranking и LLM могут работать локально. Модели и программы потребуется один раз скачать.

Можно ли загрузить учебник PDF прямо в Open WebUI?

Да. Knowledge Bases рассчитаны на работу с PDF и другими документами. Но качество зависит от того, насколько правильно извлёкся текст конкретного PDF.

Какая embedding-модель подходит для русского?

Нужна multilingual-модель. Среди актуальных вариантов — Qwen3-Embedding и BGE-M3. Выбор лучше проверять на собственном наборе вопросов и учебников.

Можно ли заставить ИИ отвечать только по учебнику?

Можно существенно приблизиться к этому режиму: обязательный retrieval, правило «нет контекста — нет ответа» и citations. Абсолютную математическую гарантию один system prompt не даёт.

Что делать с рисунками и схемами внутри учебника?

Для них нужен multimodal pipeline: сохранить изображения страниц или отдельных схем и подключать vision-модель. Обычный текстовый RAG видит только извлечённый текст.

Источники и проекты

Следующий материал

Несколько ИИ-учителей на одном компьютере

Математик, русский, английский и другие предметы: отдельные профили, базы знаний, system prompts, голоса и общий профиль ученика.