Обзор векторных баз данных VectorDB и Milvus с открытым исходным кодом
Обновлено 19 января 2024 - 11 месяцев назад. Thenewstack.io.
Оглавление
- Отсутствие простоев во время скользящих обновлений
- 3x улучшение производительности в производственных средах
- Улучшение показателя запоминания на 5% на наборе данных Beir
- 10-кратная экономия памяти при работе с большими массивами данных
- 20 релизов Milvus
- Миллион арендаторов в одном Кастере
- 10 миллионов загрузок образов Docker
- Векторные базы данных идут по пути диверсификации
- Эластичная масштабируемость необходима для нативных приложений AI.
- Машинное обучение в векторных базах данных может дать необычные результаты
- Открытый исходный код против закрытого исходного кода
- Эпилог и новое начало
Прошлый год ознаменовался поворотным моментом в искусственном интеллекте (ИИ). Большие языковые модели (LLM) заняли центральное место, получив широкое признание благодаря своим исключительным возможностям обработки естественного языка. Этот всплеск популярности существенно расширил возможности приложений машинного обучения, позволив разработчикам создавать более интеллектуальные и интерактивные приложения.
На фоне этой революции векторные базы данных стали важнейшим компонентом, выполняющим роль долговременной памяти для LLM. Появление моделей поколения с расширенным поиском (RAG), интеллектуальных агентов и приложений для мультимодального поиска продемонстрировало огромный потенциал векторных баз данных в повышении эффективности мультимодального поиска данных, уменьшении галлюцинаций в LLM и дополнении знаний о домене.
Эволюция LLM также послужила катализатором значительного прогресса в технологиях встраивания. Согласно таблице лидеров Massive Text Embedding Benchmark (MTEB) на сайте Hugging Face, ведущие модели встраивания, такие как UAE, VoyageAI, CohereV3 и Bge, были выпущены в 2023 году. Эти достижения повысили эффективность векторного поиска в различных технологиях векторного поиска, таких как Milvus, обеспечив более точные и эффективные возможности обработки данных для приложений ИИ.
Однако с ростом популярности векторных баз данных возникли споры о необходимости специализированных решений. На арену векторных баз данных вышли новые стартапы. Многие традиционные реляционные и NoSQL-базы данных начали рассматривать векторы как важный тип данных, и многие утверждают, что способны заменить специализированные векторные базы данных в любой ситуации.
Отсутствие простоев во время скользящих обновлений
Многие разработчики приложений также уделяют меньше внимания стабильности векторных баз данных, чем транзакционных, поскольку их приложения часто находятся на ранних стадиях разработки. Однако стабильность становится незаменимой, если вы намерены развернуть свое приложение AIGC в производственной среде и добиться наилучшего пользовательского опыта.
Milvus уделяет первостепенное внимание не только функциональности, но и стабильности работы, добавив скользящие обновления в Milvus, начиная с версии 2.2.3. После постоянной доработки эта функция позволяет обеспечить отсутствие простоев во время обновлений без прерывания бизнес-процессов.
3x улучшение производительности в производственных средах
Повышение производительности векторного поиска должно стать основной задачей для векторных баз данных. Многие решения в области векторного поиска решили основываться на адаптации алгоритма Hierarchical Navigable Small Worlds (HNSW), чтобы быстро выйти на рынок. К сожалению, это означает, что они сталкиваются с серьезными проблемами в реальных производственных средах, особенно при поиске с высокой степенью фильтрации (более 90%) и частом удалении данных.
Компания Milvus уделяла особое внимание оптимизации производительности на всех этапах разработки, особенно в производственных средах, добившись трехкратного улучшения производительности поиска, особенно в ситуациях поиска с фильтрацией и потоковой вставкой/поиском.
Мы также представили VectorDBBench, инструмент бенчмаркинга с открытым исходным кодом, чтобы облегчить разработчикам оценку векторных баз данных в различных условиях. В отличие от традиционных методов оценки, VectorDBBench оценивает базы данных, используя реальные данные, в том числе сверхбольшие наборы данных или данные, близко напоминающие данные из реальных моделей встраивания, предоставляя пользователям более глубокую информацию для принятия обоснованных решений.
Улучшение показателя запоминания на 5% на наборе данных Beir
Хотя плотные вкрапления доказали свою эффективность в векторном поиске, им приходится догонять нас при поиске имен, объектов, аббревиатур и коротких контекстов запросов. В ответ на их недостатки Milvus представил гибридный подход к запросам, который объединяет плотные вкрапления с разреженными вкраплениями для повышения качества результатов поиска. Это гибридное решение с моделью ранжирования позволило на 5% улучшить показатель запоминания на наборе данных Beir, что было подтверждено нашими тестами.
Milvus также представила решение для поиска на основе графов, адаптированное для разреженных вкраплений, превосходящее по производительности обычные поисковые алгоритмы, такие как WAND.
10-кратная экономия памяти при работе с большими массивами данных
В 2023 году наиболее популярным вариантом использования векторных баз данных станет поиск с расширением (RAG). Однако увеличение объема векторных данных в приложениях RAG создает проблему хранения данных для этих приложений. Эта проблема особенно актуальна, когда объем преобразованных векторов превышает объем исходных фрагментов документов, что потенциально увеличивает затраты на использование памяти. Например, после разделения документов на чанки размер 1536-мерного вектора float32 (около 3 кб), преобразованного из чанка в 500 токенов (около 1 кб), превышает размер чанка в 500 токенов.
Milvus - первая векторная база данных с открытым исходным кодом, поддерживающая индексацию на диске, что обеспечивает 5-кратную экономию памяти. К концу 2023 года в Milvus 2.3.4 появится возможность загружать скалярные и векторные данные/индексы на диск с помощью файлов с отображением памяти (MMap). Это достижение обеспечивает более чем 10-кратное сокращение использования памяти по сравнению с традиционным индексированием в памяти.
20 релизов Milvus
В 2023 году мы выпустили 20 релизов, что свидетельствует о преданности более 300 разработчиков сообщества и нашей приверженности подходу к разработке, ориентированному на пользователя.
Например, в Milvus 2.2.9 появилась динамическая схема, что ознаменовало переход от приоритета производительности к повышению удобства использования. В Milvus 2.3 появились такие важные функции, как апсерт, поиск по диапазону
Миллион арендаторов в одном Кастере
Реализация многопользовательских отношений и наоборот, предприятиям, работающим с десятками тысяч арендаторов, выгоднее использовать более тонкую стратегию, предполагающую изоляцию физических ресурсов. В последней версии Milvus 2.3.4 улучшено управление памятью, работа с корутинами и оптимизация процессора, что упрощает создание десятков тысяч таблиц в рамках одного кластера. Это усовершенствование также отвечает потребностям B2B-компаний, повышая эффективность и контроль.
10 миллионов загрузок образов Docker
К концу 2023 года Milvus достиг 10 миллионов загрузок Docker pull. Это достижение свидетельствует о повышенном интересе разработчиков к Milvus и подчеркивает его растущее значение в области векторных баз данных. Будучи "облачной" векторной базой данных, Milvus легко интегрируется с Kubernetes и более широкой контейнерной экосистемой.
Векторные базы данных идут по пути диверсификации
Подобно эволюции баз данных на такие категории, как онлайн-обработка транзакций (OLTP), аналитическая онлайн-обработка (OLAP) и NoSQL, векторные базы данных демонстрируют явную тенденцию к диверсификации. В отличие от традиционного фокуса на онлайн-сервисах, значительное развитие получил оффлайн-анализ. Еще одним ярким примером этого сдвига является появление GPTCache, семантического кэша с открытым исходным кодом, выпущенного в 2023 году. Он повышает эффективность и скорость работы приложений на базе GPT, сохраняя и извлекая ответы, сгенерированные языковыми моделями.
Эластичная масштабируемость необходима для нативных приложений AI.
Экспоненциальный рост приложений искусственного интеллекта, примером которого может служить ChatGPT, собравший за два месяца более 100 миллионов ежемесячных активных пользователей, вероятно, превзойдет все предыдущие траектории развития бизнеса. Быстрое масштабирование с 1 миллиона до 1 миллиарда точек данных приобретает первостепенное значение, как только компании достигают своего пика роста. Разработчики приложений искусственного интеллекта выигрывают от модели обслуживания по принципу "плати по факту", которую устанавливают поставщики LLM, что приводит к значительному сокращению операционных расходов. Аналогичным образом, хранение данных, соответствующее этой модели ценообразования, оказывается выгодным для разработчиков, позволяя им уделять больше внимания основной деятельности.
В отличие от языковых моделей (LLM) и различных других технологических систем, векторные базы данных работают в режиме состояния, требуя постоянного хранения данных. Следовательно, при выборе векторных баз данных необходимо уделять первостепенное внимание эластичности и масштабируемости, чтобы обеспечить соответствие динамическим требованиям развивающихся приложений ИИ.
Машинное обучение в векторных базах данных может дать необычные результаты
В 2023 году наши значительные инвестиции в проекты AI4DB (искусственный интеллект для баз данных) принесли заметный успех. В рамках наших усилий мы внедрили в Zilliz Cloud, полностью управляемое решение Milvus, две важнейшие возможности: 1) AutoIndex, индекс с автоматической настройкой параметров, основанный на машинном обучении, и 2) стратегию разделения данных, основанную на кластеризации данных. Оба решения сыграли решающую роль в значительном повышении производительности поиска в Zilliz Cloud.
Открытый исходный код против закрытого исходного кода
Однако в векторных базах данных пользователи в конечном итоге будут отдавать предпочтение открытому исходному коду. Выбор в пользу открытого исходного кода дает множество преимуществ, включая более разнообразные варианты использования, ускоренную итерацию и создание более надежной экосистемы.
Кроме того, системы баз данных настолько сложны, что не могут позволить себе непрозрачность, часто ассоциируемую с LLM. Пользователи должны досконально разобраться в базе данных, прежде чем выбрать наиболее разумный подход к ее использованию. Более того, прозрачность, заложенная в открытом исходном коде, позволяет пользователям настраивать базу данных в соответствии со своими потребностями.
Эпилог и новое начало
Очень интересно наблюдать за инновациями многих ИИ-стартапов, основанных в 2023 году. Это напоминает мне о том, почему я в первую очередь занялся разработкой VectorDB. В 2024 году все эти инновационные приложения получат реальную популярность, привлекут не только финансирование, но и реальных платящих клиентов, которые предъявят иные требования к разработчикам.
Мы надеемся, что в следующем году мы станем свидетелями еще более разнообразных применений и системных разработок в области векторных баз данных.
Эта статья является экземпляром Турбо-текста. Такие тексты отлично продвигают сайты в ТОП органического поиска Яндекс и Google. Здесь я пишу об этом более подробно.
Искренне Ваш,
Nikita Interactive
Это реальная история!
Раздел с Турбо-текстами привлек 18 090 пользователей за 9 месяцев.
На новом сайте. Без ссылок.
Измеримые результаты и устойчивый успех.