My App

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.

On this page