Vector Database
了解向量数据库如何管理用于语义检索的高维嵌入。学习利用 Ultralytics YOLO26 和相似性搜索为 AI 应用提供支持。
向量数据库是一个专门的存储系统,旨在管理、索引和查询高维向量数据,通常通常被称为embeddings。与将结构化数据组织成行和列以进行精确关键词匹配的传统relational database不同,向量数据库针对语义检索进行了优化。它使智能系统能够找到概念相似而不是完全相同的数据点。这种能力是现代artificial intelligence (AI)基础架构的基础,允许应用程序通过分析它们之间的数学关系来处理和理解unstructured data——例如图像、音频、视频和文本。这些数据库充当智能代理的长期记忆,促进视觉搜索和个性化推荐等任务。
向量数据库的工作原理#
向量数据库的功能以向量空间的概念为中心,其中数据项被映射为多维坐标系中的点。该过程始于feature extraction,其中deep learning (DL)模型将原始输入转换为数字向量。
-
Ingestion: 数据由神经网络处理,例如最先进的YOLO26,以生成embeddings。这些向量将输入的语义压缩成密集的浮点数列表。
-
Indexing: 为了确保检索期间的低inference latency,数据库使用专门的算法来组织这些向量。Hierarchical Navigable Small World (HNSW)或Inverted File Index (IVF)等技术允许系统高效地导航数十亿个向量,而无需扫描每个条目。
-
Querying: 当用户提交搜索查询(例如特定鞋款的图像)时,系统将查询转换为向量,并使用cosine similarity或Euclidean distance等距离度量计算其与存储向量的接近度。
-
检索: 数据库返回“最近邻”,它们代表了语境上最相关的结果。
以下Python代码片段演示了如何使用标准的 ultralytics 模型生成embeddings,这是填充向量数据库之前的先决条件步骤。
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate feature embeddings for an image file
# The 'embed' method creates the vector representation needed for the database
results = model.embed("https://ultralytics.com/images/bus.jpg")
# Output the shape of the resulting embedding vector
print(f"Embedding vector shape: {results[0].shape}")实际应用#
向量数据库是当今企业环境中使用的许多先进computer vision (CV)和Natural Language Processing (NLP)应用程序背后的引擎。
- Retrieval-Augmented Generation (RAG): 在generative AI时代,向量数据库允许Large Language Models (LLMs)访问庞大的私有、最新数据库。通过根据用户提示的语义检索相关文档,系统减少了hallucinations in LLMs并提供基于事实、上下文感知的响应。
- Visual Recommendation Engines: 在AI in retail中,平台使用向量数据库来支持“购买相似款式”功能。如果用户查看特定的夏裙,系统会查询数据库以查找具有相似视觉embeddings的其他产品图像——匹配图案、剪裁和颜色——提供比简单的基于标签的过滤更好的user experience。
- Anomaly and Threat Detection: 安全系统利用向量数据库进行anomaly detection。通过存储“正常”行为或授权人员的embeddings,系统可以即时标记出向量空间中预期集群之外的异常值,从而增强data security和设施监控。
区分相关概念#
为了有效实现这些系统,区分向量数据库与machine learning operations (MLOps)领域中的相关技术会有所帮助。
- Vector Database vs. Vector Search: 向量 search是寻找相似向量的动作或算法过程(“如何”)。向量数据库是构建用于存储数据、管理索引并在规模上执行这些搜索的强大基础设施(“在哪里”)。
- Vector Database vs. Feature Store: 特征存储是一个集中式存储库,用于管理模型训练和推理中使用的特征,以确保一致性。虽然它处理特征数据,但它并未主要针对定义向量数据库的基于相似性的检索查询进行优化。
- Vector Database vs. Data Lake: 数据湖以其原始格式存储大量原始数据。向量数据库存储该数据的处理后的数学表示(embeddings),专门针对similarity search进行了优化。
与现代 AI 工作流程集成#
实现向量数据库通常涉及一个管道,其中像高效的YOLO26这样的模型充当embedding引擎。这些模型在边缘或云端处理视觉数据,生成的向量被推送到Pinecone、Milvus或Qdrant等解决方案中。
对于希望简化整个生命周期(从数据策划和自动标注到模型训练和部署)的团队,Ultralytics Platform提供了全面的环境。通过将模型训练与高效的部署策略相结合,开发人员可以确保为其向量数据库提供支持的embeddings准确无误,从而获得更高质量的搜索结果和更聪明的AI代理。






