Продолжаю изучать векторы и эмбеддинг-модели.
Как рекомендовали сгенерировал 50 пар и указал флаг is_semantic_relevant.
Прогнал 2 модели:
-
BAAI/bge-small-en-v1.5-
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2Наиболее интересным показался график распределения пар по косинусной близости (см. картинку). Он наглядно показывает распределение полученных векторов между релевантными и нерелевантными парами.
———
Косинусная близость (схожесть) - это мощная метрика для сравнения семантической близости текстов, изображений или других данных, представленных в виде векторов.
Если два текста похожи по смыслу, их векторы будут близки, и косинусная близость будет стремиться к 1.
Если тексты не похожи - будет стремиться к 0.
———
У модели
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 наблюдается значительное разделение между релевантными и нерелевантными парами.У модели
BAAI/bge-small-en-v1.5 разделение менее выражено. А также есть пересечение. Как понимаю это очень нехороший показатель.Вывод:
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 лучше разделяет релевантные и нерелевантные пары. В контексте построения RAG это означает, что система будет эффективно извлекать релевантные документы, так как их векторы четко отделены от нерелевантных. Вероятность извлечения нерелевантных документов (ложноположительных срабатываний) будет низкой.
Это в свою очередь улучшит качество ответов ИИ-приложения, так как LLM получит релевантный контекст.
