Files
lancedb/node
Bert a900bc0827 ensure table names are uri encoded for tables (#1189)
This prevents an issue where users can do something like:
```js
db.createTable('my-table#123123')
```
The server has logic to determine that '#' character is not allowed in
the table name, but currently this is being returned as 404 error
because it routes to `/v1/my-table#123123/create` and `#123123/create`
will not be parsed as part of path
2024-04-05 16:34:50 -07:00
..
2024-04-05 16:34:39 -07:00

LanceDB

A JavaScript / Node.js library for LanceDB.

Installation

npm install vectordb

This will download the appropriate native library for your platform. We currently support:

  • Linux (x86_64 and aarch64)
  • MacOS (Intel and ARM/M1/M2)
  • Windows (x86_64 only)

We do not yet support musl-based Linux (such as Alpine Linux) or aarch64 Windows.

Usage

Basic Example

const lancedb = require('vectordb');
const db = await lancedb.connect('data/sample-lancedb');
const table = await db.createTable("my_table",
      [{ id: 1, vector: [0.1, 1.0], item: "foo", price: 10.0 },
      { id: 2, vector: [3.9, 0.5], item: "bar", price: 20.0 }])
const results = await table.search([0.1, 0.3]).limit(20).execute();
console.log(results);

The examples folder contains complete examples.

Development

To build everything fresh:

npm install
npm run build

Then you should be able to run the tests with:

npm test

Fix lints

To run the linter and have it automatically fix all errors

npm run lint -- --fix

To build documentation

npx typedoc --plugin typedoc-plugin-markdown --out ../docs/src/javascript src/index.ts