logo
Pinecone 向量数据库指南
AI Engineer

Pinecone 向量数据库指南

Pinecone 是云端托管的向量数据库服务,提供高性能、可扩展的向量存储和检索。

Pinecone 向量数据库指南Indexes 索引

Pinecone Index 索引管理

索引是 Pinecone 的最高层容器。与传统的表不同,Pinecone 的索引决定了底层硬件的分配方式。

#1. 索引类型:Serverless vs Pod-based

#Serverless (推荐)

  • 按量计费:只需为存储和读取的数据量付费。
  • 自动扩容:无需关心底层资源。
  • 场景:绝大多数现代 AI 应用。

#Pod-based (传统模式)

  • 固定成本:你购买特定的虚拟机资源。
  • 可预测延迟:适合对性能有极高且稳定要求的场景。

#2. 核心配置参数

在创建索引时,以下三个参数至关重要:

  • Dimension (维度):向量的长度。必须与你的 Embedding 模型产出一致(如 OpenAI 是 1536)。
  • Metric (度量标准)
    • cosine (余弦相似度): 推荐用于 NLP。
    • euclidean (欧氏距离)。
    • dotproduct (点积)。
  • Spec (规格):定义部署的云平台和地域。

#3. 索引的生命周期操作

python
# 列出所有索引 print(pc.list_indexes()) # 查看索引详细状态 desc = pc.describe_index("my-index") print(desc.status['ready']) # 是否已就绪 # 配置索引 (例如修改副本数,仅限 Pod-based) pc.configure_index("my-index", replicas=2) # 删除索引 (数据会立即清空且不可恢复) pc.delete_index("my-index")

#4. 统计信息查看

你可以查看索引中有多少向量,以及各个命名空间的数据分布:

python
index = pc.Index("my-index") stats = index.describe_index_stats() print(stats.total_vector_count)

#5. 最佳实践

  1. 同地域部署:尽可能让你的应用程序(如 Lambda 或 EC2)与 Pinecone 索引处于同一个云服务商地域(如均为 aws/us-east-1),以降低网络延迟。
  2. 合理使用元数据:不要在元数据中存储超大的文本块,这会增加索引的大小和查询成本。只存储 ID、URL 或关键过滤字段。

下一步:学习如何通过 Namespaces 命名空间 实现多租户或多类别管理。

相关路线图