Class: Collection
Properties
id
• id: string
metadata
• metadata: undefined | CollectionMetadata
name
• name: string
Methods
add
▸ add(params): Promise<AddResponse>
Add items to the collection
Example
const response = await collection.add({
  ids: ["id1", "id2"],
  embeddings: [
    [1, 2, 3],
    [4, 5, 6],
  ],
  metadatas: [{ key: "value" }, { key: "value" }],
  documents: ["document1", "document2"],
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.documents? | string|Documents | Optional documents of the items to add. | 
| params.embeddings? | Embedding|Embeddings | Optional embeddings of the items to add. | 
| params.ids | string|IDs | IDs of the items to add. | 
| params.metadatas? | Metadata|Metadatas | Optional metadata of the items to add. | 
Returns
Promise<AddResponse>
- The response from the API. True if successful.
count
▸ count(): Promise<number>
Count the number of items in the collection
Example
const response = await collection.count();
Returns
Promise<number>
- The response from the API.
delete
▸ delete(params?): Promise<string[]>
Deletes items from the collection.
Throws
If there is an issue deleting items from the collection.
Example
const results = await collection.delete({
  ids: "some_id",
  where: {"$and": ["name": {"$eq": "John Doe"}, "age": {"$gte": 30}]},
  whereDocument: {"$contains":"search_string"}
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for deleting items from the collection. | 
| params.ids? | string|IDs | Optional ID or array of IDs of items to delete. | 
| params.where? | Where | Optional query condition to filter items to delete based on metadata values. | 
| params.whereDocument? | WhereDocument | Optional query condition to filter items to delete based on document content. | 
Returns
Promise<string[]>
A promise that resolves to the IDs of the deleted items.
get
▸ get(params?): Promise<GetResponse>
Get items from the collection
Example
const response = await collection.get({
  ids: ["id1", "id2"],
  where: { key: "value" },
  limit: 10,
  offset: 0,
  include: ["embeddings", "metadatas", "documents"],
  whereDocument: { $contains: "value" },
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.ids? | string|IDs | Optional IDs of the items to get. | 
| params.include? | IncludeEnum[] | Optional list of items to include in the response. | 
| params.limit? | number | Optional limit on the number of items to get. | 
| params.offset? | number | Optional offset on the items to get. | 
| params.where? | Where | Optional where clause to filter items by. | 
| params.whereDocument? | WhereDocument | Optional where clause to filter items by. | 
Returns
Promise<GetResponse>
- The response from the server.
modify
▸ modify(params?): Promise<void>
Modify the collection name or metadata
Example
const response = await collection.modify({
  name: "new name",
  metadata: { key: "value" },
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.metadata? | CollectionMetadata | Optional new metadata for the collection. | 
| params.name? | string | Optional new name for the collection. | 
Returns
Promise<void>
- The response from the API.
peek
▸ peek(params?): Promise<GetResponse>
Peek inside the collection
Throws
If there is an issue executing the query.
Example
const results = await collection.peek({
  limit: 10,
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.limit? | number | Optional number of results to return (default is 10). | 
Returns
Promise<GetResponse>
A promise that resolves to the query results.
query
▸ query(params): Promise<QueryResponse>
Performs a query on the collection using the specified parameters.
Throws
If there is an issue executing the query.
Example
// Query the collection using embeddings
const results = await collection.query({
  queryEmbeddings: [[0.1, 0.2, ...], ...],
  nResults: 10,
  where: {"$and": ["name": {"$eq": "John Doe"}, "age": {"$gte": 30}]},
  include: ["metadata", "document"]
});
Example
// Query the collection using query text
const results = await collection.query({
  queryTexts: "some text",
  nResults: 10,
  where: { $and: [("name": { $eq: "John Doe" }), ("age": { $gte: 30 })] },
  include: ["metadata", "document"],
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.include? | IncludeEnum[] | Optional array of fields to include in the result, such as "metadata" and "document". | 
| params.nResults? | number | Optional number of results to return (default is 10). | 
| params.queryEmbeddings? | Embedding|Embeddings | Optional query embeddings to use for the search. | 
| params.queryTexts? | string|string[] | Optional query text(s) to search for in the collection. | 
| params.where? | Where | Optional query condition to filter results based on metadata values. | 
| params.whereDocument? | WhereDocument | Optional query condition to filter results based on document content. | 
Returns
Promise<QueryResponse>
A promise that resolves to the query results.
update
▸ update(params): Promise<boolean>
Update the embeddings, documents, and/or metadatas of existing items
Example
const response = await collection.update({
  ids: ["id1", "id2"],
  embeddings: [
    [1, 2, 3],
    [4, 5, 6],
  ],
  metadatas: [{ key: "value" }, { key: "value" }],
  documents: ["new document 1", "new document 2"],
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.documents? | string|Documents | Optional documents to update. | 
| params.embeddings? | Embedding|Embeddings | Optional embeddings to update. | 
| params.ids | string|IDs | The IDs of the items to update. | 
| params.metadatas? | Metadata|Metadatas | Optional metadatas to update. | 
Returns
Promise<boolean>
- The API Response. True if successful. Else, error.
upsert
▸ upsert(params): Promise<boolean>
Upsert items to the collection
Example
const response = await collection.upsert({
  ids: ["id1", "id2"],
  embeddings: [
    [1, 2, 3],
    [4, 5, 6],
  ],
  metadatas: [{ key: "value" }, { key: "value" }],
  documents: ["document1", "document2"],
});
Parameters
| Name | Type | Description | 
|---|---|---|
| params | Object | The parameters for the query. | 
| params.documents? | string|Documents | Optional documents of the items to add. | 
| params.embeddings? | Embedding|Embeddings | Optional embeddings of the items to add. | 
| params.ids | string|IDs | IDs of the items to add. | 
| params.metadatas? | Metadata|Metadatas | Optional metadata of the items to add. | 
Returns
Promise<boolean>
- The response from the API. True if successful.