向量
向量儲存建構函式現在必須使用 id 屬性,而向量儲存方法也已重新命名,以遵循一致的命名慣例。
已變更「已變更」的直接連結
向量儲存執行個體必須使用 id 屬性「required-id-property-for-vector-store-instances」的直接連結
向量儲存執行個體現在必須使用 id 屬性。這個唯一識別碼用來在 Mastra 中追蹤及管理向量儲存執行個體。應為應用程式中的每個向量儲存設定具描述性且不重複的 id 字串。
遷移時,請在向量儲存建構函式中新增 id 欄位。
const vectorStore = new PgVector({
+ id: 'main-vector-store',
connectionString: process.env.POSTGRES_CONNECTION_STRING,
});
const chromaStore = new ChromaVector({
+ id: 'chroma-embeddings',
url: process.env.CHROMA_URL,
});
const pineconeStore = new PineconeVector({
+ id: 'pinecone-production',
apiKey: process.env.PINECONE_API_KEY,
});
getVectors 改為 listVectors「getvectors-to-listvectors」的直接連結
getVectors() 方法已重新命名為 listVectors()。這項變更與整個 API 使用的命名慣例一致:回傳多筆資料的 getter 方法會使用 list 前綴。
遷移時,請將所有 getVectors() 呼叫替換成 listVectors()。
const vectorStore = new VectorStore({ ... });
- const vectors = await vectorStore.getVectors({ ... });
+ const vectors = await vectorStore.listVectors({ ... });
LibSQLVector:connectionUrl 改為 url「libsqlvector-connectionurl-to-url」的直接連結
connectionUrl 參數已重新命名為 url,以配合 @libsql/client API,並與 LibSQLStorage 一致。
const vectorStore = new LibSQLVector({
id: 'my-vector',
- connectionUrl: 'file:./db.sqlite',
+ url: 'file:./db.sqlite',
});
OpenSearchVector:url 改為 node「opensearchvector-url-to-node」的直接連結
url 參數已重新命名為 node,以符合 OpenSearch ClientOptions API。建構函式現在接受所有 OpenSearch 使用者端選項,包括驗證、SSL 與壓縮。
const vectorStore = new OpenSearchVector({
id: 'my-vector',
- url: 'http://localhost:9200',
+ node: 'http://localhost:9200',
});
PineconeVector:移除 environment「pineconevector-environment-removed」的直接連結
environment 參數已移除。如果需要指定自訂控制器主機,請改用 controllerHostUrl。建構函式現在接受所有 Pinecone 設定選項。
const vectorStore = new PineconeVector({
id: 'my-vector',
apiKey: process.env.PINECONE_API_KEY,
- environment: process.env.PINECONE_ENVIRONMENT,
});
如果需要自訂控制器主機:
const vectorStore = new PineconeVector({
id: 'my-vector',
apiKey: process.env.PINECONE_API_KEY,
controllerHostUrl: 'https://api.pinecone.io',
})