Vector Database
Vector indexes with ANN search and integrated embedding.
Create indexes, upsert vectors, and query by similarity. Indexes use HNSW for approximate-nearest-neighbor search.
Create an index
Provide a dimension + metric for raw vectors, or an embed model for
integrated embedding (the server embeds your text):
import { createIndexClient } from "@libra-memory/sdk";
const vectors = createIndexClient({ apiKey: process.env.LIBRA_API_KEY });
// Raw vectors
await vectors.createIndex({ name: "products", dimension: 384, metric: "cosine" });
// Integrated embedding (no client-side embeddings needed)
await vectors.createIndex({
name: "docs",
embed: { model: "bge-small-en-v1.5", field_map: { text: "text" } },
});Upsert & query
const idx = vectors.index("docs");
await idx.upsertText([{ _id: "d1", text: "The Eiffel Tower is in Paris." }]);
const res = await idx.query({ text: "Where is the Eiffel Tower?", topK: 3, includeMetadata: true });For raw-vector indexes, upsert { id, values, metadata } and query by vector.
Capabilities
- Metrics:
cosine,euclidean,dotproduct. - Namespaces, metadata filters, fetch/list, and
describe_index_stats.