用途:该技能指导使用 Pinecone 作为向量数据库,构建两类系统——对文档语料(PDF、文档、代码、网页)做 RAG 检索以支撑大模型回答,或为智能体建立跨会话、可共享的持久记忆。使用前需先确认属于文档检索、智能体记忆还是两者兼有,因为命名空间策略和检索模式不同。
主要能力:选择索引配置(无服务器 ServerlessSpec 或基于 Pod 的 PodSpec,维度须与嵌入模型完全匹配,如 text-embedding-3-small 为 1536、voyage-3 为 1024);批量嵌入并 upsert 文档,建议每批 100 条,并把原文存入 metadata;检索策略包括稠密语义搜索、结合 BM25 的混合搜索(适合法律引用、医疗编码、产品 SKU、API 方法名等精确术语场景)以及元数据过滤;文档 RAG 流程为检索若干命中片段拼成上下文交给模型回答;智能体记忆流程用命名空间隔离每个智能体或用户,提供 remember、recall、forget 操作。
使用方式:文档给出 Python 示例,先用 Pinecone(api_key="PINECONE_API_KEY") 创建或连接索引,再用 index.upsert、index.query 完成写入与检索,最后接 chat.completions 生成回答,并建议先跑冒烟测试验证端到端可用。
适用场景:需要语义搜索、RAG 问答、跨会话或多智能体共享知识库记忆的生产系统。
限制:若数据可放入内存且不在意延迟,可改用 FAISS 或 Chroma;已使用 PostgreSQL 可用 pgvector;需要无外部调用的亚 5 毫秒延迟应选本地向量存储;用户指定其他向量库(Weaviate、Qdrant 等)时不适用。常见坑包括维度不匹配、metadata 未存原文、循环中单条 upsert、未规划命名空间导致跨租户数据泄露、在过小语料上拟合 BM25(建议至少数百篇文档)。