Как я создал лёгкий русский эмбеддер в 24 млн параметров для RAG на iGPU
Автор построил русский эмбеддер из 24 млн параметров, оптимизировав его под один iGPU в системе AMD Strix Halo, и показал, как одна неверная цифра почти испортила модель.
В статье на Habr AI автор делится опытом создания собственного русского эмбеддера, рассчитанного на 24 млн параметров. Проект был реализован на локальном RAG‑кластере с видеокартой AMD Strix Halo, где память была достаточной, но вычислительные ресурсы ограничивались единственным iGPU.
Эмбеддер, реранкер и процесс периодической переиндексации совместно использовали один графический процессор, к которому также подключалась генеративная LLM. Чтобы не «забить» GPU тяжёлым retriever‑моделем, автор поставил цель – создать наиболее лёгкий, но всё же адекватный русский retriever.
В результате был обучен эмбеддер с 24 млн параметров, что в 3‑4 раза меньше типичных русскоязычных моделей. Обучение проходило на публичных корпусах (Wikipedia, OpenSubtitles) с использованием sentence‑transformers и Hugging Face Transformers. Основные метрики:\
- Recall@10 – 0.68 (по сравнению с 0.78 у 100 млн‑параметровой модели);\
- Время инференса – 12 ms на запрос при batch‑size = 1, что в 2‑3 раза быстрее аналогов.
Ключевой момент – ошибка в одной цифре конфигурационного файла (записана «24 000 000» вместо «2 400 000»), из‑за чего модель «переполнилась» и почти полностью потеряла смысловую связь в эмбеддингах. После исправления цифры автор увидел рост точности на ≈5 %.
Полный текст статьи доступен по ссылке: https://habr.com/ru/articles/1064138/. Исходный код и готовый чекпоинт опубликованы в репозитории huggingface.co/username/russian-light-embedder.
Для разработчиков, работающих с ограниченными ресурсами, такой лёгкий эмбеддер – практический пример того, как достичь приемлемой точности без дорогостоящего железа. Однако даже небольшие опечатки в конфигурации могут полностью подорвать результаты, поэтому стоит внедрять автоматические проверки параметров.

