انتقل إلى المحتوى الرئيسي

قاعدة البيانات المتجهة

جدول زمني

كانت Vespa واحدة من أوائل الشركات التي أضافت بحث التشابه المتجه إلى جانب خوارزمية بحث الكلمات الرئيسية السائدة القائمة على BM25.

ثم أطلقت Weaviate منتجًا مخصصًا لقاعدة بيانات بحث ناقلات مفتوحة المصدر في نهاية عام 2018.

بحلول عام 2019 ، بدأنا نرى المزيد من المنافسة في هذا المجال ، بما في ذلك Milvus (المفتوحة المصدر أيضًا). Zilliz هي الشركة الأم لـ Milvus.

وفي عام 2021، انضم ثلاثة موردين جدد إلى المنافسة: فالد، وQdrant، وPinecone.

حتى هذا الوقت ، بدأت الشركات الراسخة مثل Elasticsearch و Redis و PostgreSQL في تقديم بحث المتجهات ، في وقت متأخر بكثير مما كان يعتقد الناس في الأصل ، فقط في عام 2022 وما بعده.

image-20240125145334529

المصادر المفتوحة والأعمال التجارية

الأعمال التجارية: Pinecone و Zilliz

شكل الإضافات

  • pgvector
  • ريدس كومة

image-20240125145550416

Postgres

قاعدة بيانات واحدة تدعم في نفس الوقت:

  • قاعدة البيانات العلاقاتية: RDS
  • قاعدة بيانات المتجهات:pgvector
  • قاعدة بيانات السلسلة الزمنية: قاعدة بيانات السلسلة الزمنية تلعب دورا كبيرا في تصفية البيانات الفوقية، وهي قاعدة بيانات تسجل الأحداث والوقت الذي يحدث، وسرعة البحث عن السلسلة الزمنية سريعة جدا.في تطبيق RAG ، إذا تم تقسيم ملفات المعرفة الصناعية إلى عشرات الآلاف ، فسيكون من المهم استخدام التصفية الزمنية ، على سبيل المثال ، نحن بحاجة فقط إلى استرجاع ملفات العقد من مارس 2023 ، ثم يمكننا استخدام بيانات التسلسل الزمني لاختيار المكونات المستهدفة من عشرات الآلاف ، ثم إجراء حسابات المتجهات.
image-20240125150309961

إضافة Timescale Vector

بحث أسرع عن التشابه لملايين المتجهات: دعم DiskANN خوارزمية، HNSW خوارزمية

  • **Timescale Vector يحسن استعلامات البحث عن المتجهات القائمة على الوقت: ** الاستفادة من التقسيمات والفهرسات التلقائية القائمة على الوقت من الجداول الفائقة من Timescale للعثور على أقرب Embeddings بفعالية ، والبحث عن المتجهات المقيدة من خلال النطاق الزمني أو السنة الوجودية للمستند ، وتخزين واسترداد استجابات النموذج اللغوي الكبير (LLM) وتاريخ الدردشة بسهولة.يتيح لك البحث الدلالي المستند إلى الوقت أيضًا استخدام **Retrieval Augmented Generation (RAG) والبحث السياقي المستند إلى الوقت لتقديم استجابة LLM أكثر فائدة للمستخدمين.
  • ** المكدس البنية التحتية للذكاء الاصطناعي المبسطة: ** من خلال الجمع بين ** المتجهات Embeddings**، ** البيانات العلاقاتية**، و ** بيانات السلسلة الزمنية** في قاعدة بيانات PostgreSQL واحدة، يتخلص المتجهات Timescale من التعقيدات التشغيلية التي تنطوي عليها إدارة أنظمة قواعد البيانات متعددة على نطاق واسع.
  • ** تبسيط معالجة البيانات الفوقية وتصفية السمات المتعددة: ** يمكن للمطورين الاستفادة من جميع أنواع بيانات PostgreSQL لتخزين البيانات الفوقية وتصفيتها وربط نتائج البحث المتجهة مع البيانات العلائقية للحصول على استجابات أكثر ذات صلة بالسياق.في الإصدارات المستقبلية ، ستزيد Timescale Vector من تحسين التصفية متعددة الخصائص الغنية لتمكين البحث عن التشابه بشكل أسرع عند تصفية البيانات الفوقية.

قاعدة بيانات المتجهات المنظمة من LlamaIndex

链接

** خيارات متجر Vector ودعم الميزات **

Vector StoreTypeMetadata FilteringHybrid SearchDeleteStore DocumentsAsync
Apache Cassandra®self-hosted / cloud
Astra DBcloud
Azure Cognitive Searchcloud
Azure CosmosDB MongoDBcloud
ChatGPT Retrieval Pluginaggregator
Chromaself-hosted
DashVectorcloud
Deeplakeself-hosted / cloud
DocArrayaggregator
DynamoDBcloud
Elasticsearchself-hosted / cloud
FAISSin-memory
txtaiin-memory
Jaguarself-hosted / cloud
LanceDBcloud
Lanternself-hosted / cloud
Metalcloud
MongoDB Atlasself-hosted / cloud
MyScalecloud
Milvus / Zillizself-hosted / cloud
Neo4jVectorself-hosted / cloud
OpenSearchself-hosted / cloud
Pineconecloud
Postgresself-hosted / cloud
pgvecto.rsself-hosted / cloud
Qdrantself-hosted / cloud
Redisself-hosted / cloud
Simplein-memory
SingleStoreself-hosted / cloud
Supabaseself-hosted / cloud
Taircloud
TencentVectorDBcloud
Timescale
Typesenseself-hosted / cloud
Weaviateself-hosted / cloud

معظم قواعد البيانات المدعومة

ector StoreTypeMetadata FilteringHybrid SearchDeleteStore DocumentsAsync
DashVectorcloud
Elasticsearchself-hosted / cloud总觉得比较重
Jaguarself-hosted / cloud
Lanternself-hosted / cloud
MyScalecloud
Pineconecloud
Postgresself-hosted / cloud
pgvecto.rsself-hosted / cloud
Qdrantself-hosted / cloud创始人好像出走了
TencentVectorDBcloud
Weaviateself-hosted / cloud

Elasticsearch:总觉得比较重

Postgress:先从最简单的开始吧。

Qdrant:创始人好像出走了。

مقارنة LangChain مع قاعدة البيانات

原文

数据库名称应用场景
HNSWLib, Faiss, LanceDB, CloseVector如果你需要一个可以在你的Node.js应用程序中运行的内存数据库,无需其他服务器
MemoryVectorStore, CloseVector如果你在寻找一个可以在类似浏览器的环境中内存中运行的东西
HNSWLib, Faiss如果你来自Python,并且你在寻找类似于FAISS的东西
Chroma如果你在寻找一个开源的、功能全面的向量数据库,可以在docker容器中本地运行
Zep如果你在寻找一个开源的向量数据库,提供低延迟、本地嵌入文档支持,并且支持边缘上的应用
Weaviate如果你在寻找一个开源的、生产就绪的向量数据库,可以在docker容器中本地运行或在云中托管
Supabase vector store如果你已经在使用Supabase,看看Supabase向量存储,使用同一个Postgres数据库来存储你的嵌入
Pinecone如果你在寻找一个生产就绪的向量存储,你不必担心自己托管
SingleStore vector store如果你已经在使用SingleStore,或者你需要一个分布式、高性能的数据库,你可能会考虑SingleStore向量存储
AnalyticDB vector store如果你在寻找一个在线MPP(大规模并行处理)数据仓库服务,你可能会考虑AnalyticDB向量存储
MyScale如果你在寻找一个性价比高的向量数据库,允许使用SQL进行向量搜索
CloseVector如果你在寻找一个可以从浏览器和服务器端加载的向量数据库,看看CloseVector。它是一个旨在跨平台的向量数据库
ClickHouse如果你在寻找一个可扩展的、开源的列式数据库,对于分析查询有着出色的性能

مقارنة قواعد البيانات المختلفة

开源向量数据库对比

نوع RAG

Elasticsearch

Qdrant

Postgress

المراجع

https://mp.weixin.qq.com/s/YENmch0b4rbNJ73bvBLUpQ