Pinecone-ts-client 项目介绍
Pinecone-ts-client 是一款用于 Pinecone 的官方 Node.js SDK,使用 TypeScript 编写。Pinecone 是一个强大的向量数据库,广泛用于存储和查询高级搜索引擎中使用的矢量。
文档资源
示例代码
以下示例代码展示了 Pinecone SDK 的一些使用场景。更多复杂示例可查看:
SDK 升级指南
从 2.x
升级至 3.x
在此版本中的 configureIndex
操作有重大变化,更新后的结构包括新增 deletionProtection
选项,并可以通过 spec.pod
对 podType
和 replicas
字段进行更新。更多详细内容请参考相应的文档。
从 1.x
升级至 2.x
在 2.x
版本中进行了多项更改以支持 Pinecone 的无服务器索引。该版本的详细更改请参考 v2 迁移指南。无服务器索引从 2.x
及更高版本开始可用。
使用要求
Pinecone TypeScript SDK 兼容 TypeScript 版本 >=4.1 和 Node 版本 >=18.x。
安装方法
要安装 Pinecone SDK,可以使用以下 npm 命令:
npm install @pinecone-database/pinecone
生产环境使用
Pinecone TypeScript SDK 旨在用于服务器端,非浏览器环境。如果在浏览器端使用,可能会造成 API 密钥泄露。在这种情况下,请务必轮换 API 密钥。
初始化客户端
初始化 Pinecone 客户端需要一个 API 密钥。该密钥可以通过环境变量或代码配置对象指定。API 密钥可以在 Pinecone 控制台 中获取。
使用环境变量
设置环境变量以配置 API 密钥:
PINECONE_API_KEY="your_api_key"
使用配置对象
如果希望在代码中传递配置,可以通过构造函数接受配置对象:
import { Pinecone } from '@pinecone-database/pinecone';
const pc = new Pinecone({
apiKey: 'your_api_key',
maxRetries: 5,
});
使用代理服务器
如果需要通过代理与 Pinecone 交互,可以使用 undici
库构建一个自定义的 ProxyAgent
。可以参考示例代码了解具体实现方法。
创建索引
可以使用最小配置创建无服务器索引,或者通过可选配置创建基于 pod 的索引。索引配置详细信息请参考相关文档。
其他功能
Pinecone SDK 提供丰富的功能,例如处理向量数据的索引操作、创建集合、与推理 API 交互等。详细操作指南可以在官方文档中找到。
测试
Pinecone SDK 的测试过程自动在 CI 中进行,由 GitHub actions 和工作流配置实现。如需了解更多信息,请查看 .github
目录中的相关文件或 CONTRIBUTING.md。
Pinecone-ts-client 是一个功能强大且灵活的工具,适合需要处理大规模向量数据的开发者。通过 TypeScript 提供的类型支持,开发者可以在项目中更好地实现各种高级搜索和数据操作。