From c34aa091667792b33d221a0cfa79d79ae699904f Mon Sep 17 00:00:00 2001 From: Will Jones Date: Fri, 22 Dec 2023 10:14:31 -0800 Subject: [PATCH] docs: update node API reference (#734) This command hasn't been run for a while... --- docs/src/javascript/README.md | 9 +- .../javascript/classes/DefaultWriteOptions.md | 41 +++ .../src/javascript/classes/LocalConnection.md | 187 +++++-------- docs/src/javascript/classes/LocalTable.md | 263 +++++++++++++++--- .../classes/OpenAIEmbeddingFunction.md | 16 +- docs/src/javascript/classes/Query.md | 147 ++++++---- docs/src/javascript/enums/MetricType.md | 6 +- docs/src/javascript/enums/WriteMode.md | 6 +- .../javascript/interfaces/AwsCredentials.md | 6 +- .../src/javascript/interfaces/CleanupStats.md | 34 +++ .../interfaces/CompactionMetrics.md | 62 +++++ .../interfaces/CompactionOptions.md | 80 ++++++ docs/src/javascript/interfaces/Connection.md | 121 ++++++-- .../interfaces/ConnectionOptions.md | 48 +++- .../interfaces/CreateTableOptions.md | 69 +++++ .../interfaces/EmbeddingFunction.md | 12 +- docs/src/javascript/interfaces/IndexStats.md | 30 ++ .../javascript/interfaces/IvfPQIndexConfig.md | 35 ++- docs/src/javascript/interfaces/Table.md | 170 ++++++++--- docs/src/javascript/interfaces/UpdateArgs.md | 36 +++ .../javascript/interfaces/UpdateSqlArgs.md | 36 +++ docs/src/javascript/interfaces/VectorIndex.md | 41 +++ .../src/javascript/interfaces/WriteOptions.md | 27 ++ docs/src/javascript/modules.md | 47 +++- node/README.md | 9 +- 25 files changed, 1215 insertions(+), 323 deletions(-) create mode 100644 docs/src/javascript/classes/DefaultWriteOptions.md create mode 100644 docs/src/javascript/interfaces/CleanupStats.md create mode 100644 docs/src/javascript/interfaces/CompactionMetrics.md create mode 100644 docs/src/javascript/interfaces/CompactionOptions.md create mode 100644 docs/src/javascript/interfaces/CreateTableOptions.md create mode 100644 docs/src/javascript/interfaces/IndexStats.md create mode 100644 docs/src/javascript/interfaces/UpdateArgs.md create mode 100644 docs/src/javascript/interfaces/UpdateSqlArgs.md create mode 100644 docs/src/javascript/interfaces/VectorIndex.md create mode 100644 docs/src/javascript/interfaces/WriteOptions.md diff --git a/docs/src/javascript/README.md b/docs/src/javascript/README.md index ce3bd86a..bc632d1e 100644 --- a/docs/src/javascript/README.md +++ b/docs/src/javascript/README.md @@ -11,8 +11,13 @@ npm install vectordb ``` This will download the appropriate native library for your platform. We currently -support x86_64 Linux, aarch64 Linux, Intel MacOS, and ARM (M1/M2) MacOS. We do not -yet support Windows or musl-based Linux (such as Alpine Linux). +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 diff --git a/docs/src/javascript/classes/DefaultWriteOptions.md b/docs/src/javascript/classes/DefaultWriteOptions.md new file mode 100644 index 00000000..989b2a27 --- /dev/null +++ b/docs/src/javascript/classes/DefaultWriteOptions.md @@ -0,0 +1,41 @@ +[vectordb](../README.md) / [Exports](../modules.md) / DefaultWriteOptions + +# Class: DefaultWriteOptions + +Write options when creating a Table. + +## Implements + +- [`WriteOptions`](../interfaces/WriteOptions.md) + +## Table of contents + +### Constructors + +- [constructor](DefaultWriteOptions.md#constructor) + +### Properties + +- [writeMode](DefaultWriteOptions.md#writemode) + +## Constructors + +### constructor + +• **new DefaultWriteOptions**() + +## Properties + +### writeMode + +• **writeMode**: [`WriteMode`](../enums/WriteMode.md) = `WriteMode.Create` + +A [WriteMode](../enums/WriteMode.md) to use on this operation + +#### Implementation of + +[WriteOptions](../interfaces/WriteOptions.md).[writeMode](../interfaces/WriteOptions.md#writemode) + +#### Defined in + +[index.ts:778](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L778) diff --git a/docs/src/javascript/classes/LocalConnection.md b/docs/src/javascript/classes/LocalConnection.md index c7d7afd6..a44e3733 100644 --- a/docs/src/javascript/classes/LocalConnection.md +++ b/docs/src/javascript/classes/LocalConnection.md @@ -26,7 +26,7 @@ A connection to a LanceDB database. ### Methods - [createTable](LocalConnection.md#createtable) -- [createTableArrow](LocalConnection.md#createtablearrow) +- [createTableImpl](LocalConnection.md#createtableimpl) - [dropTable](LocalConnection.md#droptable) - [openTable](LocalConnection.md#opentable) - [tableNames](LocalConnection.md#tablenames) @@ -46,7 +46,7 @@ A connection to a LanceDB database. #### Defined in -[index.ts:184](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L184) +[index.ts:355](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L355) ## Properties @@ -56,17 +56,25 @@ A connection to a LanceDB database. #### Defined in -[index.ts:182](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L182) +[index.ts:353](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L353) ___ ### \_options -• `Private` `Readonly` **\_options**: [`ConnectionOptions`](../interfaces/ConnectionOptions.md) +• `Private` `Readonly` **\_options**: () => [`ConnectionOptions`](../interfaces/ConnectionOptions.md) + +#### Type declaration + +▸ (): [`ConnectionOptions`](../interfaces/ConnectionOptions.md) + +##### Returns + +[`ConnectionOptions`](../interfaces/ConnectionOptions.md) #### Defined in -[index.ts:181](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L181) +[index.ts:352](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L352) ## Accessors @@ -84,27 +92,34 @@ ___ #### Defined in -[index.ts:189](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L189) +[index.ts:360](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L360) ## Methods ### createTable -▸ **createTable**(`name`, `data`, `mode?`): `Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> +▸ **createTable**\<`T`\>(`name`, `data?`, `optsOrEmbedding?`, `opt?`): `Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> -Creates a new Table and initialize it with new data. +Creates a new Table, optionally initializing it with new data. + +#### Type parameters + +| Name | +| :------ | +| `T` | #### Parameters -| Name | Type | Description | -| :------ | :------ | :------ | -| `name` | `string` | The name of the table. | -| `data` | `Record`<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the Table | -| `mode?` | [`WriteMode`](../enums/WriteMode.md) | The write mode to use when creating the table. | +| Name | Type | +| :------ | :------ | +| `name` | `string` \| [`CreateTableOptions`](../interfaces/CreateTableOptions.md)\<`T`\> | +| `data?` | `Record`\<`string`, `unknown`\>[] | +| `optsOrEmbedding?` | [`WriteOptions`](../interfaces/WriteOptions.md) \| [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> | +| `opt?` | [`WriteOptions`](../interfaces/WriteOptions.md) | #### Returns -`Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> +`Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> #### Implementation of @@ -112,120 +127,44 @@ Creates a new Table and initialize it with new data. #### Defined in -[index.ts:230](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L230) - -▸ **createTable**(`name`, `data`, `mode`): `Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> - -#### Parameters - -| Name | Type | -| :------ | :------ | -| `name` | `string` | -| `data` | `Record`<`string`, `unknown`\>[] | -| `mode` | [`WriteMode`](../enums/WriteMode.md) | - -#### Returns - -`Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> - -#### Implementation of - -Connection.createTable - -#### Defined in - -[index.ts:231](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L231) - -▸ **createTable**<`T`\>(`name`, `data`, `mode`, `embeddings`): `Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> - -Creates a new Table and initialize it with new data. - -#### Type parameters - -| Name | -| :------ | -| `T` | - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `name` | `string` | The name of the table. | -| `data` | `Record`<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the Table | -| `mode` | [`WriteMode`](../enums/WriteMode.md) | The write mode to use when creating the table. | -| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | An embedding function to use on this Table | - -#### Returns - -`Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> - -#### Implementation of - -Connection.createTable - -#### Defined in - -[index.ts:241](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L241) - -▸ **createTable**<`T`\>(`name`, `data`, `mode`, `embeddings?`): `Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> - -#### Type parameters - -| Name | -| :------ | -| `T` | - -#### Parameters - -| Name | Type | -| :------ | :------ | -| `name` | `string` | -| `data` | `Record`<`string`, `unknown`\>[] | -| `mode` | [`WriteMode`](../enums/WriteMode.md) | -| `embeddings?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | - -#### Returns - -`Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> - -#### Implementation of - -Connection.createTable - -#### Defined in - -[index.ts:242](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L242) +[index.ts:395](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L395) ___ -### createTableArrow +### createTableImpl -▸ **createTableArrow**(`name`, `table`): `Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> +▸ `Private` **createTableImpl**\<`T`\>(`«destructured»`): `Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> + +#### Type parameters + +| Name | +| :------ | +| `T` | #### Parameters | Name | Type | | :------ | :------ | -| `name` | `string` | -| `table` | `Table`<`any`\> | +| `«destructured»` | `Object` | +| › `data?` | `Table`\<`any`\> \| `Record`\<`string`, `unknown`\>[] | +| › `embeddingFunction?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> | +| › `name` | `string` | +| › `schema?` | `Schema`\<`any`\> | +| › `writeOptions?` | [`WriteOptions`](../interfaces/WriteOptions.md) | #### Returns -`Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> - -#### Implementation of - -[Connection](../interfaces/Connection.md).[createTableArrow](../interfaces/Connection.md#createtablearrow) +`Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> #### Defined in -[index.ts:266](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L266) +[index.ts:413](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L413) ___ ### dropTable -▸ **dropTable**(`name`): `Promise`<`void`\> +▸ **dropTable**(`name`): `Promise`\<`void`\> Drop an existing table. @@ -237,7 +176,7 @@ Drop an existing table. #### Returns -`Promise`<`void`\> +`Promise`\<`void`\> #### Implementation of @@ -245,13 +184,13 @@ Drop an existing table. #### Defined in -[index.ts:276](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L276) +[index.ts:453](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L453) ___ ### openTable -▸ **openTable**(`name`): `Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> +▸ **openTable**(`name`): `Promise`\<[`Table`](../interfaces/Table.md)\<`number`[]\>\> Open a table in the database. @@ -263,7 +202,7 @@ Open a table in the database. #### Returns -`Promise`<[`Table`](../interfaces/Table.md)<`number`[]\>\> +`Promise`\<[`Table`](../interfaces/Table.md)\<`number`[]\>\> #### Implementation of @@ -271,9 +210,9 @@ Open a table in the database. #### Defined in -[index.ts:205](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L205) +[index.ts:376](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L376) -▸ **openTable**<`T`\>(`name`, `embeddings`): `Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> +▸ **openTable**\<`T`\>(`name`, `embeddings`): `Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> Open a table in the database. @@ -288,11 +227,11 @@ Open a table in the database. | Name | Type | Description | | :------ | :------ | :------ | | `name` | `string` | The name of the table. | -| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | An embedding function to use on this Table | +| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> | An embedding function to use on this Table | #### Returns -`Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> +`Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> #### Implementation of @@ -300,9 +239,9 @@ Connection.openTable #### Defined in -[index.ts:212](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L212) +[index.ts:384](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L384) -▸ **openTable**<`T`\>(`name`, `embeddings?`): `Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> +▸ **openTable**\<`T`\>(`name`, `embeddings?`): `Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> #### Type parameters @@ -315,11 +254,11 @@ Connection.openTable | Name | Type | | :------ | :------ | | `name` | `string` | -| `embeddings?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | +| `embeddings?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> | #### Returns -`Promise`<[`Table`](../interfaces/Table.md)<`T`\>\> +`Promise`\<[`Table`](../interfaces/Table.md)\<`T`\>\> #### Implementation of @@ -327,19 +266,19 @@ Connection.openTable #### Defined in -[index.ts:213](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L213) +[index.ts:385](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L385) ___ ### tableNames -▸ **tableNames**(): `Promise`<`string`[]\> +▸ **tableNames**(): `Promise`\<`string`[]\> Get the names of all tables in the database. #### Returns -`Promise`<`string`[]\> +`Promise`\<`string`[]\> #### Implementation of @@ -347,4 +286,4 @@ Get the names of all tables in the database. #### Defined in -[index.ts:196](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L196) +[index.ts:367](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L367) diff --git a/docs/src/javascript/classes/LocalTable.md b/docs/src/javascript/classes/LocalTable.md index e3a0ee21..7484d1ec 100644 --- a/docs/src/javascript/classes/LocalTable.md +++ b/docs/src/javascript/classes/LocalTable.md @@ -1,6 +1,6 @@ [vectordb](../README.md) / [Exports](../modules.md) / LocalTable -# Class: LocalTable +# Class: LocalTable\ A LanceDB Table is the collection of Records. Each Record has one or more vector fields. @@ -12,7 +12,7 @@ A LanceDB Table is the collection of Records. Each Record has one or more vector ## Implements -- [`Table`](../interfaces/Table.md)<`T`\> +- [`Table`](../interfaces/Table.md)\<`T`\> ## Table of contents @@ -26,6 +26,7 @@ A LanceDB Table is the collection of Records. Each Record has one or more vector - [\_name](LocalTable.md#_name) - [\_options](LocalTable.md#_options) - [\_tbl](LocalTable.md#_tbl) +- [where](LocalTable.md#where) ### Accessors @@ -34,17 +35,23 @@ A LanceDB Table is the collection of Records. Each Record has one or more vector ### Methods - [add](LocalTable.md#add) +- [cleanupOldVersions](LocalTable.md#cleanupoldversions) +- [compactFiles](LocalTable.md#compactfiles) - [countRows](LocalTable.md#countrows) - [createIndex](LocalTable.md#createindex) - [delete](LocalTable.md#delete) +- [filter](LocalTable.md#filter) +- [indexStats](LocalTable.md#indexstats) +- [listIndices](LocalTable.md#listindices) - [overwrite](LocalTable.md#overwrite) - [search](LocalTable.md#search) +- [update](LocalTable.md#update) ## Constructors ### constructor -• **new LocalTable**<`T`\>(`tbl`, `name`, `options`) +• **new LocalTable**\<`T`\>(`tbl`, `name`, `options`) #### Type parameters @@ -62,9 +69,9 @@ A LanceDB Table is the collection of Records. Each Record has one or more vector #### Defined in -[index.ts:287](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L287) +[index.ts:464](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L464) -• **new LocalTable**<`T`\>(`tbl`, `name`, `options`, `embeddings`) +• **new LocalTable**\<`T`\>(`tbl`, `name`, `options`, `embeddings`) #### Type parameters @@ -79,21 +86,21 @@ A LanceDB Table is the collection of Records. Each Record has one or more vector | `tbl` | `any` | | | `name` | `string` | | | `options` | [`ConnectionOptions`](../interfaces/ConnectionOptions.md) | | -| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | An embedding function to use when interacting with this table | +| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> | An embedding function to use when interacting with this table | #### Defined in -[index.ts:294](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L294) +[index.ts:471](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L471) ## Properties ### \_embeddings -• `Private` `Optional` `Readonly` **\_embeddings**: [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> +• `Private` `Optional` `Readonly` **\_embeddings**: [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> #### Defined in -[index.ts:284](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L284) +[index.ts:461](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L461) ___ @@ -103,27 +110,61 @@ ___ #### Defined in -[index.ts:283](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L283) +[index.ts:460](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L460) ___ ### \_options -• `Private` `Readonly` **\_options**: [`ConnectionOptions`](../interfaces/ConnectionOptions.md) +• `Private` `Readonly` **\_options**: () => [`ConnectionOptions`](../interfaces/ConnectionOptions.md) + +#### Type declaration + +▸ (): [`ConnectionOptions`](../interfaces/ConnectionOptions.md) + +##### Returns + +[`ConnectionOptions`](../interfaces/ConnectionOptions.md) #### Defined in -[index.ts:285](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L285) +[index.ts:462](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L462) ___ ### \_tbl -• `Private` `Readonly` **\_tbl**: `any` +• `Private` **\_tbl**: `any` #### Defined in -[index.ts:282](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L282) +[index.ts:459](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L459) + +___ + +### where + +• **where**: (`value`: `string`) => [`Query`](Query.md)\<`T`\> + +#### Type declaration + +▸ (`value`): [`Query`](Query.md)\<`T`\> + +Creates a filter query to find all rows matching the specified criteria + +##### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | `string` | The filter criteria (like SQL where clause syntax) | + +##### Returns + +[`Query`](Query.md)\<`T`\> + +#### Defined in + +[index.ts:499](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L499) ## Accessors @@ -141,13 +182,13 @@ ___ #### Defined in -[index.ts:302](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L302) +[index.ts:479](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L479) ## Methods ### add -▸ **add**(`data`): `Promise`<`number`\> +▸ **add**(`data`): `Promise`\<`number`\> Insert records into this Table. @@ -155,11 +196,11 @@ Insert records into this Table. | Name | Type | Description | | :------ | :------ | :------ | -| `data` | `Record`<`string`, `unknown`\>[] | Records to be inserted into the Table | +| `data` | `Record`\<`string`, `unknown`\>[] | Records to be inserted into the Table | #### Returns -`Promise`<`number`\> +`Promise`\<`number`\> The number of rows added to the table @@ -169,19 +210,69 @@ The number of rows added to the table #### Defined in -[index.ts:320](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L320) +[index.ts:507](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L507) + +___ + +### cleanupOldVersions + +▸ **cleanupOldVersions**(`olderThan?`, `deleteUnverified?`): `Promise`\<[`CleanupStats`](../interfaces/CleanupStats.md)\> + +Clean up old versions of the table, freeing disk space. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `olderThan?` | `number` | The minimum age in minutes of the versions to delete. If not provided, defaults to two weeks. | +| `deleteUnverified?` | `boolean` | Because they may be part of an in-progress transaction, uncommitted files newer than 7 days old are not deleted by default. This means that failed transactions can leave around data that takes up disk space for up to 7 days. You can override this safety mechanism by setting this option to `true`, only if you promise there are no in progress writes while you run this operation. Failure to uphold this promise can lead to corrupted tables. | + +#### Returns + +`Promise`\<[`CleanupStats`](../interfaces/CleanupStats.md)\> + +#### Defined in + +[index.ts:596](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L596) + +___ + +### compactFiles + +▸ **compactFiles**(`options?`): `Promise`\<[`CompactionMetrics`](../interfaces/CompactionMetrics.md)\> + +Run the compaction process on the table. + +This can be run after making several small appends to optimize the table +for faster reads. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `options?` | [`CompactionOptions`](../interfaces/CompactionOptions.md) | Advanced options configuring compaction. In most cases, you can omit this arguments, as the default options are sensible for most tables. | + +#### Returns + +`Promise`\<[`CompactionMetrics`](../interfaces/CompactionMetrics.md)\> + +Metrics about the compaction operation. + +#### Defined in + +[index.ts:615](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L615) ___ ### countRows -▸ **countRows**(): `Promise`<`number`\> +▸ **countRows**(): `Promise`\<`number`\> Returns the number of rows in this table. #### Returns -`Promise`<`number`\> +`Promise`\<`number`\> #### Implementation of @@ -189,20 +280,16 @@ Returns the number of rows in this table. #### Defined in -[index.ts:362](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L362) +[index.ts:543](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L543) ___ ### createIndex -▸ **createIndex**(`indexParams`): `Promise`<`any`\> +▸ **createIndex**(`indexParams`): `Promise`\<`any`\> Create an ANN index on this Table vector index. -**`See`** - -VectorIndexParams. - #### Parameters | Name | Type | Description | @@ -211,7 +298,11 @@ VectorIndexParams. #### Returns -`Promise`<`any`\> +`Promise`\<`any`\> + +**`See`** + +VectorIndexParams. #### Implementation of @@ -219,13 +310,13 @@ VectorIndexParams. #### Defined in -[index.ts:355](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L355) +[index.ts:536](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L536) ___ ### delete -▸ **delete**(`filter`): `Promise`<`void`\> +▸ **delete**(`filter`): `Promise`\<`void`\> Delete rows from this table. @@ -237,7 +328,7 @@ Delete rows from this table. #### Returns -`Promise`<`void`\> +`Promise`\<`void`\> #### Implementation of @@ -245,13 +336,81 @@ Delete rows from this table. #### Defined in -[index.ts:371](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L371) +[index.ts:552](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L552) + +___ + +### filter + +▸ **filter**(`value`): [`Query`](Query.md)\<`T`\> + +Creates a filter query to find all rows matching the specified criteria + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | `string` | The filter criteria (like SQL where clause syntax) | + +#### Returns + +[`Query`](Query.md)\<`T`\> + +#### Defined in + +[index.ts:495](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L495) + +___ + +### indexStats + +▸ **indexStats**(`indexUuid`): `Promise`\<[`IndexStats`](../interfaces/IndexStats.md)\> + +Get statistics about an index. + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `indexUuid` | `string` | + +#### Returns + +`Promise`\<[`IndexStats`](../interfaces/IndexStats.md)\> + +#### Implementation of + +[Table](../interfaces/Table.md).[indexStats](../interfaces/Table.md#indexstats) + +#### Defined in + +[index.ts:628](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L628) + +___ + +### listIndices + +▸ **listIndices**(): `Promise`\<[`VectorIndex`](../interfaces/VectorIndex.md)[]\> + +List the indicies on this table. + +#### Returns + +`Promise`\<[`VectorIndex`](../interfaces/VectorIndex.md)[]\> + +#### Implementation of + +[Table](../interfaces/Table.md).[listIndices](../interfaces/Table.md#listindices) + +#### Defined in + +[index.ts:624](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L624) ___ ### overwrite -▸ **overwrite**(`data`): `Promise`<`number`\> +▸ **overwrite**(`data`): `Promise`\<`number`\> Insert records into this Table, replacing its contents. @@ -259,11 +418,11 @@ Insert records into this Table, replacing its contents. | Name | Type | Description | | :------ | :------ | :------ | -| `data` | `Record`<`string`, `unknown`\>[] | Records to be inserted into the Table | +| `data` | `Record`\<`string`, `unknown`\>[] | Records to be inserted into the Table | #### Returns -`Promise`<`number`\> +`Promise`\<`number`\> The number of rows added to the table @@ -273,13 +432,13 @@ The number of rows added to the table #### Defined in -[index.ts:338](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L338) +[index.ts:522](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L522) ___ ### search -▸ **search**(`query`): [`Query`](Query.md)<`T`\> +▸ **search**(`query`): [`Query`](Query.md)\<`T`\> Creates a search query to find the nearest neighbors of the given search term @@ -291,7 +450,7 @@ Creates a search query to find the nearest neighbors of the given search term #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Implementation of @@ -299,4 +458,30 @@ Creates a search query to find the nearest neighbors of the given search term #### Defined in -[index.ts:310](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L310) +[index.ts:487](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L487) + +___ + +### update + +▸ **update**(`args`): `Promise`\<`void`\> + +Update rows in this table. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `args` | [`UpdateArgs`](../interfaces/UpdateArgs.md) \| [`UpdateSqlArgs`](../interfaces/UpdateSqlArgs.md) | see [UpdateArgs](../interfaces/UpdateArgs.md) and [UpdateSqlArgs](../interfaces/UpdateSqlArgs.md) for more details | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[Table](../interfaces/Table.md).[update](../interfaces/Table.md#update) + +#### Defined in + +[index.ts:563](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L563) diff --git a/docs/src/javascript/classes/OpenAIEmbeddingFunction.md b/docs/src/javascript/classes/OpenAIEmbeddingFunction.md index f2a4b864..35928dfb 100644 --- a/docs/src/javascript/classes/OpenAIEmbeddingFunction.md +++ b/docs/src/javascript/classes/OpenAIEmbeddingFunction.md @@ -6,7 +6,7 @@ An embedding function that automatically creates vector representation for a giv ## Implements -- [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`string`\> +- [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`string`\> ## Table of contents @@ -40,7 +40,7 @@ An embedding function that automatically creates vector representation for a giv #### Defined in -[embedding/openai.ts:21](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/openai.ts#L21) +[embedding/openai.ts:21](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/openai.ts#L21) ## Properties @@ -50,7 +50,7 @@ An embedding function that automatically creates vector representation for a giv #### Defined in -[embedding/openai.ts:19](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/openai.ts#L19) +[embedding/openai.ts:19](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/openai.ts#L19) ___ @@ -60,7 +60,7 @@ ___ #### Defined in -[embedding/openai.ts:18](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/openai.ts#L18) +[embedding/openai.ts:18](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/openai.ts#L18) ___ @@ -76,13 +76,13 @@ The name of the column that will be used as input for the Embedding Function. #### Defined in -[embedding/openai.ts:50](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/openai.ts#L50) +[embedding/openai.ts:50](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/openai.ts#L50) ## Methods ### embed -▸ **embed**(`data`): `Promise`<`number`[][]\> +▸ **embed**(`data`): `Promise`\<`number`[][]\> Creates a vector representation for the given values. @@ -94,7 +94,7 @@ Creates a vector representation for the given values. #### Returns -`Promise`<`number`[][]\> +`Promise`\<`number`[][]\> #### Implementation of @@ -102,4 +102,4 @@ Creates a vector representation for the given values. #### Defined in -[embedding/openai.ts:38](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/openai.ts#L38) +[embedding/openai.ts:38](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/openai.ts#L38) diff --git a/docs/src/javascript/classes/Query.md b/docs/src/javascript/classes/Query.md index e9371f10..070208e9 100644 --- a/docs/src/javascript/classes/Query.md +++ b/docs/src/javascript/classes/Query.md @@ -1,6 +1,6 @@ [vectordb](../README.md) / [Exports](../modules.md) / Query -# Class: Query +# Class: Query\ A builder for nearest neighbor queries for LanceDB. @@ -23,6 +23,7 @@ A builder for nearest neighbor queries for LanceDB. - [\_limit](Query.md#_limit) - [\_metricType](Query.md#_metrictype) - [\_nprobes](Query.md#_nprobes) +- [\_prefilter](Query.md#_prefilter) - [\_query](Query.md#_query) - [\_queryVector](Query.md#_queryvector) - [\_refineFactor](Query.md#_refinefactor) @@ -34,9 +35,11 @@ A builder for nearest neighbor queries for LanceDB. - [execute](Query.md#execute) - [filter](Query.md#filter) +- [isElectron](Query.md#iselectron) - [limit](Query.md#limit) - [metricType](Query.md#metrictype) - [nprobes](Query.md#nprobes) +- [prefilter](Query.md#prefilter) - [refineFactor](Query.md#refinefactor) - [select](Query.md#select) @@ -44,7 +47,7 @@ A builder for nearest neighbor queries for LanceDB. ### constructor -• **new Query**<`T`\>(`tbl`, `query`, `embeddings?`) +• **new Query**\<`T`\>(`query?`, `tbl?`, `embeddings?`) #### Type parameters @@ -56,23 +59,23 @@ A builder for nearest neighbor queries for LanceDB. | Name | Type | | :------ | :------ | -| `tbl` | `any` | -| `query` | `T` | -| `embeddings?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | +| `query?` | `T` | +| `tbl?` | `any` | +| `embeddings?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> | #### Defined in -[index.ts:448](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L448) +[query.ts:38](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L38) ## Properties ### \_embeddings -• `Private` `Optional` `Readonly` **\_embeddings**: [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> +• `Protected` `Optional` `Readonly` **\_embeddings**: [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)\<`T`\> #### Defined in -[index.ts:446](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L446) +[query.ts:36](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L36) ___ @@ -82,17 +85,17 @@ ___ #### Defined in -[index.ts:444](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L444) +[query.ts:33](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L33) ___ ### \_limit -• `Private` **\_limit**: `number` +• `Private` `Optional` **\_limit**: `number` #### Defined in -[index.ts:440](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L440) +[query.ts:29](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L29) ___ @@ -102,7 +105,7 @@ ___ #### Defined in -[index.ts:445](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L445) +[query.ts:34](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L34) ___ @@ -112,17 +115,27 @@ ___ #### Defined in -[index.ts:442](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L442) +[query.ts:31](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L31) + +___ + +### \_prefilter + +• `Private` **\_prefilter**: `boolean` + +#### Defined in + +[query.ts:35](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L35) ___ ### \_query -• `Private` `Readonly` **\_query**: `T` +• `Private` `Optional` `Readonly` **\_query**: `T` #### Defined in -[index.ts:438](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L438) +[query.ts:26](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L26) ___ @@ -132,7 +145,7 @@ ___ #### Defined in -[index.ts:439](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L439) +[query.ts:28](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L28) ___ @@ -142,7 +155,7 @@ ___ #### Defined in -[index.ts:441](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L441) +[query.ts:30](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L30) ___ @@ -152,27 +165,27 @@ ___ #### Defined in -[index.ts:443](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L443) +[query.ts:32](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L32) ___ ### \_tbl -• `Private` `Readonly` **\_tbl**: `any` +• `Private` `Optional` `Readonly` **\_tbl**: `any` #### Defined in -[index.ts:437](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L437) +[query.ts:27](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L27) ___ ### where -• **where**: (`value`: `string`) => [`Query`](Query.md)<`T`\> +• **where**: (`value`: `string`) => [`Query`](Query.md)\<`T`\> #### Type declaration -▸ (`value`): [`Query`](Query.md)<`T`\> +▸ (`value`): [`Query`](Query.md)\<`T`\> A filter statement to be applied to this query. @@ -184,17 +197,17 @@ A filter statement to be applied to this query. ##### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Defined in -[index.ts:496](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L496) +[query.ts:87](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L87) ## Methods ### execute -▸ **execute**<`T`\>(): `Promise`<`T`[]\> +▸ **execute**\<`T`\>(): `Promise`\<`T`[]\> Execute the query and return the results as an Array of Objects @@ -202,21 +215,21 @@ Execute the query and return the results as an Array of Objects | Name | Type | | :------ | :------ | -| `T` | `Record`<`string`, `unknown`\> | +| `T` | `Record`\<`string`, `unknown`\> | #### Returns -`Promise`<`T`[]\> +`Promise`\<`T`[]\> #### Defined in -[index.ts:519](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L519) +[query.ts:115](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L115) ___ ### filter -▸ **filter**(`value`): [`Query`](Query.md)<`T`\> +▸ **filter**(`value`): [`Query`](Query.md)\<`T`\> A filter statement to be applied to this query. @@ -228,17 +241,31 @@ A filter statement to be applied to this query. #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Defined in -[index.ts:491](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L491) +[query.ts:82](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L82) + +___ + +### isElectron + +▸ `Private` **isElectron**(): `boolean` + +#### Returns + +`boolean` + +#### Defined in + +[query.ts:142](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L142) ___ ### limit -▸ **limit**(`value`): [`Query`](Query.md)<`T`\> +▸ **limit**(`value`): [`Query`](Query.md)\<`T`\> Sets the number of results that will be returned @@ -250,24 +277,20 @@ Sets the number of results that will be returned #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Defined in -[index.ts:464](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L464) +[query.ts:55](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L55) ___ ### metricType -▸ **metricType**(`value`): [`Query`](Query.md)<`T`\> +▸ **metricType**(`value`): [`Query`](Query.md)\<`T`\> The MetricType used for this Query. -**`See`** - -MetricType for the different options - #### Parameters | Name | Type | Description | @@ -276,17 +299,21 @@ MetricType for the different options #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> + +**`See`** + +MetricType for the different options #### Defined in -[index.ts:511](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L511) +[query.ts:102](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L102) ___ ### nprobes -▸ **nprobes**(`value`): [`Query`](Query.md)<`T`\> +▸ **nprobes**(`value`): [`Query`](Query.md)\<`T`\> The number of probes used. A higher number makes search more accurate but also slower. @@ -298,17 +325,37 @@ The number of probes used. A higher number makes search more accurate but also s #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Defined in -[index.ts:482](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L482) +[query.ts:73](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L73) + +___ + +### prefilter + +▸ **prefilter**(`value`): [`Query`](Query.md)\<`T`\> + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `value` | `boolean` | + +#### Returns + +[`Query`](Query.md)\<`T`\> + +#### Defined in + +[query.ts:107](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L107) ___ ### refineFactor -▸ **refineFactor**(`value`): [`Query`](Query.md)<`T`\> +▸ **refineFactor**(`value`): [`Query`](Query.md)\<`T`\> Refine the results by reading extra elements and re-ranking them in memory. @@ -320,17 +367,17 @@ Refine the results by reading extra elements and re-ranking them in memory. #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Defined in -[index.ts:473](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L473) +[query.ts:64](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L64) ___ ### select -▸ **select**(`value`): [`Query`](Query.md)<`T`\> +▸ **select**(`value`): [`Query`](Query.md)\<`T`\> Return only the specified columns. @@ -342,8 +389,8 @@ Return only the specified columns. #### Returns -[`Query`](Query.md)<`T`\> +[`Query`](Query.md)\<`T`\> #### Defined in -[index.ts:502](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L502) +[query.ts:93](https://github.com/lancedb/lancedb/blob/7856a94/node/src/query.ts#L93) diff --git a/docs/src/javascript/enums/MetricType.md b/docs/src/javascript/enums/MetricType.md index 9a92178e..5ad4b4b5 100644 --- a/docs/src/javascript/enums/MetricType.md +++ b/docs/src/javascript/enums/MetricType.md @@ -22,7 +22,7 @@ Cosine distance #### Defined in -[index.ts:567](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L567) +[index.ts:798](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L798) ___ @@ -34,7 +34,7 @@ Dot product #### Defined in -[index.ts:572](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L572) +[index.ts:803](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L803) ___ @@ -46,4 +46,4 @@ Euclidean distance #### Defined in -[index.ts:562](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L562) +[index.ts:793](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L793) diff --git a/docs/src/javascript/enums/WriteMode.md b/docs/src/javascript/enums/WriteMode.md index 46a71f1c..b681f0a6 100644 --- a/docs/src/javascript/enums/WriteMode.md +++ b/docs/src/javascript/enums/WriteMode.md @@ -22,7 +22,7 @@ Append new data to the table. #### Defined in -[index.ts:552](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L552) +[index.ts:766](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L766) ___ @@ -34,7 +34,7 @@ Create a new [Table](../interfaces/Table.md). #### Defined in -[index.ts:548](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L548) +[index.ts:762](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L762) ___ @@ -46,4 +46,4 @@ Overwrite the existing [Table](../interfaces/Table.md) if presented. #### Defined in -[index.ts:550](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L550) +[index.ts:764](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L764) diff --git a/docs/src/javascript/interfaces/AwsCredentials.md b/docs/src/javascript/interfaces/AwsCredentials.md index 8e583361..c1dbd7e4 100644 --- a/docs/src/javascript/interfaces/AwsCredentials.md +++ b/docs/src/javascript/interfaces/AwsCredentials.md @@ -18,7 +18,7 @@ #### Defined in -[index.ts:31](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L31) +[index.ts:34](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L34) ___ @@ -28,7 +28,7 @@ ___ #### Defined in -[index.ts:33](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L33) +[index.ts:36](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L36) ___ @@ -38,4 +38,4 @@ ___ #### Defined in -[index.ts:35](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L35) +[index.ts:38](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L38) diff --git a/docs/src/javascript/interfaces/CleanupStats.md b/docs/src/javascript/interfaces/CleanupStats.md new file mode 100644 index 00000000..2ec1eaf3 --- /dev/null +++ b/docs/src/javascript/interfaces/CleanupStats.md @@ -0,0 +1,34 @@ +[vectordb](../README.md) / [Exports](../modules.md) / CleanupStats + +# Interface: CleanupStats + +## Table of contents + +### Properties + +- [bytesRemoved](CleanupStats.md#bytesremoved) +- [oldVersions](CleanupStats.md#oldversions) + +## Properties + +### bytesRemoved + +• **bytesRemoved**: `number` + +The number of bytes removed from disk. + +#### Defined in + +[index.ts:637](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L637) + +___ + +### oldVersions + +• **oldVersions**: `number` + +The number of old table versions removed. + +#### Defined in + +[index.ts:641](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L641) diff --git a/docs/src/javascript/interfaces/CompactionMetrics.md b/docs/src/javascript/interfaces/CompactionMetrics.md new file mode 100644 index 00000000..ef5a4145 --- /dev/null +++ b/docs/src/javascript/interfaces/CompactionMetrics.md @@ -0,0 +1,62 @@ +[vectordb](../README.md) / [Exports](../modules.md) / CompactionMetrics + +# Interface: CompactionMetrics + +## Table of contents + +### Properties + +- [filesAdded](CompactionMetrics.md#filesadded) +- [filesRemoved](CompactionMetrics.md#filesremoved) +- [fragmentsAdded](CompactionMetrics.md#fragmentsadded) +- [fragmentsRemoved](CompactionMetrics.md#fragmentsremoved) + +## Properties + +### filesAdded + +• **filesAdded**: `number` + +The number of files added. This is typically equal to the number of +fragments added. + +#### Defined in + +[index.ts:692](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L692) + +___ + +### filesRemoved + +• **filesRemoved**: `number` + +The number of files that were removed. Each fragment may have more than one +file. + +#### Defined in + +[index.ts:687](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L687) + +___ + +### fragmentsAdded + +• **fragmentsAdded**: `number` + +The number of new fragments that were created. + +#### Defined in + +[index.ts:682](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L682) + +___ + +### fragmentsRemoved + +• **fragmentsRemoved**: `number` + +The number of fragments that were removed. + +#### Defined in + +[index.ts:678](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L678) diff --git a/docs/src/javascript/interfaces/CompactionOptions.md b/docs/src/javascript/interfaces/CompactionOptions.md new file mode 100644 index 00000000..93487aa5 --- /dev/null +++ b/docs/src/javascript/interfaces/CompactionOptions.md @@ -0,0 +1,80 @@ +[vectordb](../README.md) / [Exports](../modules.md) / CompactionOptions + +# Interface: CompactionOptions + +## Table of contents + +### Properties + +- [materializeDeletions](CompactionOptions.md#materializedeletions) +- [materializeDeletionsThreshold](CompactionOptions.md#materializedeletionsthreshold) +- [maxRowsPerGroup](CompactionOptions.md#maxrowspergroup) +- [numThreads](CompactionOptions.md#numthreads) +- [targetRowsPerFragment](CompactionOptions.md#targetrowsperfragment) + +## Properties + +### materializeDeletions + +• `Optional` **materializeDeletions**: `boolean` + +If true, fragments that have rows that are deleted may be compacted to +remove the deleted rows. This can improve the performance of queries. +Default is true. + +#### Defined in + +[index.ts:660](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L660) + +___ + +### materializeDeletionsThreshold + +• `Optional` **materializeDeletionsThreshold**: `number` + +A number between 0 and 1, representing the proportion of rows that must be +marked deleted before a fragment is a candidate for compaction to remove +the deleted rows. Default is 10%. + +#### Defined in + +[index.ts:666](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L666) + +___ + +### maxRowsPerGroup + +• `Optional` **maxRowsPerGroup**: `number` + +The maximum number of rows per group. Defaults to 1024. + +#### Defined in + +[index.ts:654](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L654) + +___ + +### numThreads + +• `Optional` **numThreads**: `number` + +The number of threads to use for compaction. If not provided, defaults to +the number of cores on the machine. + +#### Defined in + +[index.ts:671](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L671) + +___ + +### targetRowsPerFragment + +• `Optional` **targetRowsPerFragment**: `number` + +The number of rows per fragment to target. Fragments that have fewer rows +will be compacted into adjacent fragments to produce larger fragments. +Defaults to 1024 * 1024. + +#### Defined in + +[index.ts:650](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L650) diff --git a/docs/src/javascript/interfaces/Connection.md b/docs/src/javascript/interfaces/Connection.md index 3d30703b..2e6ea330 100644 --- a/docs/src/javascript/interfaces/Connection.md +++ b/docs/src/javascript/interfaces/Connection.md @@ -19,7 +19,6 @@ Connection could be local against filesystem or remote against a server. ### Methods - [createTable](Connection.md#createtable) -- [createTableArrow](Connection.md#createtablearrow) - [dropTable](Connection.md#droptable) - [openTable](Connection.md#opentable) - [tableNames](Connection.md#tablenames) @@ -32,13 +31,76 @@ Connection could be local against filesystem or remote against a server. #### Defined in -[index.ts:70](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L70) +[index.ts:125](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L125) ## Methods ### createTable -▸ **createTable**<`T`\>(`name`, `data`, `mode?`, `embeddings?`): `Promise`<[`Table`](Table.md)<`T`\>\> +▸ **createTable**\<`T`\>(`«destructured»`): `Promise`\<[`Table`](Table.md)\<`T`\>\> + +Creates a new Table, optionally initializing it with new data. + +#### Type parameters + +| Name | +| :------ | +| `T` | + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `«destructured»` | [`CreateTableOptions`](CreateTableOptions.md)\<`T`\> | + +#### Returns + +`Promise`\<[`Table`](Table.md)\<`T`\>\> + +#### Defined in + +[index.ts:146](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L146) + +▸ **createTable**(`name`, `data`): `Promise`\<[`Table`](Table.md)\<`number`[]\>\> + +Creates a new Table and initialize it with new data. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `name` | `string` | The name of the table. | +| `data` | `Record`\<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the table | + +#### Returns + +`Promise`\<[`Table`](Table.md)\<`number`[]\>\> + +#### Defined in + +[index.ts:154](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L154) + +▸ **createTable**(`name`, `data`, `options`): `Promise`\<[`Table`](Table.md)\<`number`[]\>\> + +Creates a new Table and initialize it with new data. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `name` | `string` | The name of the table. | +| `data` | `Record`\<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the table | +| `options` | [`WriteOptions`](WriteOptions.md) | The write options to use when creating the table. | + +#### Returns + +`Promise`\<[`Table`](Table.md)\<`number`[]\>\> + +#### Defined in + +[index.ts:163](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L163) + +▸ **createTable**\<`T`\>(`name`, `data`, `embeddings`): `Promise`\<[`Table`](Table.md)\<`T`\>\> Creates a new Table and initialize it with new data. @@ -53,44 +115,49 @@ Creates a new Table and initialize it with new data. | Name | Type | Description | | :------ | :------ | :------ | | `name` | `string` | The name of the table. | -| `data` | `Record`<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the table | -| `mode?` | [`WriteMode`](../enums/WriteMode.md) | The write mode to use when creating the table. | -| `embeddings?` | [`EmbeddingFunction`](EmbeddingFunction.md)<`T`\> | An embedding function to use on this table | +| `data` | `Record`\<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the table | +| `embeddings` | [`EmbeddingFunction`](EmbeddingFunction.md)\<`T`\> | An embedding function to use on this table | #### Returns -`Promise`<[`Table`](Table.md)<`T`\>\> +`Promise`\<[`Table`](Table.md)\<`T`\>\> #### Defined in -[index.ts:90](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L90) +[index.ts:172](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L172) -___ +▸ **createTable**\<`T`\>(`name`, `data`, `embeddings`, `options`): `Promise`\<[`Table`](Table.md)\<`T`\>\> -### createTableArrow +Creates a new Table and initialize it with new data. -▸ **createTableArrow**(`name`, `table`): `Promise`<[`Table`](Table.md)<`number`[]\>\> +#### Type parameters + +| Name | +| :------ | +| `T` | #### Parameters -| Name | Type | -| :------ | :------ | -| `name` | `string` | -| `table` | `Table`<`any`\> | +| Name | Type | Description | +| :------ | :------ | :------ | +| `name` | `string` | The name of the table. | +| `data` | `Record`\<`string`, `unknown`\>[] | Non-empty Array of Records to be inserted into the table | +| `embeddings` | [`EmbeddingFunction`](EmbeddingFunction.md)\<`T`\> | An embedding function to use on this table | +| `options` | [`WriteOptions`](WriteOptions.md) | The write options to use when creating the table. | #### Returns -`Promise`<[`Table`](Table.md)<`number`[]\>\> +`Promise`\<[`Table`](Table.md)\<`T`\>\> #### Defined in -[index.ts:92](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L92) +[index.ts:181](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L181) ___ ### dropTable -▸ **dropTable**(`name`): `Promise`<`void`\> +▸ **dropTable**(`name`): `Promise`\<`void`\> Drop an existing table. @@ -102,17 +169,17 @@ Drop an existing table. #### Returns -`Promise`<`void`\> +`Promise`\<`void`\> #### Defined in -[index.ts:98](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L98) +[index.ts:187](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L187) ___ ### openTable -▸ **openTable**<`T`\>(`name`, `embeddings?`): `Promise`<[`Table`](Table.md)<`T`\>\> +▸ **openTable**\<`T`\>(`name`, `embeddings?`): `Promise`\<[`Table`](Table.md)\<`T`\>\> Open a table in the database. @@ -127,26 +194,26 @@ Open a table in the database. | Name | Type | Description | | :------ | :------ | :------ | | `name` | `string` | The name of the table. | -| `embeddings?` | [`EmbeddingFunction`](EmbeddingFunction.md)<`T`\> | An embedding function to use on this table | +| `embeddings?` | [`EmbeddingFunction`](EmbeddingFunction.md)\<`T`\> | An embedding function to use on this table | #### Returns -`Promise`<[`Table`](Table.md)<`T`\>\> +`Promise`\<[`Table`](Table.md)\<`T`\>\> #### Defined in -[index.ts:80](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L80) +[index.ts:135](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L135) ___ ### tableNames -▸ **tableNames**(): `Promise`<`string`[]\> +▸ **tableNames**(): `Promise`\<`string`[]\> #### Returns -`Promise`<`string`[]\> +`Promise`\<`string`[]\> #### Defined in -[index.ts:72](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L72) +[index.ts:127](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L127) diff --git a/docs/src/javascript/interfaces/ConnectionOptions.md b/docs/src/javascript/interfaces/ConnectionOptions.md index c162ce7f..b559233f 100644 --- a/docs/src/javascript/interfaces/ConnectionOptions.md +++ b/docs/src/javascript/interfaces/ConnectionOptions.md @@ -6,18 +6,62 @@ ### Properties +- [apiKey](ConnectionOptions.md#apikey) - [awsCredentials](ConnectionOptions.md#awscredentials) +- [awsRegion](ConnectionOptions.md#awsregion) +- [hostOverride](ConnectionOptions.md#hostoverride) +- [region](ConnectionOptions.md#region) - [uri](ConnectionOptions.md#uri) ## Properties +### apiKey + +• `Optional` **apiKey**: `string` + +#### Defined in + +[index.ts:49](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L49) + +___ + ### awsCredentials • `Optional` **awsCredentials**: [`AwsCredentials`](AwsCredentials.md) #### Defined in -[index.ts:40](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L40) +[index.ts:44](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L44) + +___ + +### awsRegion + +• `Optional` **awsRegion**: `string` + +#### Defined in + +[index.ts:46](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L46) + +___ + +### hostOverride + +• `Optional` **hostOverride**: `string` + +#### Defined in + +[index.ts:54](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L54) + +___ + +### region + +• `Optional` **region**: `string` + +#### Defined in + +[index.ts:51](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L51) ___ @@ -27,4 +71,4 @@ ___ #### Defined in -[index.ts:39](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L39) +[index.ts:42](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L42) diff --git a/docs/src/javascript/interfaces/CreateTableOptions.md b/docs/src/javascript/interfaces/CreateTableOptions.md new file mode 100644 index 00000000..a688deed --- /dev/null +++ b/docs/src/javascript/interfaces/CreateTableOptions.md @@ -0,0 +1,69 @@ +[vectordb](../README.md) / [Exports](../modules.md) / CreateTableOptions + +# Interface: CreateTableOptions\ + +## Type parameters + +| Name | +| :------ | +| `T` | + +## Table of contents + +### Properties + +- [data](CreateTableOptions.md#data) +- [embeddingFunction](CreateTableOptions.md#embeddingfunction) +- [name](CreateTableOptions.md#name) +- [schema](CreateTableOptions.md#schema) +- [writeOptions](CreateTableOptions.md#writeoptions) + +## Properties + +### data + +• `Optional` **data**: `Table`\<`any`\> \| `Record`\<`string`, `unknown`\>[] + +#### Defined in + +[index.ts:79](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L79) + +___ + +### embeddingFunction + +• `Optional` **embeddingFunction**: [`EmbeddingFunction`](EmbeddingFunction.md)\<`T`\> + +#### Defined in + +[index.ts:85](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L85) + +___ + +### name + +• **name**: `string` + +#### Defined in + +[index.ts:76](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L76) + +___ + +### schema + +• `Optional` **schema**: `Schema`\<`any`\> + +#### Defined in + +[index.ts:82](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L82) + +___ + +### writeOptions + +• `Optional` **writeOptions**: [`WriteOptions`](WriteOptions.md) + +#### Defined in + +[index.ts:88](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L88) diff --git a/docs/src/javascript/interfaces/EmbeddingFunction.md b/docs/src/javascript/interfaces/EmbeddingFunction.md index 3954b561..a123f1af 100644 --- a/docs/src/javascript/interfaces/EmbeddingFunction.md +++ b/docs/src/javascript/interfaces/EmbeddingFunction.md @@ -1,6 +1,6 @@ [vectordb](../README.md) / [Exports](../modules.md) / EmbeddingFunction -# Interface: EmbeddingFunction +# Interface: EmbeddingFunction\ An embedding function that automatically creates vector representation for a given column. @@ -25,11 +25,11 @@ An embedding function that automatically creates vector representation for a giv ### embed -• **embed**: (`data`: `T`[]) => `Promise`<`number`[][]\> +• **embed**: (`data`: `T`[]) => `Promise`\<`number`[][]\> #### Type declaration -▸ (`data`): `Promise`<`number`[][]\> +▸ (`data`): `Promise`\<`number`[][]\> Creates a vector representation for the given values. @@ -41,11 +41,11 @@ Creates a vector representation for the given values. ##### Returns -`Promise`<`number`[][]\> +`Promise`\<`number`[][]\> #### Defined in -[embedding/embedding_function.ts:27](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/embedding_function.ts#L27) +[embedding/embedding_function.ts:27](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/embedding_function.ts#L27) ___ @@ -57,4 +57,4 @@ The name of the column that will be used as input for the Embedding Function. #### Defined in -[embedding/embedding_function.ts:22](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/embedding/embedding_function.ts#L22) +[embedding/embedding_function.ts:22](https://github.com/lancedb/lancedb/blob/7856a94/node/src/embedding/embedding_function.ts#L22) diff --git a/docs/src/javascript/interfaces/IndexStats.md b/docs/src/javascript/interfaces/IndexStats.md new file mode 100644 index 00000000..c9923301 --- /dev/null +++ b/docs/src/javascript/interfaces/IndexStats.md @@ -0,0 +1,30 @@ +[vectordb](../README.md) / [Exports](../modules.md) / IndexStats + +# Interface: IndexStats + +## Table of contents + +### Properties + +- [numIndexedRows](IndexStats.md#numindexedrows) +- [numUnindexedRows](IndexStats.md#numunindexedrows) + +## Properties + +### numIndexedRows + +• **numIndexedRows**: ``null`` \| `number` + +#### Defined in + +[index.ts:344](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L344) + +___ + +### numUnindexedRows + +• **numUnindexedRows**: ``null`` \| `number` + +#### Defined in + +[index.ts:345](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L345) diff --git a/docs/src/javascript/interfaces/IvfPQIndexConfig.md b/docs/src/javascript/interfaces/IvfPQIndexConfig.md index c2fc6327..a78e1b18 100644 --- a/docs/src/javascript/interfaces/IvfPQIndexConfig.md +++ b/docs/src/javascript/interfaces/IvfPQIndexConfig.md @@ -7,6 +7,7 @@ ### Properties - [column](IvfPQIndexConfig.md#column) +- [index\_cache\_size](IvfPQIndexConfig.md#index_cache_size) - [index\_name](IvfPQIndexConfig.md#index_name) - [max\_iters](IvfPQIndexConfig.md#max_iters) - [max\_opq\_iters](IvfPQIndexConfig.md#max_opq_iters) @@ -28,7 +29,19 @@ The column to be indexed #### Defined in -[index.ts:382](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L382) +[index.ts:701](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L701) + +___ + +### index\_cache\_size + +• `Optional` **index\_cache\_size**: `number` + +Cache size of the index + +#### Defined in + +[index.ts:750](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L750) ___ @@ -40,7 +53,7 @@ A unique name for the index #### Defined in -[index.ts:387](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L387) +[index.ts:706](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L706) ___ @@ -52,7 +65,7 @@ The max number of iterations for kmeans training. #### Defined in -[index.ts:402](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L402) +[index.ts:721](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L721) ___ @@ -64,7 +77,7 @@ Max number of iterations to train OPQ, if `use_opq` is true. #### Defined in -[index.ts:421](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L421) +[index.ts:740](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L740) ___ @@ -76,7 +89,7 @@ Metric type, L2 or Cosine #### Defined in -[index.ts:392](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L392) +[index.ts:711](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L711) ___ @@ -88,7 +101,7 @@ The number of bits to present one PQ centroid. #### Defined in -[index.ts:416](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L416) +[index.ts:735](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L735) ___ @@ -100,7 +113,7 @@ The number of partitions this index #### Defined in -[index.ts:397](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L397) +[index.ts:716](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L716) ___ @@ -112,7 +125,7 @@ Number of subvectors to build PQ code #### Defined in -[index.ts:412](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L412) +[index.ts:731](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L731) ___ @@ -124,7 +137,7 @@ Replace an existing index with the same name if it exists. #### Defined in -[index.ts:426](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L426) +[index.ts:745](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L745) ___ @@ -134,7 +147,7 @@ ___ #### Defined in -[index.ts:428](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L428) +[index.ts:752](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L752) ___ @@ -146,4 +159,4 @@ Train as optimized product quantization. #### Defined in -[index.ts:407](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L407) +[index.ts:726](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L726) diff --git a/docs/src/javascript/interfaces/Table.md b/docs/src/javascript/interfaces/Table.md index 32db661e..a7657517 100644 --- a/docs/src/javascript/interfaces/Table.md +++ b/docs/src/javascript/interfaces/Table.md @@ -1,6 +1,6 @@ [vectordb](../README.md) / [Exports](../modules.md) / Table -# Interface: Table +# Interface: Table\ A LanceDB Table is the collection of Records. Each Record has one or more vector fields. @@ -22,19 +22,22 @@ A LanceDB Table is the collection of Records. Each Record has one or more vector - [countRows](Table.md#countrows) - [createIndex](Table.md#createindex) - [delete](Table.md#delete) +- [indexStats](Table.md#indexstats) +- [listIndices](Table.md#listindices) - [name](Table.md#name) - [overwrite](Table.md#overwrite) - [search](Table.md#search) +- [update](Table.md#update) ## Properties ### add -• **add**: (`data`: `Record`<`string`, `unknown`\>[]) => `Promise`<`number`\> +• **add**: (`data`: `Record`\<`string`, `unknown`\>[]) => `Promise`\<`number`\> #### Type declaration -▸ (`data`): `Promise`<`number`\> +▸ (`data`): `Promise`\<`number`\> Insert records into this Table. @@ -42,54 +45,50 @@ Insert records into this Table. | Name | Type | Description | | :------ | :------ | :------ | -| `data` | `Record`<`string`, `unknown`\>[] | Records to be inserted into the Table | +| `data` | `Record`\<`string`, `unknown`\>[] | Records to be inserted into the Table | ##### Returns -`Promise`<`number`\> +`Promise`\<`number`\> The number of rows added to the table #### Defined in -[index.ts:120](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L120) +[index.ts:209](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L209) ___ ### countRows -• **countRows**: () => `Promise`<`number`\> +• **countRows**: () => `Promise`\<`number`\> #### Type declaration -▸ (): `Promise`<`number`\> +▸ (): `Promise`\<`number`\> Returns the number of rows in this table. ##### Returns -`Promise`<`number`\> +`Promise`\<`number`\> #### Defined in -[index.ts:140](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L140) +[index.ts:229](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L229) ___ ### createIndex -• **createIndex**: (`indexParams`: [`IvfPQIndexConfig`](IvfPQIndexConfig.md)) => `Promise`<`any`\> +• **createIndex**: (`indexParams`: [`IvfPQIndexConfig`](IvfPQIndexConfig.md)) => `Promise`\<`any`\> #### Type declaration -▸ (`indexParams`): `Promise`<`any`\> +▸ (`indexParams`): `Promise`\<`any`\> Create an ANN index on this Table vector index. -**`See`** - -VectorIndexParams. - ##### Parameters | Name | Type | Description | @@ -98,27 +97,41 @@ VectorIndexParams. ##### Returns -`Promise`<`any`\> +`Promise`\<`any`\> + +**`See`** + +VectorIndexParams. #### Defined in -[index.ts:135](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L135) +[index.ts:224](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L224) ___ ### delete -• **delete**: (`filter`: `string`) => `Promise`<`void`\> +• **delete**: (`filter`: `string`) => `Promise`\<`void`\> #### Type declaration -▸ (`filter`): `Promise`<`void`\> +▸ (`filter`): `Promise`\<`void`\> Delete rows from this table. This can be used to delete a single row, many rows, all rows, or sometimes no rows (if your predicate matches nothing). +##### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `filter` | `string` | A filter in the same format used by a sql WHERE clause. The filter must not be empty. | + +##### Returns + +`Promise`\<`void`\> + **`Examples`** ```ts @@ -142,19 +155,55 @@ await tbl.delete(`id IN (${to_remove.join(",")})`) await tbl.countRows() // Returns 1 ``` +#### Defined in + +[index.ts:263](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L263) + +___ + +### indexStats + +• **indexStats**: (`indexUuid`: `string`) => `Promise`\<[`IndexStats`](IndexStats.md)\> + +#### Type declaration + +▸ (`indexUuid`): `Promise`\<[`IndexStats`](IndexStats.md)\> + +Get statistics about an index. + ##### Parameters -| Name | Type | Description | -| :------ | :------ | :------ | -| `filter` | `string` | A filter in the same format used by a sql WHERE clause. The filter must not be empty. | +| Name | Type | +| :------ | :------ | +| `indexUuid` | `string` | ##### Returns -`Promise`<`void`\> +`Promise`\<[`IndexStats`](IndexStats.md)\> #### Defined in -[index.ts:174](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L174) +[index.ts:306](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L306) + +___ + +### listIndices + +• **listIndices**: () => `Promise`\<[`VectorIndex`](VectorIndex.md)[]\> + +#### Type declaration + +▸ (): `Promise`\<[`VectorIndex`](VectorIndex.md)[]\> + +List the indicies on this table. + +##### Returns + +`Promise`\<[`VectorIndex`](VectorIndex.md)[]\> + +#### Defined in + +[index.ts:301](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L301) ___ @@ -164,17 +213,17 @@ ___ #### Defined in -[index.ts:106](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L106) +[index.ts:195](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L195) ___ ### overwrite -• **overwrite**: (`data`: `Record`<`string`, `unknown`\>[]) => `Promise`<`number`\> +• **overwrite**: (`data`: `Record`\<`string`, `unknown`\>[]) => `Promise`\<`number`\> #### Type declaration -▸ (`data`): `Promise`<`number`\> +▸ (`data`): `Promise`\<`number`\> Insert records into this Table, replacing its contents. @@ -182,27 +231,27 @@ Insert records into this Table, replacing its contents. | Name | Type | Description | | :------ | :------ | :------ | -| `data` | `Record`<`string`, `unknown`\>[] | Records to be inserted into the Table | +| `data` | `Record`\<`string`, `unknown`\>[] | Records to be inserted into the Table | ##### Returns -`Promise`<`number`\> +`Promise`\<`number`\> The number of rows added to the table #### Defined in -[index.ts:128](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L128) +[index.ts:217](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L217) ___ ### search -• **search**: (`query`: `T`) => [`Query`](../classes/Query.md)<`T`\> +• **search**: (`query`: `T`) => [`Query`](../classes/Query.md)\<`T`\> #### Type declaration -▸ (`query`): [`Query`](../classes/Query.md)<`T`\> +▸ (`query`): [`Query`](../classes/Query.md)\<`T`\> Creates a search query to find the nearest neighbors of the given search term @@ -214,8 +263,59 @@ Creates a search query to find the nearest neighbors of the given search term ##### Returns -[`Query`](../classes/Query.md)<`T`\> +[`Query`](../classes/Query.md)\<`T`\> #### Defined in -[index.ts:112](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L112) +[index.ts:201](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L201) + +___ + +### update + +• **update**: (`args`: [`UpdateArgs`](UpdateArgs.md) \| [`UpdateSqlArgs`](UpdateSqlArgs.md)) => `Promise`\<`void`\> + +#### Type declaration + +▸ (`args`): `Promise`\<`void`\> + +Update rows in this table. + +This can be used to update a single row, many rows, all rows, or +sometimes no rows (if your predicate matches nothing). + +##### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `args` | [`UpdateArgs`](UpdateArgs.md) \| [`UpdateSqlArgs`](UpdateSqlArgs.md) | see [UpdateArgs](UpdateArgs.md) and [UpdateSqlArgs](UpdateSqlArgs.md) for more details | + +##### Returns + +`Promise`\<`void`\> + +**`Examples`** + +```ts +const con = await lancedb.connect("./.lancedb") +const data = [ + {id: 1, vector: [3, 3], name: 'Ye'}, + {id: 2, vector: [4, 4], name: 'Mike'}, +]; +const tbl = await con.createTable("my_table", data) + +await tbl.update({ + filter: "id = 2", + updates: { vector: [2, 2], name: "Michael" }, +}) + +let results = await tbl.search([1, 1]).execute(); +// Returns [ +// {id: 2, vector: [2, 2], name: 'Michael'} +// {id: 1, vector: [3, 3], name: 'Ye'} +// ] +``` + +#### Defined in + +[index.ts:296](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L296) diff --git a/docs/src/javascript/interfaces/UpdateArgs.md b/docs/src/javascript/interfaces/UpdateArgs.md new file mode 100644 index 00000000..a1dff75c --- /dev/null +++ b/docs/src/javascript/interfaces/UpdateArgs.md @@ -0,0 +1,36 @@ +[vectordb](../README.md) / [Exports](../modules.md) / UpdateArgs + +# Interface: UpdateArgs + +## Table of contents + +### Properties + +- [values](UpdateArgs.md#values) +- [where](UpdateArgs.md#where) + +## Properties + +### values + +• **values**: `Record`\<`string`, `Literal`\> + +A key-value map of updates. The keys are the column names, and the values are the +new values to set + +#### Defined in + +[index.ts:320](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L320) + +___ + +### where + +• `Optional` **where**: `string` + +A filter in the same format used by a sql WHERE clause. The filter may be empty, +in which case all rows will be updated. + +#### Defined in + +[index.ts:314](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L314) diff --git a/docs/src/javascript/interfaces/UpdateSqlArgs.md b/docs/src/javascript/interfaces/UpdateSqlArgs.md new file mode 100644 index 00000000..62a4a58d --- /dev/null +++ b/docs/src/javascript/interfaces/UpdateSqlArgs.md @@ -0,0 +1,36 @@ +[vectordb](../README.md) / [Exports](../modules.md) / UpdateSqlArgs + +# Interface: UpdateSqlArgs + +## Table of contents + +### Properties + +- [valuesSql](UpdateSqlArgs.md#valuessql) +- [where](UpdateSqlArgs.md#where) + +## Properties + +### valuesSql + +• **valuesSql**: `Record`\<`string`, `string`\> + +A key-value map of updates. The keys are the column names, and the values are the +new values to set as SQL expressions. + +#### Defined in + +[index.ts:334](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L334) + +___ + +### where + +• `Optional` **where**: `string` + +A filter in the same format used by a sql WHERE clause. The filter may be empty, +in which case all rows will be updated. + +#### Defined in + +[index.ts:328](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L328) diff --git a/docs/src/javascript/interfaces/VectorIndex.md b/docs/src/javascript/interfaces/VectorIndex.md new file mode 100644 index 00000000..db77f7e6 --- /dev/null +++ b/docs/src/javascript/interfaces/VectorIndex.md @@ -0,0 +1,41 @@ +[vectordb](../README.md) / [Exports](../modules.md) / VectorIndex + +# Interface: VectorIndex + +## Table of contents + +### Properties + +- [columns](VectorIndex.md#columns) +- [name](VectorIndex.md#name) +- [uuid](VectorIndex.md#uuid) + +## Properties + +### columns + +• **columns**: `string`[] + +#### Defined in + +[index.ts:338](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L338) + +___ + +### name + +• **name**: `string` + +#### Defined in + +[index.ts:339](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L339) + +___ + +### uuid + +• **uuid**: `string` + +#### Defined in + +[index.ts:340](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L340) diff --git a/docs/src/javascript/interfaces/WriteOptions.md b/docs/src/javascript/interfaces/WriteOptions.md new file mode 100644 index 00000000..f5e4c614 --- /dev/null +++ b/docs/src/javascript/interfaces/WriteOptions.md @@ -0,0 +1,27 @@ +[vectordb](../README.md) / [Exports](../modules.md) / WriteOptions + +# Interface: WriteOptions + +Write options when creating a Table. + +## Implemented by + +- [`DefaultWriteOptions`](../classes/DefaultWriteOptions.md) + +## Table of contents + +### Properties + +- [writeMode](WriteOptions.md#writemode) + +## Properties + +### writeMode + +• `Optional` **writeMode**: [`WriteMode`](../enums/WriteMode.md) + +A [WriteMode](../enums/WriteMode.md) to use on this operation + +#### Defined in + +[index.ts:774](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L774) diff --git a/docs/src/javascript/modules.md b/docs/src/javascript/modules.md index ab18bf5b..5c05d9c2 100644 --- a/docs/src/javascript/modules.md +++ b/docs/src/javascript/modules.md @@ -11,6 +11,7 @@ ### Classes +- [DefaultWriteOptions](classes/DefaultWriteOptions.md) - [LocalConnection](classes/LocalConnection.md) - [LocalTable](classes/LocalTable.md) - [OpenAIEmbeddingFunction](classes/OpenAIEmbeddingFunction.md) @@ -19,11 +20,20 @@ ### Interfaces - [AwsCredentials](interfaces/AwsCredentials.md) +- [CleanupStats](interfaces/CleanupStats.md) +- [CompactionMetrics](interfaces/CompactionMetrics.md) +- [CompactionOptions](interfaces/CompactionOptions.md) - [Connection](interfaces/Connection.md) - [ConnectionOptions](interfaces/ConnectionOptions.md) +- [CreateTableOptions](interfaces/CreateTableOptions.md) - [EmbeddingFunction](interfaces/EmbeddingFunction.md) +- [IndexStats](interfaces/IndexStats.md) - [IvfPQIndexConfig](interfaces/IvfPQIndexConfig.md) - [Table](interfaces/Table.md) +- [UpdateArgs](interfaces/UpdateArgs.md) +- [UpdateSqlArgs](interfaces/UpdateSqlArgs.md) +- [VectorIndex](interfaces/VectorIndex.md) +- [WriteOptions](interfaces/WriteOptions.md) ### Type Aliases @@ -32,6 +42,7 @@ ### Functions - [connect](modules.md#connect) +- [isWriteOptions](modules.md#iswriteoptions) ## Type Aliases @@ -41,13 +52,13 @@ #### Defined in -[index.ts:431](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L431) +[index.ts:755](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L755) ## Functions ### connect -▸ **connect**(`uri`): `Promise`<[`Connection`](interfaces/Connection.md)\> +▸ **connect**(`uri`): `Promise`\<[`Connection`](interfaces/Connection.md)\> Connect to a LanceDB instance at the given URI @@ -59,24 +70,44 @@ Connect to a LanceDB instance at the given URI #### Returns -`Promise`<[`Connection`](interfaces/Connection.md)\> +`Promise`\<[`Connection`](interfaces/Connection.md)\> #### Defined in -[index.ts:47](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L47) +[index.ts:95](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L95) -▸ **connect**(`opts`): `Promise`<[`Connection`](interfaces/Connection.md)\> +▸ **connect**(`opts`): `Promise`\<[`Connection`](interfaces/Connection.md)\> #### Parameters | Name | Type | | :------ | :------ | -| `opts` | `Partial`<[`ConnectionOptions`](interfaces/ConnectionOptions.md)\> | +| `opts` | `Partial`\<[`ConnectionOptions`](interfaces/ConnectionOptions.md)\> | #### Returns -`Promise`<[`Connection`](interfaces/Connection.md)\> +`Promise`\<[`Connection`](interfaces/Connection.md)\> #### Defined in -[index.ts:48](https://github.com/lancedb/lancedb/blob/b1eeb90/node/src/index.ts#L48) +[index.ts:96](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L96) + +___ + +### isWriteOptions + +▸ **isWriteOptions**(`value`): value is WriteOptions + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `value` | `any` | + +#### Returns + +value is WriteOptions + +#### Defined in + +[index.ts:781](https://github.com/lancedb/lancedb/blob/7856a94/node/src/index.ts#L781) diff --git a/node/README.md b/node/README.md index f11b1aee..4bd3f618 100644 --- a/node/README.md +++ b/node/README.md @@ -9,8 +9,13 @@ npm install vectordb ``` This will download the appropriate native library for your platform. We currently -support x86_64 Linux, aarch64 Linux, Intel MacOS, and ARM (M1/M2) MacOS. We do not -yet support musl-based Linux (such as Alpine Linux). +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