Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

🚀 Создаем собственные эмбеддинги и токенизацию

Как заставить маленьку локальную модель 7B-13B по-настоящему понимать термины вашей предметной области? Стандартный Retrieval-Augmented Generation (RAG) часто терпит неудачу, потому что готовые модели эмбеддингов не улавливают специфическую семантику, а стандартные токенизаторы кромсают технические термины на кусочки.

Чтобы построить локальную LLM промышленного уровня, которая быстро понимает и лучше аргументирует, вам нужно создать эмбеддинги, ориентированные на вашу предметную область.

🧠 Основная стратегия: Тонкая настройка и собственный словарь

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

🗓 План действий

Фаза 1️⃣: Исправьте токенизатор (первое узкое место)

Проблема: Стандартные токенизаторы (например, от BGE, MiniLM) разбивают жаргон вашей предметной области на несколько бессмысленных подслов, подрывая эффективность модели.

Действие: Оцените необходимость количественно. Рассчитайте соотношение токенов к словам на вашем корпусе текстов.

# Псевдокод для анализа
token_count = len(tokenizer.tokenize(your_technical_text))

word_count = len(your_technical_text.split())

ratio = token_count / word_count
    ```
**Порог принятия решения:** Если `ratio > 1.25`, ваш токенизатор неэффективен. **Вам нужен собственный.**

Используйте библиотеку Hugging Face `tokenizers` (Rust/Python) для обучения нового токенизатора на основе **Byte Pair Encoding (BPE)** на вашем корпусе текстов. Это — не подлежащий обсуждению, версионируемый артефакт.

**Фаза 2️⃣: Тонкая настройка модели эмбеддингов (семантический движок)**

**Проблема:** Предварительно обученная модель не знает, какие из ваших документов являются семантически похожими.

**Действие: Сгенерируйте данные для обучения.** 

Самый эффективный метод — использовать мощную модель (например, GPT-4) для **синтетического создания пар "запрос-документ"** из вашего корпуса. Задайте промпт: "Исходя из этого фрагмента текста, сгенерируй 3 вопроса, которые мог бы задать пользователь".

**Тонкая настройка для поиска.**
- **Базовая модель:** Начните с малой, но эффективной модели.
- **Функция потерь:** Используйте **Multiple Negatives Ranking Loss (MNRL)**. Это критически важно — она напрямую оптимизирует вашу модель для ранжирования релевантных документов выше нерелевантных.
- **Результат:** Ограничьте размерность эмбеддингов до **384 или 512** для повышения скорости и эффективности хранения в вашей локальной среде.

💼 Карьерная перспектива: Почему это важно для вас

Освоение этого умения поставит вас на передний край **промышленной инженерии искусственного интеллекта**. Компании нуждаются в инженерах, которые могут выйти за рамки прототипов и строить надежные, ориентированные на предметную область AI-системы. 

Этот набор навыков — охватывающий синтез данных, тонкую настройку моделей и проверку производительности — это то, что отделяет инженера по промптам от настоящего **ML/LLM Ops инженера**.

📚 Ваш набор инструментов для обучения

Чтобы углубиться, примените на практике эти инструменты и концепции, являющиеся отраслевым стандартом:

**Основные библиотеки:**
✅ Hugging Face `transformers` & `tokenizers`
✅ `sentence-transformers` для упрощенной тонкой настройки.
✅ `safetensors` для безопасного сохранения моделей.

**Ключевые концепции:**
✅ **Retrieval-Augmented Generation (AG)** — расширенные архитектуры
✅ **Multiple Negatives Ranking Loss (MNRL)** и **Triplet Loss**
✅ **Byte Pair Encoding (BPE)** vs. WordPiece
✅ **Метрики оценки:** Mean Reciprocal Rank (MRR), Precision@K

**⚠️ Важное предупреждение**

Всегда проверяйте работу на отложенном тестовом наборе. Измерьте улучшение **Mean Reciprocal Rank (MRR)** вашей тонко настроенной модели по сравнению с базовой моделью. Это проверяемое улучшение производительности — ваше доказательство успеха.

#LLM #RAG #Embeddings #AIEngineering #FineTuning