AI/journal
Эмбеддинги
Эмбеддинги в 2024: OpenAI text-embedding-3, BGE, Jina, Cohere
← ЖурналAI6 мин чтения

Эмбеддинги в 2024: OpenAI text-embedding-3, BGE, Jina, Cohere

Команда nordiqdev
студия

Год назад мы по умолчанию ставили text-embedding-ada-002 и не задумывались. В 2024-м - задумываемся. У OpenAI новая линейка, открытые модели догнали и местами обошли, для русского языка появились приличные варианты. Делимся таблицей решений.

Что мы тестировали

  • OpenAI text-embedding-3-small (1536 dim) и -large (3072 dim).
  • BGE-M3 от BAAI (1024 dim, открытая, мультиязычная).
  • Jina embeddings v3 (1024 dim, мультиязычная).
  • Cohere embed-multilingual-v3 (1024 dim).
  • Базовая ada-002 как референс.

На английском (наш eval-набор)

На retrieval-задаче по корпусу 50k документов разница между лидерами в пределах 2–4 пунктов nDCG@10. text-embedding-3-large побеждает чаще, но BGE-M3 идёт вторым и стоит дешевле в self-hosted сценарии. Cohere embed-v3 сильно конкурентна.

На русском (отдельный eval)

Здесь картина другая. ada-002 проседает заметно - она училась преимущественно на английском. text-embedding-3-large сильно лучше, BGE-M3 примерно сопоставим, Jina v3 на русском показывает лучшие цифры из всех. Для русскоязычных RAG мы сейчас по умолчанию берём Jina v3 или BGE-M3.

Размерность и стоимость хранения

На больших корпусах размерность напрямую влияет на счёт за вектор-БД и память. 3072 dim у large-модели звучат соблазнительно, но при миллионе документов - это 12 ГБ только под векторы. text-embedding-3 поддерживает Matryoshka-truncation: можно хранить меньшую размерность с минимальной потерей.

Латентность и стоимость генерации

  • OpenAI: ~80–200 мс на запрос, 0.02$ за миллион токенов (small) или 0.13$ (large).
  • Cohere: ~60–150 мс, 0.10$ за миллион.
  • BGE-M3 self-hosted на A10G: ~15–40 мс на запрос, $0 за токен, ~$300/мес за машину.
  • Jina API: ~70–180 мс, 0.05$ за миллион.

Что мы сейчас выбираем

  • Английский RAG, малый объём, нет требований по приватности - text-embedding-3-large через API.
  • Русский или мультиязычный RAG - Jina v3 или BGE-M3.
  • Большой объём (>5 млн документов), есть DevOps - BGE-M3 self-hosted.
  • Жёсткие требования по приватности (медицина, госы) - только self-hosted, BGE-M3 или E5-mistral.
Теги
#embeddings#rag#vector search#bge#openai
Студия nordiqdev

Делаем мобильные приложения, веб-сервисы и AI на заказ

Если задача из текста выглядит знакомой и нужна команда, которая соберёт продукт - расскажите подробнее. Вернёмся в течение 24 часов с разбором.