pakka-minilm-l12-hinglish
эмбеддер для кэша ответов поддержки
Это fine-tune sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 от mohd010 для одной задачи: решать, можно ли в support-боте переиспользовать закэшированный ответ на новый вопрос. Поддерживает английский, Hinglish и хинди; 0,12 млрд параметров, ~0,47 ГБ и ~9 мс на вопрос на CPU ноутбука. В карточке прямо сказано: модель полезна только вместе с verifier.
⚙ Ключевые особенности
- 🧩 Создана для кэша ответов: сравнивает новый вопрос с закэшированными и помогает решить, безопасно ли отдать готовый ответ.
- 🌐 EN / Hinglish / Hindi; тот же размер и скорость, что у base MiniLM-L12.
- ⚙ Встраивается в pakka: NumpyCache, CachedAnswerer, guard и verify; с verifier порог 0,6.
- ❕ Без verifier порог 0,906, но качества выше base нет — использовать отдельно смысла мало.
- 🏆 На 258 реальных сообщениях с Jev: 54 верных ответа из кэша и 1 ложное попадание против 19/0 у base.
- 🦾 С дешёвым LLM-verifier больше ошибок: 76 верных / 9 ложных; на CLINC150 и части public-сетов хуже base.
💡 Пример
from pakka.cache import NumpyCache
from pakka.embed import TUNED_EMBEDDER, load_embedder
from pakka.flow import CachedAnswerer
from pakka.guard import check
from pakka.verify import load_verifier
cache = NumpyCache(load_embedder(TUNED_EMBEDDER))
bot = CachedAnswerer(cache, my_llm, threshold=0.6, guard=check, verify=load_verifier('jev'))
Подробнее
Обучение: 1 эпоха, lr 2e-5, batch 64, MultipleNegativesRankingLoss на триплетах + CoSENT на парах; ~1,4 мин на Kaggle T4.Данные: ~7,7 МБ, 11 527 триплетов и 21 064 пары; пересечения с тестами и человеческими сообщениями удалены.
Железо: ~0,47 ГБ, ~9 мс на вопрос на CPU ноутбука.
Ограничения: человеческий тест маленький (258 сообщений), 95% интервалы широкие; на CLINC150, Banking77, MASSIVE и LangCache без verifier хуже base.








Комментарии