Векторная база данных: различия между версиями

Материал из in.wiki
Перейти к навигации Перейти к поиску
Строка 8: Строка 8:
 
Эти векторы признаков могут быть вычислены из исходных данных с помощью методов машинного обучения, таких как [[Алгоритм извлечения признаков|алгоритмы извлечения признаков]], [[векторное представление слов]][<ref>{{Cite web|author=Evan Chaki|date=2023-07-31|title=What is a vector database?|url=https://learn.microsoft.com/en-us/semantic-kernel/memories/vector-db|accessdate=|publisher=Microsoft|quote=A vector database is a type of database that stores data as high-dimensional vectors, which are mathematical representations of features or attributes.}}</ref> или сети [[Глубокое обучение|глубокого обучения]]. Цель состоит в том, чтобы семантически схожие элементы данных получали близкие друг к другу векторы признаков.  
 
Эти векторы признаков могут быть вычислены из исходных данных с помощью методов машинного обучения, таких как [[Алгоритм извлечения признаков|алгоритмы извлечения признаков]], [[векторное представление слов]][<ref>{{Cite web|author=Evan Chaki|date=2023-07-31|title=What is a vector database?|url=https://learn.microsoft.com/en-us/semantic-kernel/memories/vector-db|accessdate=|publisher=Microsoft|quote=A vector database is a type of database that stores data as high-dimensional vectors, which are mathematical representations of features or attributes.}}</ref> или сети [[Глубокое обучение|глубокого обучения]]. Цель состоит в том, чтобы семантически схожие элементы данных получали близкие друг к другу векторы признаков.  
  
Векторные базы данных могут использоваться для [[Поиск по сходству|поиска по сходству]], [[Семантический поиск|семантического поиска]], [[Мультимодальный поиск|мультимодального поиска]], [[Рекомендательная система|рекомендательных систем]], [[Большая языковая модель|больших языковых моделей]] (LLM), [[Обнаружение объектов|обнаружения объектов]] и т. д.<ref name="auto1" /> Векторные базы данных также часто используются для реализации метода расширенной генерации поиска (RAG) – метода улучшения результатов, получаемых в больших языковых моделях в зависимости от предметной области.  
+
Векторные базы данных могут использоваться для [[Поиск по сходству|поиска по сходству]], [[Семантический поиск|семантического поиска]], [[Мультимодальный поиск|мультимодального поиска]], [[Рекомендательная система|рекомендательных систем]], [[Большая языковая модель|больших языковых моделей]] (LLM), [[Обнаружение объектов|обнаружения объектов]] и т. д.<ref name="auto1" /> Векторные базы данных также часто используются для реализации метода [[Генерация, расширенная поисковыми запросами|генерации, расширенной поисковыми запросами]]  ([[RAG]]) – метода улучшения результатов, получаемых в больших языковых моделях в зависимости от предметной области.  
  
Поисковым компонентом RAG может быть любая поисковая система, но чаще всего он реализуется в виде векторной базы данных. Собираются текстовые документы, описывающие интересующую область, и для каждого документа или раздела документа вычисляется вектор признаков (известный как «встраивание»), обычно с помощью сети глубокого обучения, который сохраняется в векторной базе данных. По запросу пользователя вычисляется вектор признаков запроса, и к базе данных отправляется запрос для извлечения наиболее релевантных документов. Затем они автоматически добавляются в контекстное окно большой языковой модели, и большая языковая модель приступает к созданию ответа на запрос с учетом этого контекста.[5]
+
Поисковым компонентом RAG может быть любая [[поисковая система]], но чаще всего он реализуется в виде векторной базы данных. Собираются текстовые документы, описывающие интересующую область, и для каждого документа или раздела документа вычисляется вектор признаков (известный как «[[эмбединг]]»), обычно с помощью сети глубокого обучения, который сохраняется в векторной базе данных. По запросу пользователя вычисляется вектор признаков запроса, и к базе данных отправляется запрос для извлечения наиболее релевантных документов. Затем они автоматически добавляются в [[контекстное окно]] большой языковой модели, и большая языковая модель приступает к созданию ответа на запрос с учетом этого контекста<ref>{{cite journal|last1=Lewis|last6=Goyal|pages=9459–9474|year=2020|journal=Advances in Neural Information Processing Systems 33|title=Retrieval-augmented generation for knowledge-intensive NLP tasks|first7=Heinrich|last7=Küttler|first6=Naman|first5=Vladimir|first1=Patrick|last5=Karpukhin|first4=Fabio|last4=Petroni|first3=Aleksandra|last3=Piktus|first2=Ethan|last2=Perez|arxiv=2005.11401}}</ref>.
  
 
== Литература ==
 
== Литература ==

Версия от 08:01, 25 августа 2025

800px-T64 and pencil.jpg Это незавершённая статья.
Вы можете помочь проекту, исправив и дополнив её.

Векторная база данных, хранилище векторов или поисковая система векторов — это база данных, использующая векторную модель для хранения векторов (списков чисел фиксированной длины) вместе с другими элементами данных.

Векторные базы данных обычно реализуют один или несколько алгоритмов приближенного поиска ближайшего соседа[1][2], что позволяет осуществлять поиск по базе данных с помощью векторного запроса для извлечения наиболее соответствующих запросу записей.

Векторы можно рассматривать как математические представления данных в многомерном пространстве. В этом пространстве каждое измерение соответствует признаку данных, а число измерений варьируется от нескольких сотен до десятков тысяч, в зависимости от сложности представляемых данных. Положение вектора в этом пространстве отражает его характеристики. Слова, фразы или целые документы, а также изображения, аудио и другие типы данных могут быть векторизованы[3].

Эти векторы признаков могут быть вычислены из исходных данных с помощью методов машинного обучения, таких как алгоритмы извлечения признаков, векторное представление слов[[4] или сети глубокого обучения. Цель состоит в том, чтобы семантически схожие элементы данных получали близкие друг к другу векторы признаков.

Векторные базы данных могут использоваться для поиска по сходству, семантического поиска, мультимодального поиска, рекомендательных систем, больших языковых моделей (LLM), обнаружения объектов и т. д.[3] Векторные базы данных также часто используются для реализации метода генерации, расширенной поисковыми запросами (RAG) – метода улучшения результатов, получаемых в больших языковых моделях в зависимости от предметной области.

Поисковым компонентом RAG может быть любая поисковая система, но чаще всего он реализуется в виде векторной базы данных. Собираются текстовые документы, описывающие интересующую область, и для каждого документа или раздела документа вычисляется вектор признаков (известный как «эмбединг»), обычно с помощью сети глубокого обучения, который сохраняется в векторной базе данных. По запросу пользователя вычисляется вектор признаков запроса, и к базе данных отправляется запрос для извлечения наиболее релевантных документов. Затем они автоматически добавляются в контекстное окно большой языковой модели, и большая языковая модель приступает к созданию ответа на запрос с учетом этого контекста[5].

Литература

Примечания

  1. Roie Schwaber-Cohen. What is a Vector Database & How Does it Work. Pinecone. Дата обращения: 18 ноября 2023.
  2. What is a vector database. Elastic. Дата обращения: 18 ноября 2023.
  3. 3,0 3,1 Vector database. learn.microsoft.com (26 декабря 2023). Дата обращения: 11 января 2024.
  4. Evan Chaki. What is a vector database? Microsoft (31 июля 2023). — «A vector database is a type of database that stores data as high-dimensional vectors, which are mathematical representations of features or attributes.»
  5. Lewis, Patrick; Perez, Ethan; Piktus, Aleksandra; Petroni, Fabio; Karpukhin, Vladimir; Goyal, Naman; Küttler, Heinrich (2020). "Retrieval-augmented generation for knowledge-intensive NLP tasks". Advances in Neural Information Processing Systems 33: 9459–9474. arXiv:2005.11401.