From 8af5f19cc12bafabfede3aff343a134a6b4e6496 Mon Sep 17 00:00:00 2001 From: Jai Date: Fri, 2 Jun 2023 15:24:16 -0700 Subject: [PATCH] js docs, modal example, doc notebook integration, update doc styles (#131) --- docs/mkdocs.yml | 41 ++- docs/src/ann_indexes.md | 105 ++++-- .../assets/lancedb_embedded_explanation.png | Bin 0 -> 194702 bytes .../assets/lancedb_local_data_explanation.png | Bin 0 -> 103874 bytes docs/src/assets/logo.png | Bin 0 -> 6864 bytes docs/src/basic.md | 152 ++++++--- docs/src/embedding.md | 121 ++++--- docs/src/examples/modal.py | 90 ++++++ docs/src/index.md | 49 ++- docs/src/javascript/.nojekyll | 1 + docs/src/javascript/README.md | 51 +++ docs/src/javascript/classes/Connection.md | 211 ++++++++++++ .../classes/OpenAIEmbeddingFunction.md | 105 ++++++ docs/src/javascript/classes/Query.md | 299 ++++++++++++++++++ docs/src/javascript/classes/Table.md | 215 +++++++++++++ docs/src/javascript/enums/MetricType.md | 36 +++ docs/src/javascript/enums/WriteMode.md | 30 ++ .../interfaces/EmbeddingFunction.md | 60 ++++ docs/src/javascript/modules.md | 61 ++++ .../src/notebooks}/code_qa_bot.ipynb | 0 .../src/notebooks}/diffusiondb/datagen.py | 0 .../notebooks}/diffusiondb/requirements.txt | 0 .../src/notebooks}/multimodal_search.ipynb | 0 .../youtube_transcript_search.ipynb | 0 docs/src/{ => python}/python.md | 0 docs/src/styles/global.css | 6 + node/README.md | 6 + node/package-lock.json | 280 ++++++++++++++++ node/package.json | 4 +- 29 files changed, 1780 insertions(+), 143 deletions(-) create mode 100644 docs/src/assets/lancedb_embedded_explanation.png create mode 100644 docs/src/assets/lancedb_local_data_explanation.png create mode 100644 docs/src/assets/logo.png create mode 100644 docs/src/examples/modal.py create mode 100644 docs/src/javascript/.nojekyll create mode 100644 docs/src/javascript/README.md create mode 100644 docs/src/javascript/classes/Connection.md create mode 100644 docs/src/javascript/classes/OpenAIEmbeddingFunction.md create mode 100644 docs/src/javascript/classes/Query.md create mode 100644 docs/src/javascript/classes/Table.md create mode 100644 docs/src/javascript/enums/MetricType.md create mode 100644 docs/src/javascript/enums/WriteMode.md create mode 100644 docs/src/javascript/interfaces/EmbeddingFunction.md create mode 100644 docs/src/javascript/modules.md rename {notebooks => docs/src/notebooks}/code_qa_bot.ipynb (100%) rename {notebooks => docs/src/notebooks}/diffusiondb/datagen.py (100%) rename {notebooks => docs/src/notebooks}/diffusiondb/requirements.txt (100%) rename {notebooks => docs/src/notebooks}/multimodal_search.ipynb (100%) rename {notebooks => docs/src/notebooks}/youtube_transcript_search.ipynb (100%) rename docs/src/{ => python}/python.md (100%) create mode 100644 docs/src/styles/global.css diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 39763513..bfa62f7a 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -1,10 +1,16 @@ -site_name: LanceDB Documentation +site_name: LanceDB Docs +repo_url: https://github.com/lancedb/lancedb +repo_name: lancedb/lancedb docs_dir: src theme: name: "material" + logo: assets/logo.png features: - content.code.copy + - content.tabs.link + icon: + repo: fontawesome/brands/github plugins: - search @@ -14,20 +20,33 @@ plugins: paths: [../python] - mkdocs-jupyter -nav: -- Home: index.md -- Basics: basic.md -- Embeddings: embedding.md -- Indexing: ann_indexes.md -- Full-text search: fts.md -- Integrations: integrations.md -- Python API: python.md - markdown_extensions: +- admonition +- pymdownx.superfences +- pymdownx.details - pymdownx.highlight: anchor_linenums: true line_spans: __span pygments_lang_class: true - pymdownx.inlinehilite - pymdownx.snippets -- pymdownx.superfences \ No newline at end of file +- pymdownx.superfences +- pymdownx.tabbed: + alternate_style: true + +nav: +- Home: index.md +- Basics: basic.md +- Embeddings: embedding.md +- Indexing: ann_indexes.md +- Python full-text search: fts.md +- Python integrations: integrations.md +- Python examples: + - YouTube Transcript Search using OpenAI: notebooks/youtube_transcript_search.ipynb + - Documentation QA Bot using LangChain: notebooks/code_qa_bot.ipynb +- API references: + - Python API: python/python.md + - Javascript API: javascript/modules.md + +extra_css: + - styles/global.css \ No newline at end of file diff --git a/docs/src/ann_indexes.md b/docs/src/ann_indexes.md index 205bfa50..050247e5 100644 --- a/docs/src/ann_indexes.md +++ b/docs/src/ann_indexes.md @@ -12,24 +12,38 @@ In the future we will look to automatically create and configure the ANN index. ## Creating an ANN Index -Creating indexes is done via the [create_index](https://lancedb.github.io/lancedb/python/#lancedb.table.LanceTable.create_index) method. +=== "Python" + Creating indexes is done via the [create_index](https://lancedb.github.io/lancedb/python/#lancedb.table.LanceTable.create_index) method. -```python -import lancedb -import numpy as np -uri = "~/.lancedb" -db = lancedb.connect(uri) + ```python + import lancedb + import numpy as np + uri = "~/.lancedb" + db = lancedb.connect(uri) -# Create 10,000 sample vectors -data = [{"vector": row, "item": f"item {i}"} - for i, row in enumerate(np.random.random((10_000, 768)).astype('float32'))] + # Create 10,000 sample vectors + data = [{"vector": row, "item": f"item {i}"} + for i, row in enumerate(np.random.random((10_000, 768)).astype('float32'))] -# Add the vectors to a table -tbl = db.create_table("my_vectors", data=data) + # Add the vectors to a table + tbl = db.create_table("my_vectors", data=data) -# Create and train the index - you need to have enough data in the table for an effective training step -tbl.create_index(num_partitions=256, num_sub_vectors=96) -``` + # Create and train the index - you need to have enough data in the table for an effective training step + tbl.create_index(num_partitions=256, num_sub_vectors=96) + ``` + +=== "Javascript" + ```javascript + const vectordb = require('vectordb') + const db = await vectordb.connect('data/sample-lancedb') + + let data = [] + for (let i = 0; i < 10_000; i++) { + data.push({vector: Array(1536).fill(i), id: `${i}`, content: "", longId: `${i}`},) + } + const table = await db.createTable('vectors', data) + await table.create_index({ type: 'ivf_pq', column: 'vector', num_partitions: 256, num_sub_vectors: 96 }) + ``` Since `create_index` has a training step, it can take a few minutes to finish for large tables. You can control the index creation by providing the following parameters: @@ -57,18 +71,28 @@ There are a couple of parameters that can be used to fine-tune the search: e.g., for 1M vectors divided into 256 partitions, if you're looking for top 20, then refine_factor=200 reranks the whole partition.
Note: refine_factor is only applicable if an ANN index is present. If specified on a table without an ANN index, it is ignored. - -```python -tbl.search(np.random.random((768))) \ - .limit(2) \ - .nprobes(20) \ - .refine_factor(10) \ - .to_df() +=== "Python" + ```python + tbl.search(np.random.random((768))) \ + .limit(2) \ + .nprobes(20) \ + .refine_factor(10) \ + .to_df() vector item score -0 [0.44949695, 0.8444449, 0.06281311, 0.23338133... item 1141 103.575333 -1 [0.48587373, 0.269207, 0.15095535, 0.65531915,... item 3953 108.393867 -``` + 0 [0.44949695, 0.8444449, 0.06281311, 0.23338133... item 1141 103.575333 + 1 [0.48587373, 0.269207, 0.15095535, 0.65531915,... item 3953 108.393867 + ``` + +=== "Javascript" + ```javascript + const results = await table + .search(Array(1536).fill(1.2)) + .limit(2) + .nprobes(20) + .refineFactor(10) + .execute() + ``` The search will return the data requested in addition to the score of each item. @@ -78,18 +102,31 @@ The search will return the data requested in addition to the score of each item. You can further filter the elements returned by a search using a where clause. -```python -tbl.search(np.random.random((768))).where("item != 'item 1141'").to_df() -``` +=== "Python" + ```python + tbl.search(np.random.random((768))).where("item != 'item 1141'").to_df() + ``` + +=== "Javascript" + ```javascript + const results = await table + .search(Array(1536).fill(1.2)) + .where("item != 'item 1141'") + .execute() + ``` ### Projections (select clause) You can select the columns returned by the query using a select clause. -```python -tbl.search(np.random.random((768))).select(["vector"]).to_df() - vector score -0 [0.30928212, 0.022668175, 0.1756372, 0.4911822... 93.971092 -1 [0.2525465, 0.01723831, 0.261568, 0.002007689,... 95.173485 -... -``` +=== "Python" + ```python + tbl.search(np.random.random((768))).select(["vector"]).to_df() + vector score + 0 [0.30928212, 0.022668175, 0.1756372, 0.4911822... 93.971092 + 1 [0.2525465, 0.01723831, 0.261568, 0.002007689,... 95.173485 + ... + ``` + +=== "Javascript" + Projections are not currently supported in the Javascript SDK. diff --git a/docs/src/assets/lancedb_embedded_explanation.png b/docs/src/assets/lancedb_embedded_explanation.png new file mode 100644 index 0000000000000000000000000000000000000000..cb59c662f2d75e26131c210f9d386c1f326ce7e1 GIT binary patch literal 194702 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

7=T@Uc26U#}UCUr4a5 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 literal 0 HcmV?d00001 diff --git a/docs/src/assets/lancedb_local_data_explanation.png b/docs/src/assets/lancedb_local_data_explanation.png new file mode 100644 index 0000000000000000000000000000000000000000..9b7cc7cd40dae7d6e8966b12a9934f1d3d7dda67 GIT binary patch literal 103874 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 `{4s&zjN^|5ai|d^ePhP7m*;Qbm#X8iz-bz^8 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 z�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

dDD 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 literal 0 HcmV?d00001 diff --git a/docs/src/assets/logo.png b/docs/src/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..5ecddb2337784d47d29604768f1428c098dfd423 GIT binary patch literal 6864 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 HJBI%kA>CP8 literal 0 HcmV?d00001 diff --git a/docs/src/basic.md b/docs/src/basic.md index 1151dd1c..21638fb8 100644 --- a/docs/src/basic.md +++ b/docs/src/basic.md @@ -1,74 +1,142 @@ # Basic LanceDB Functionality +We'll cover the basics of using LanceDB on your local machine in this section. + +??? info "LanceDB runs embedded on your backend application, so there is no need to run a separate server." + + + +## Installation + +=== "Python" + ```shell + pip install lancedb + ``` + +=== "Javascript" + ```shell + npm install vectordb + ``` + ## How to connect to a database -In local mode, LanceDB stores data in a directory on your local machine. To connect to a local database, you can use the following code: -```python -import lancedb -uri = "~/.lancedb" -db = lancedb.connect(uri) -``` +=== "Python" + ```python + import lancedb + uri = "~/.lancedb" + db = lancedb.connect(uri) + ``` -LanceDB will create the directory if it doesn't exist (including parent directories). + LanceDB will create the directory if it doesn't exist (including parent directories). -If you need a reminder of the uri, use the `db.uri` property. + If you need a reminder of the uri, use the `db.uri` property. + +=== "Javascript" + ```javascript + const lancedb = require("vectordb"); + + const uri = "~./lancedb"; + const db = await lancedb.connect(uri); + ``` + + LanceDB will create the directory if it doesn't exist (including parent directories). + + If you need a reminder of the uri, you can call `db.uri()`. ## How to create a table -To create a table, you can use the following code: -```python -tbl = db.create_table("my_table", - data=[{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, - {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) -``` +=== "Python" + ```python + tbl = db.create_table("my_table", + data=[{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, + {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) + ``` -Under the hood, LanceDB is converting the input data into an Apache Arrow table -and persisting it to disk in [Lance format](github.com/eto-ai/lance). + If the table already exists, LanceDB will raise an error by default. + If you want to overwrite the table, you can pass in `mode="overwrite"` + to the `create_table` method. -If the table already exists, LanceDB will raise an error by default. -If you want to overwrite the table, you can pass in `mode="overwrite"` -to the `create_table` method. + You can also pass in a pandas DataFrame directly: + ```python + import pandas as pd + df = pd.DataFrame([{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, + {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) + tbl = db.create_table("table_from_df", data=df) + ``` -You can also pass in a pandas DataFrame directly: -```python -import pandas as pd -df = pd.DataFrame([{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, - {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) -tbl = db.create_table("table_from_df", data=df) -``` +=== "Javascript" + ```javascript + const tb = await db.createTable("my_table", + data=[{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, + {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) + ``` + +!!! warning + + If the table already exists, LanceDB will raise an error by default. + If you want to overwrite the table, you can pass in `mode="overwrite"` + to the `createTable` function. + +??? info "Under the hood, LanceDB is converting the input data into an Apache Arrow table and persisting it to disk in [Lance format](https://www.github.com/lancedb/lance)." ## How to open an existing table Once created, you can open a table using the following code: -```python -tbl = db.open_table("my_table") -``` -If you forget the name of your table, you can always get a listing of all table names: +=== "Python" + ```python + tbl = db.open_table("my_table") + ``` -```python -db.table_names() -``` + If you forget the name of your table, you can always get a listing of all table names: + + ```python + print(db.table_names()) + ``` + +=== "Javascript" + ```javascript + const tbl = await db.openTable("my_table"); + ``` + + If you forget the name of your table, you can always get a listing of all table names: + + ```javascript + console.log(db.tableNames()); + ``` ## How to add data to a table After a table has been created, you can always add more data to it using -```python -df = pd.DataFrame([{"vector": [1.3, 1.4], "item": "fizz", "price": 100.0}, - {"vector": [9.5, 56.2], "item": "buzz", "price": 200.0}]) -tbl.add(df) -``` +=== "Python" + ```python + df = pd.DataFrame([{"vector": [1.3, 1.4], "item": "fizz", "price": 100.0}, + {"vector": [9.5, 56.2], "item": "buzz", "price": 200.0}]) + tbl.add(df) + ``` + +=== "Javascript" + ```javascript + await tbl.add([vector: [1.3, 1.4], item: "fizz", price: 100.0}, + {vector: [9.5, 56.2], item: "buzz", price: 200.0}]) + ``` ## How to search for (approximate) nearest neighbors Once you've embedded the query, you can find its nearest neighbors using the following code: -```python -tbl.search([100, 100]).limit(2).to_df() -``` +=== "Python" + ```python + tbl.search([100, 100]).limit(2).to_df() + ``` -This returns a pandas DataFrame with the results. + This returns a pandas DataFrame with the results. + +=== "Javascript" + ```javascript + const query = await tbl.search([100, 100]).limit(2).execute(); + ``` ## What's next diff --git a/docs/src/embedding.md b/docs/src/embedding.md index 41096514..7ebadf8f 100644 --- a/docs/src/embedding.md +++ b/docs/src/embedding.md @@ -25,55 +25,88 @@ def embed_func(batch): return [model.encode(sentence) for sentence in batch] ``` +Please note that currently HuggingFace is only supported in the Python SDK. + ### OpenAI example You can also use an external API like OpenAI to generate embeddings -```python -import openai -import os +=== "Python" + ```python + import openai + import os -# Configuring the environment variable OPENAI_API_KEY -if "OPENAI_API_KEY" not in os.environ: - # OR set the key here as a variable - openai.api_key = "sk-..." + # Configuring the environment variable OPENAI_API_KEY + if "OPENAI_API_KEY" not in os.environ: + # OR set the key here as a variable + openai.api_key = "sk-..." -# verify that the API key is working -assert len(openai.Model.list()["data"]) > 0 + # verify that the API key is working + assert len(openai.Model.list()["data"]) > 0 -def embed_func(c): - rs = openai.Embedding.create(input=c, engine="text-embedding-ada-002") - return [record["embedding"] for record in rs["data"]] -``` + def embed_func(c): + rs = openai.Embedding.create(input=c, engine="text-embedding-ada-002") + return [record["embedding"] for record in rs["data"]] + ``` + +=== "Javascript" + ```javascript + const lancedb = require("vectordb"); + + // You need to provide an OpenAI API key + const apiKey = "sk-..." + // The embedding function will create embeddings for the 'text' column + const embedding = new lancedb.OpenAIEmbeddingFunction('text', apiKey) + ``` ## Applying an embedding function -Using an embedding function, you can apply it to raw data -to generate embeddings for each row. +=== "Python" + Using an embedding function, you can apply it to raw data + to generate embeddings for each row. -Say if you have a pandas DataFrame with a `text` column that you want to be embedded, -you can use the [with_embeddings](https://lancedb.github.io/lancedb/python/#lancedb.embeddings.with_embeddings) -function to generate embeddings and add create a combined pyarrow table: + Say if you have a pandas DataFrame with a `text` column that you want to be embedded, + you can use the [with_embeddings](https://lancedb.github.io/lancedb/python/#lancedb.embeddings.with_embeddings) + function to generate embeddings and add create a combined pyarrow table: -```python -import pandas as pd -from lancedb.embeddings import with_embeddings -df = pd.DataFrame([{"text": "pepperoni"}, - {"text": "pineapple"}]) -data = with_embeddings(embed_func, df) + ```python + import pandas as pd + from lancedb.embeddings import with_embeddings -# The output is used to create / append to a table -# db.create_table("my_table", data=data) -``` + df = pd.DataFrame([{"text": "pepperoni"}, + {"text": "pineapple"}]) + data = with_embeddings(embed_func, df) -If your data is in a different column, you can specify the `column` kwarg to `with_embeddings`. + # The output is used to create / append to a table + # db.create_table("my_table", data=data) + ``` -By default, LanceDB calls the function with batches of 1000 rows. This can be configured -using the `batch_size` parameter to `with_embeddings`. + If your data is in a different column, you can specify the `column` kwarg to `with_embeddings`. + + By default, LanceDB calls the function with batches of 1000 rows. This can be configured + using the `batch_size` parameter to `with_embeddings`. + + LanceDB automatically wraps the function with retry and rate-limit logic to ensure the OpenAI + API call is reliable. + +=== "Javascript" + Using an embedding function, you can apply it to raw data + to generate embeddings for each row. + + You can just pass the embedding function created previously and LanceDB will automatically generate + embededings for your data. + + ```javascript + const db = await lancedb.connect("/tmp/lancedb"); + const data = [ + { text: 'pepperoni' }, + { text: 'pineapple' } + ] + + const table = await db.createTable('vectors', data, embedding) + ``` -LanceDB automatically wraps the function with retry and rate-limit logic to ensure the OpenAI -API call is reliable. ## Searching with an embedding function @@ -81,13 +114,25 @@ At inference time, you also need the same embedding function to embed your query It's important that you use the same model / function otherwise the embedding vectors don't belong in the same latent space and your results will be nonsensical. -```python -query = "What's the best pizza topping?" -query_vector = embed_func([query])[0] -tbl.search(query_vector).limit(10).to_df() -``` +=== "Python" + ```python + query = "What's the best pizza topping?" + query_vector = embed_func([query])[0] + tbl.search(query_vector).limit(10).to_df() + ``` + + The above snippet returns a pandas DataFrame with the 10 closest vectors to the query. + +=== "Javascript" + ```javascript + const results = await table + .search('What's the best pizza topping?') + .limit(10) + .execute() + ``` + + The above snippet returns an array of records with the 10 closest vectors to the query. -The above snippet returns a pandas DataFrame with the 10 closest vectors to the query. ## Roadmap diff --git a/docs/src/examples/modal.py b/docs/src/examples/modal.py new file mode 100644 index 00000000..07195639 --- /dev/null +++ b/docs/src/examples/modal.py @@ -0,0 +1,90 @@ +import sys +from modal import Secret, Stub, Image +import lancedb +import re +import pickle +from pathlib import Path + +from langchain.document_loaders import UnstructuredHTMLLoader +from langchain.embeddings import OpenAIEmbeddings +from langchain.text_splitter import RecursiveCharacterTextSplitter +from langchain.vectorstores import LanceDB +from langchain.llms import OpenAI +from langchain.chains import RetrievalQA + +lancedb_image = Image.debian_slim().pip_install("lancedb", "langchain", "openai", "tiktoken") + +stub = Stub( + name="example-langchain-lancedb", + image=lancedb_image, + secrets=[Secret.from_name("my-openai-secret")], +) + +docsearch = None +docs_path = Path("docs.pkl") +db_path = Path("lancedb") +doc_cache = [] + +def get_document_title(document): + m = str(document.metadata["source"]) + title = re.findall("pandas.documentation(.*).html", m) + if title[0] is not None: + return(title[0]) + return '' + +def store_docs(): + docs = [] + + if not docs_path.exists(): + for p in Path("./pandas.documentation").rglob("*.html"): + if p.is_dir(): + continue + loader = UnstructuredHTMLLoader(p) + raw_document = loader.load() + + m = {} + m["title"] = get_document_title(raw_document[0]) + m["version"] = "2.0rc0" + raw_document[0].metadata = raw_document[0].metadata | m + raw_document[0].metadata["source"] = str(raw_document[0].metadata["source"]) + docs = docs + raw_document + + with docs_path.open("wb") as fh: + pickle.dump(docs, fh) + else: + with docs_path.open("rb") as fh: + docs = pickle.load(fh) + + doc_cache = docs + +def qanda_langchain(query): + store_docs() + + text_splitter = RecursiveCharacterTextSplitter( + chunk_size=1000, + chunk_overlap=200, + ) + documents = text_splitter.split_documents(doc_cache) + embeddings = OpenAIEmbeddings() + + db = lancedb.connect(db_path) + table = db.create_table("pandas_docs", data=[ + {"vector": embeddings.embed_query("Hello World")} + ], mode="overwrite") + docsearch = LanceDB.from_documents(documents, embeddings, connection=table) + qa = RetrievalQA.from_chain_type(llm=OpenAI(), chain_type="stuff", retriever=docsearch.as_retriever()) + return qa.run(query) + +@stub.function() +def cli(query: str, show_sources: bool = False): + answer = qanda_langchain(query) + # Terminal codes for pretty-printing. + bold, end = "\033[1m", "\033[0m" + + print(f"🦜 {bold}ANSWER:{end}") + print(answer) + if show_sources: + print(f"🔗 {bold}SOURCES:{end}") + for text in sources: + print(text) + print("----") diff --git a/docs/src/index.md b/docs/src/index.md index 515ea78d..7d720e38 100644 --- a/docs/src/index.md +++ b/docs/src/index.md @@ -1,6 +1,6 @@ # Welcome to LanceDB's Documentation -LanceDB is an open-source database for vector-search built with persistent storage, which greatly simplifies retrivial, filtering and management of embeddings. +LanceDB is an open-source database for vector-search built with persistent storage, which greatly simplifies retrevial, filtering and management of embeddings. The key features of LanceDB include: @@ -8,37 +8,52 @@ The key features of LanceDB include: * Store, query and filter vectors, metadata and multi-modal data (text, images, videos, point clouds, and more). -* Native Python and Javascript/Typescript support (coming soon). +* Native Python and Javascript/Typescript support. * Zero-copy, automatic versioning, manage versions of your data without needing extra infrastructure. * Ecosystem integrations with [LangChain 🦜️🔗](https://python.langchain.com/en/latest/modules/indexes/vectorstores/examples/lanecdb.html), [LlamaIndex 🦙](https://gpt-index.readthedocs.io/en/latest/examples/vector_stores/LanceDBIndexDemo.html), Apache-Arrow, Pandas, Polars, DuckDB and more on the way. -LanceDB's core is written in Rust 🦀 and is built using Lance, an open-source columnar format designed for performant ML workloads. +LanceDB's core is written in Rust 🦀 and is built using Lance, an open-source columnar format designed for performant ML workloads. +## Quick Start -## Installation +=== "Python" + ```shell + pip install lancedb + ``` -```shell -pip install lancedb -``` + ```python + import lancedb -## Quickstart + uri = "/tmp/lancedb" + db = lancedb.connect(uri) + table = db.create_table("my_table", + data=[{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, + {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) + result = table.search([100, 100]).limit(2).to_df() + ``` -```python -import lancedb +=== "Javascript" + ```shell + npm install vectordb + ``` -db = lancedb.connect(".") -table = db.create_table("my_table", - data=[{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, - {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) -result = table.search([100, 100]).limit(2).to_df() -``` + ```javascript + const lancedb = require("vectordb"); + + const uri = "/tmp/lancedb"; + const db = await lancedb.connect(uri); + const table = await db.createTable("my_table", + [{ id: 1, vector: [3.1, 4.1], item: "foo", price: 10.0 }, + { id: 2, vector: [5.9, 26.5], item: "bar", price: 20.0 }]) + const results = await table.search([100, 100]).limit(2).execute(); + ``` ## Complete Demos We will be adding completed demo apps built using LanceDB. -- [YouTube Transcript Search](../../notebooks/youtube_transcript_search.ipynb) +- [YouTube Transcript Search](notebooks/youtube_transcript_search.ipynb) ## Documentation Quick Links diff --git a/docs/src/javascript/.nojekyll b/docs/src/javascript/.nojekyll new file mode 100644 index 00000000..e2ac6616 --- /dev/null +++ b/docs/src/javascript/.nojekyll @@ -0,0 +1 @@ +TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. \ No newline at end of file diff --git a/docs/src/javascript/README.md b/docs/src/javascript/README.md new file mode 100644 index 00000000..4f9cd732 --- /dev/null +++ b/docs/src/javascript/README.md @@ -0,0 +1,51 @@ +vectordb / [Exports](modules.md) + +# LanceDB + +A JavaScript / Node.js library for [LanceDB](https://github.com/lancedb/lancedb). + +## Installation + +```bash +npm install vectordb +``` + +## Usage + +### Basic Example + +```javascript +const lancedb = require('vectordb'); +const db = lancedb.connect(''); +const table = await db.openTable('my_table'); +const query = await table.search([0.1, 0.3]).setLimit(20).execute(); +console.log(results); +``` + +The [examples](./examples) folder contains complete examples. + +## Development + +The LanceDB javascript is built with npm: + +```bash +npm run tsc +``` + +Run the tests with + +```bash +npm test +``` + +To run the linter and have it automatically fix all errors + +```bash +npm run lint -- --fix +``` + +To build documentation + +```bash +npx typedoc --plugin typedoc-plugin-markdown --out ../docs/src/javascript src/index.ts +``` diff --git a/docs/src/javascript/classes/Connection.md b/docs/src/javascript/classes/Connection.md new file mode 100644 index 00000000..092e94ab --- /dev/null +++ b/docs/src/javascript/classes/Connection.md @@ -0,0 +1,211 @@ +[vectordb](../README.md) / [Exports](../modules.md) / Connection + +# Class: Connection + +A connection to a LanceDB database. + +## Table of contents + +### Constructors + +- [constructor](Connection.md#constructor) + +### Properties + +- [\_db](Connection.md#_db) +- [\_uri](Connection.md#_uri) + +### Accessors + +- [uri](Connection.md#uri) + +### Methods + +- [createTable](Connection.md#createtable) +- [createTableArrow](Connection.md#createtablearrow) +- [openTable](Connection.md#opentable) +- [tableNames](Connection.md#tablenames) + +## Constructors + +### constructor + +• **new Connection**(`db`, `uri`) + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `db` | `any` | +| `uri` | `string` | + +#### Defined in + +[index.ts:46](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L46) + +## Properties + +### \_db + +• `Private` `Readonly` **\_db**: `any` + +#### Defined in + +[index.ts:44](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L44) + +___ + +### \_uri + +• `Private` `Readonly` **\_uri**: `string` + +#### Defined in + +[index.ts:43](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L43) + +## Accessors + +### uri + +• `get` **uri**(): `string` + +#### Returns + +`string` + +#### Defined in + +[index.ts:51](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L51) + +## Methods + +### createTable + +▸ **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:91](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L91) + +▸ **createTable**<`T`\>(`name`, `data`, `embeddings`): `Promise`<[`Table`](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 | +| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | An embedding function to use on this Table | + +#### Returns + +`Promise`<[`Table`](Table.md)<`T`\>\> + +#### Defined in + +[index.ts:99](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L99) + +___ + +### createTableArrow + +▸ **createTableArrow**(`name`, `table`): `Promise`<[`Table`](Table.md)<`number`[]\>\> + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `name` | `string` | +| `table` | `Table`<`any`\> | + +#### Returns + +`Promise`<[`Table`](Table.md)<`number`[]\>\> + +#### Defined in + +[index.ts:109](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L109) + +___ + +### openTable + +▸ **openTable**(`name`): `Promise`<[`Table`](Table.md)<`number`[]\>\> + +Open a table in the database. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `name` | `string` | The name of the table. | + +#### Returns + +`Promise`<[`Table`](Table.md)<`number`[]\>\> + +#### Defined in + +[index.ts:67](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L67) + +▸ **openTable**<`T`\>(`name`, `embeddings`): `Promise`<[`Table`](Table.md)<`T`\>\> + +Open a table in the database. + +#### Type parameters + +| Name | +| :------ | +| `T` | + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `name` | `string` | The name of the table. | +| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | An embedding function to use on this Table | + +#### Returns + +`Promise`<[`Table`](Table.md)<`T`\>\> + +#### Defined in + +[index.ts:74](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L74) + +___ + +### tableNames + +▸ **tableNames**(): `Promise`<`string`[]\> + +Get the names of all tables in the database. + +#### Returns + +`Promise`<`string`[]\> + +#### Defined in + +[index.ts:58](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L58) diff --git a/docs/src/javascript/classes/OpenAIEmbeddingFunction.md b/docs/src/javascript/classes/OpenAIEmbeddingFunction.md new file mode 100644 index 00000000..d6087ed3 --- /dev/null +++ b/docs/src/javascript/classes/OpenAIEmbeddingFunction.md @@ -0,0 +1,105 @@ +[vectordb](../README.md) / [Exports](../modules.md) / OpenAIEmbeddingFunction + +# Class: OpenAIEmbeddingFunction + +An embedding function that automatically creates vector representation for a given column. + +## Implements + +- [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`string`\> + +## Table of contents + +### Constructors + +- [constructor](OpenAIEmbeddingFunction.md#constructor) + +### Properties + +- [\_modelName](OpenAIEmbeddingFunction.md#_modelname) +- [\_openai](OpenAIEmbeddingFunction.md#_openai) +- [sourceColumn](OpenAIEmbeddingFunction.md#sourcecolumn) + +### Methods + +- [embed](OpenAIEmbeddingFunction.md#embed) + +## Constructors + +### constructor + +• **new OpenAIEmbeddingFunction**(`sourceColumn`, `openAIKey`, `modelName?`) + +#### Parameters + +| Name | Type | Default value | +| :------ | :------ | :------ | +| `sourceColumn` | `string` | `undefined` | +| `openAIKey` | `string` | `undefined` | +| `modelName` | `string` | `'text-embedding-ada-002'` | + +#### Defined in + +[embedding/openai.ts:21](https://github.com/lancedb/lancedb/blob/31dab97/node/src/embedding/openai.ts#L21) + +## Properties + +### \_modelName + +• `Private` `Readonly` **\_modelName**: `string` + +#### Defined in + +[embedding/openai.ts:19](https://github.com/lancedb/lancedb/blob/31dab97/node/src/embedding/openai.ts#L19) + +___ + +### \_openai + +• `Private` `Readonly` **\_openai**: `any` + +#### Defined in + +[embedding/openai.ts:18](https://github.com/lancedb/lancedb/blob/31dab97/node/src/embedding/openai.ts#L18) + +___ + +### sourceColumn + +• **sourceColumn**: `string` + +The name of the column that will be used as input for the Embedding Function. + +#### Implementation of + +[EmbeddingFunction](../interfaces/EmbeddingFunction.md).[sourceColumn](../interfaces/EmbeddingFunction.md#sourcecolumn) + +#### Defined in + +[embedding/openai.ts:50](https://github.com/lancedb/lancedb/blob/31dab97/node/src/embedding/openai.ts#L50) + +## Methods + +### embed + +▸ **embed**(`data`): `Promise`<`number`[][]\> + +Creates a vector representation for the given values. + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `data` | `string`[] | + +#### Returns + +`Promise`<`number`[][]\> + +#### Implementation of + +[EmbeddingFunction](../interfaces/EmbeddingFunction.md).[embed](../interfaces/EmbeddingFunction.md#embed) + +#### Defined in + +[embedding/openai.ts:38](https://github.com/lancedb/lancedb/blob/31dab97/node/src/embedding/openai.ts#L38) diff --git a/docs/src/javascript/classes/Query.md b/docs/src/javascript/classes/Query.md new file mode 100644 index 00000000..da1fae5e --- /dev/null +++ b/docs/src/javascript/classes/Query.md @@ -0,0 +1,299 @@ +[vectordb](../README.md) / [Exports](../modules.md) / Query + +# Class: Query + +A builder for nearest neighbor queries for LanceDB. + +## Type parameters + +| Name | Type | +| :------ | :------ | +| `T` | `number`[] | + +## Table of contents + +### Constructors + +- [constructor](Query.md#constructor) + +### Properties + +- [\_columns](Query.md#_columns) +- [\_embeddings](Query.md#_embeddings) +- [\_filter](Query.md#_filter) +- [\_limit](Query.md#_limit) +- [\_metricType](Query.md#_metrictype) +- [\_nprobes](Query.md#_nprobes) +- [\_query](Query.md#_query) +- [\_queryVector](Query.md#_queryvector) +- [\_refineFactor](Query.md#_refinefactor) +- [\_tbl](Query.md#_tbl) + +### Methods + +- [execute](Query.md#execute) +- [filter](Query.md#filter) +- [limit](Query.md#limit) +- [metricType](Query.md#metrictype) +- [nprobes](Query.md#nprobes) +- [refineFactor](Query.md#refinefactor) + +## Constructors + +### constructor + +• **new Query**<`T`\>(`tbl`, `query`, `embeddings?`) + +#### Type parameters + +| Name | Type | +| :------ | :------ | +| `T` | `number`[] | + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `tbl` | `any` | +| `query` | `T` | +| `embeddings?` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | + +#### Defined in + +[index.ts:241](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L241) + +## Properties + +### \_columns + +• `Private` `Optional` `Readonly` **\_columns**: `string`[] + +#### Defined in + +[index.ts:236](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L236) + +___ + +### \_embeddings + +• `Private` `Optional` `Readonly` **\_embeddings**: [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> + +#### Defined in + +[index.ts:239](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L239) + +___ + +### \_filter + +• `Private` `Optional` **\_filter**: `string` + +#### Defined in + +[index.ts:237](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L237) + +___ + +### \_limit + +• `Private` **\_limit**: `number` + +#### Defined in + +[index.ts:233](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L233) + +___ + +### \_metricType + +• `Private` `Optional` **\_metricType**: [`MetricType`](../enums/MetricType.md) + +#### Defined in + +[index.ts:238](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L238) + +___ + +### \_nprobes + +• `Private` **\_nprobes**: `number` + +#### Defined in + +[index.ts:235](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L235) + +___ + +### \_query + +• `Private` `Readonly` **\_query**: `T` + +#### Defined in + +[index.ts:231](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L231) + +___ + +### \_queryVector + +• `Private` `Optional` **\_queryVector**: `number`[] + +#### Defined in + +[index.ts:232](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L232) + +___ + +### \_refineFactor + +• `Private` `Optional` **\_refineFactor**: `number` + +#### Defined in + +[index.ts:234](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L234) + +___ + +### \_tbl + +• `Private` `Readonly` **\_tbl**: `any` + +#### Defined in + +[index.ts:230](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L230) + +## Methods + +### execute + +▸ **execute**<`T`\>(): `Promise`<`T`[]\> + +Execute the query and return the results as an Array of Objects + +#### Type parameters + +| Name | Type | +| :------ | :------ | +| `T` | `Record`<`string`, `unknown`\> | + +#### Returns + +`Promise`<`T`[]\> + +#### Defined in + +[index.ts:301](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L301) + +___ + +### filter + +▸ **filter**(`value`): [`Query`](Query.md)<`T`\> + +A filter statement to be applied to this query. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | `string` | A filter in the same format used by a sql WHERE clause. | + +#### Returns + +[`Query`](Query.md)<`T`\> + +#### Defined in + +[index.ts:284](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L284) + +___ + +### limit + +▸ **limit**(`value`): [`Query`](Query.md)<`T`\> + +Sets the number of results that will be returned + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | `number` | number of results | + +#### Returns + +[`Query`](Query.md)<`T`\> + +#### Defined in + +[index.ts:257](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L257) + +___ + +### metricType + +▸ **metricType**(`value`): [`Query`](Query.md)<`T`\> + +The MetricType used for this Query. + +**`See`** + +MetricType for the different options + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | [`MetricType`](../enums/MetricType.md) | The metric to the. | + +#### Returns + +[`Query`](Query.md)<`T`\> + +#### Defined in + +[index.ts:293](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L293) + +___ + +### nprobes + +▸ **nprobes**(`value`): [`Query`](Query.md)<`T`\> + +The number of probes used. A higher number makes search more accurate but also slower. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | `number` | The number of probes used. | + +#### Returns + +[`Query`](Query.md)<`T`\> + +#### Defined in + +[index.ts:275](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L275) + +___ + +### refineFactor + +▸ **refineFactor**(`value`): [`Query`](Query.md)<`T`\> + +Refine the results by reading extra elements and re-ranking them in memory. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `value` | `number` | refine factor to use in this query. | + +#### Returns + +[`Query`](Query.md)<`T`\> + +#### Defined in + +[index.ts:266](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L266) diff --git a/docs/src/javascript/classes/Table.md b/docs/src/javascript/classes/Table.md new file mode 100644 index 00000000..5a28755f --- /dev/null +++ b/docs/src/javascript/classes/Table.md @@ -0,0 +1,215 @@ +[vectordb](../README.md) / [Exports](../modules.md) / Table + +# Class: Table + +## Type parameters + +| Name | Type | +| :------ | :------ | +| `T` | `number`[] | + +## Table of contents + +### Constructors + +- [constructor](Table.md#constructor) + +### Properties + +- [\_embeddings](Table.md#_embeddings) +- [\_name](Table.md#_name) +- [\_tbl](Table.md#_tbl) + +### Accessors + +- [name](Table.md#name) + +### Methods + +- [add](Table.md#add) +- [create\_index](Table.md#create_index) +- [overwrite](Table.md#overwrite) +- [search](Table.md#search) + +## Constructors + +### constructor + +• **new Table**<`T`\>(`tbl`, `name`) + +#### Type parameters + +| Name | Type | +| :------ | :------ | +| `T` | `number`[] | + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `tbl` | `any` | +| `name` | `string` | + +#### Defined in + +[index.ts:121](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L121) + +• **new Table**<`T`\>(`tbl`, `name`, `embeddings`) + +#### Type parameters + +| Name | Type | +| :------ | :------ | +| `T` | `number`[] | + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `tbl` | `any` | | +| `name` | `string` | | +| `embeddings` | [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> | An embedding function to use when interacting with this table | + +#### Defined in + +[index.ts:127](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L127) + +## Properties + +### \_embeddings + +• `Private` `Optional` `Readonly` **\_embeddings**: [`EmbeddingFunction`](../interfaces/EmbeddingFunction.md)<`T`\> + +#### Defined in + +[index.ts:119](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L119) + +___ + +### \_name + +• `Private` `Readonly` **\_name**: `string` + +#### Defined in + +[index.ts:118](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L118) + +___ + +### \_tbl + +• `Private` `Readonly` **\_tbl**: `any` + +#### Defined in + +[index.ts:117](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L117) + +## Accessors + +### name + +• `get` **name**(): `string` + +#### Returns + +`string` + +#### Defined in + +[index.ts:134](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L134) + +## Methods + +### add + +▸ **add**(`data`): `Promise`<`number`\> + +Insert records into this Table. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `data` | `Record`<`string`, `unknown`\>[] | Records to be inserted into the Table | + +#### Returns + +`Promise`<`number`\> + +The number of rows added to the table + +#### Defined in + +[index.ts:152](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L152) + +___ + +### create\_index + +▸ **create_index**(`indexParams`): `Promise`<`any`\> + +Create an ANN index on this Table vector index. + +**`See`** + +VectorIndexParams. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `indexParams` | `IvfPQIndexConfig` | The parameters of this Index, | + +#### Returns + +`Promise`<`any`\> + +#### Defined in + +[index.ts:171](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L171) + +___ + +### overwrite + +▸ **overwrite**(`data`): `Promise`<`number`\> + +Insert records into this Table, replacing its contents. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `data` | `Record`<`string`, `unknown`\>[] | Records to be inserted into the Table | + +#### Returns + +`Promise`<`number`\> + +The number of rows added to the table + +#### Defined in + +[index.ts:162](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L162) + +___ + +### search + +▸ **search**(`query`): [`Query`](Query.md)<`T`\> + +Creates a search query to find the nearest neighbors of the given search term + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `query` | `T` | The query search term | + +#### Returns + +[`Query`](Query.md)<`T`\> + +#### Defined in + +[index.ts:142](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L142) diff --git a/docs/src/javascript/enums/MetricType.md b/docs/src/javascript/enums/MetricType.md new file mode 100644 index 00000000..adced6a2 --- /dev/null +++ b/docs/src/javascript/enums/MetricType.md @@ -0,0 +1,36 @@ +[vectordb](../README.md) / [Exports](../modules.md) / MetricType + +# Enumeration: MetricType + +Distance metrics type. + +## Table of contents + +### Enumeration Members + +- [Cosine](MetricType.md#cosine) +- [L2](MetricType.md#l2) + +## Enumeration Members + +### Cosine + +• **Cosine** = ``"cosine"`` + +Cosine distance + +#### Defined in + +[index.ts:341](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L341) + +___ + +### L2 + +• **L2** = ``"l2"`` + +Euclidean distance + +#### Defined in + +[index.ts:336](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L336) diff --git a/docs/src/javascript/enums/WriteMode.md b/docs/src/javascript/enums/WriteMode.md new file mode 100644 index 00000000..32a5c244 --- /dev/null +++ b/docs/src/javascript/enums/WriteMode.md @@ -0,0 +1,30 @@ +[vectordb](../README.md) / [Exports](../modules.md) / WriteMode + +# Enumeration: WriteMode + +## Table of contents + +### Enumeration Members + +- [Append](WriteMode.md#append) +- [Overwrite](WriteMode.md#overwrite) + +## Enumeration Members + +### Append + +• **Append** = ``"append"`` + +#### Defined in + +[index.ts:326](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L326) + +___ + +### Overwrite + +• **Overwrite** = ``"overwrite"`` + +#### Defined in + +[index.ts:325](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L325) diff --git a/docs/src/javascript/interfaces/EmbeddingFunction.md b/docs/src/javascript/interfaces/EmbeddingFunction.md new file mode 100644 index 00000000..85962de9 --- /dev/null +++ b/docs/src/javascript/interfaces/EmbeddingFunction.md @@ -0,0 +1,60 @@ +[vectordb](../README.md) / [Exports](../modules.md) / EmbeddingFunction + +# Interface: EmbeddingFunction + +An embedding function that automatically creates vector representation for a given column. + +## Type parameters + +| Name | +| :------ | +| `T` | + +## Implemented by + +- [`OpenAIEmbeddingFunction`](../classes/OpenAIEmbeddingFunction.md) + +## Table of contents + +### Properties + +- [embed](EmbeddingFunction.md#embed) +- [sourceColumn](EmbeddingFunction.md#sourcecolumn) + +## Properties + +### embed + +• **embed**: (`data`: `T`[]) => `Promise`<`number`[][]\> + +#### Type declaration + +▸ (`data`): `Promise`<`number`[][]\> + +Creates a vector representation for the given values. + +##### Parameters + +| Name | Type | +| :------ | :------ | +| `data` | `T`[] | + +##### Returns + +`Promise`<`number`[][]\> + +#### Defined in + +[embedding/embedding_function.ts:27](https://github.com/lancedb/lancedb/blob/31dab97/node/src/embedding/embedding_function.ts#L27) + +___ + +### sourceColumn + +• **sourceColumn**: `string` + +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/31dab97/node/src/embedding/embedding_function.ts#L22) diff --git a/docs/src/javascript/modules.md b/docs/src/javascript/modules.md new file mode 100644 index 00000000..2ac99034 --- /dev/null +++ b/docs/src/javascript/modules.md @@ -0,0 +1,61 @@ +[vectordb](README.md) / Exports + +# vectordb + +## Table of contents + +### Enumerations + +- [MetricType](enums/MetricType.md) +- [WriteMode](enums/WriteMode.md) + +### Classes + +- [Connection](classes/Connection.md) +- [OpenAIEmbeddingFunction](classes/OpenAIEmbeddingFunction.md) +- [Query](classes/Query.md) +- [Table](classes/Table.md) + +### Interfaces + +- [EmbeddingFunction](interfaces/EmbeddingFunction.md) + +### Type Aliases + +- [VectorIndexParams](modules.md#vectorindexparams) + +### Functions + +- [connect](modules.md#connect) + +## Type Aliases + +### VectorIndexParams + +Ƭ **VectorIndexParams**: `IvfPQIndexConfig` + +#### Defined in + +[index.ts:224](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L224) + +## Functions + +### connect + +▸ **connect**(`uri`): `Promise`<[`Connection`](classes/Connection.md)\> + +Connect to a LanceDB instance at the given URI + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `uri` | `string` | The uri of the database. | + +#### Returns + +`Promise`<[`Connection`](classes/Connection.md)\> + +#### Defined in + +[index.ts:34](https://github.com/lancedb/lancedb/blob/31dab97/node/src/index.ts#L34) diff --git a/notebooks/code_qa_bot.ipynb b/docs/src/notebooks/code_qa_bot.ipynb similarity index 100% rename from notebooks/code_qa_bot.ipynb rename to docs/src/notebooks/code_qa_bot.ipynb diff --git a/notebooks/diffusiondb/datagen.py b/docs/src/notebooks/diffusiondb/datagen.py similarity index 100% rename from notebooks/diffusiondb/datagen.py rename to docs/src/notebooks/diffusiondb/datagen.py diff --git a/notebooks/diffusiondb/requirements.txt b/docs/src/notebooks/diffusiondb/requirements.txt similarity index 100% rename from notebooks/diffusiondb/requirements.txt rename to docs/src/notebooks/diffusiondb/requirements.txt diff --git a/notebooks/multimodal_search.ipynb b/docs/src/notebooks/multimodal_search.ipynb similarity index 100% rename from notebooks/multimodal_search.ipynb rename to docs/src/notebooks/multimodal_search.ipynb diff --git a/notebooks/youtube_transcript_search.ipynb b/docs/src/notebooks/youtube_transcript_search.ipynb similarity index 100% rename from notebooks/youtube_transcript_search.ipynb rename to docs/src/notebooks/youtube_transcript_search.ipynb diff --git a/docs/src/python.md b/docs/src/python/python.md similarity index 100% rename from docs/src/python.md rename to docs/src/python/python.md diff --git a/docs/src/styles/global.css b/docs/src/styles/global.css new file mode 100644 index 00000000..d511a964 --- /dev/null +++ b/docs/src/styles/global.css @@ -0,0 +1,6 @@ +:root { + --md-primary-fg-color: #625eff; + --md-primary-fg-color--dark: #4338ca; + --md-text-font: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --md-code-font: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} \ No newline at end of file diff --git a/node/README.md b/node/README.md index 5e0a4838..9302cf5b 100644 --- a/node/README.md +++ b/node/README.md @@ -41,3 +41,9 @@ To run the linter and have it automatically fix all errors ```bash npm run lint -- --fix ``` + +To build documentation + +```bash +npx typedoc --plugin typedoc-plugin-markdown --out ../docs/src/javascript src/index.ts +``` \ No newline at end of file diff --git a/node/package-lock.json b/node/package-lock.json index 10a62727..ee17adbf 100644 --- a/node/package-lock.json +++ b/node/package-lock.json @@ -32,6 +32,8 @@ "temp": "^0.9.4", "ts-node": "^10.9.1", "ts-node-dev": "^2.0.0", + "typedoc": "^0.24.7", + "typedoc-plugin-markdown": "^3.15.3", "typescript": "*" } }, @@ -642,6 +644,12 @@ "node": ">=8" } }, + "node_modules/ansi-sequence-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz", + "integrity": "sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==", + "dev": true + }, "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -2284,6 +2292,27 @@ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, + "node_modules/handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -2782,6 +2811,12 @@ "json5": "lib/cli.js" } }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, "node_modules/just-extend": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", @@ -2870,12 +2905,30 @@ "node": ">=10" } }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/marked": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", + "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "dev": true, + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 12" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -3096,6 +3149,12 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, "node_modules/nise": { "version": "5.1.4", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", @@ -3604,6 +3663,18 @@ "node": ">=8" } }, + "node_modules/shiki": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.2.tgz", + "integrity": "sha512-ltSZlSLOuSY0M0Y75KA+ieRaZ0Trf5Wl3gutE7jzLuIcWxLp5i/uEnLoQWNvgKXQ5OMpGkJnVMRLAuzjc0LJ2A==", + "dev": true, + "dependencies": { + "ansi-sequence-parser": "^1.1.0", + "jsonc-parser": "^3.2.0", + "vscode-oniguruma": "^1.7.0", + "vscode-textmate": "^8.0.0" + } + }, "node_modules/side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -4064,6 +4135,63 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/typedoc": { + "version": "0.24.7", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.7.tgz", + "integrity": "sha512-zzfKDFIZADA+XRIp2rMzLe9xZ6pt12yQOhCr7cD7/PBTjhPmMyMvGrkZ2lPNJitg3Hj1SeiYFNzCsSDrlpxpKw==", + "dev": true, + "dependencies": { + "lunr": "^2.3.9", + "marked": "^4.3.0", + "minimatch": "^9.0.0", + "shiki": "^0.14.1" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 14.14" + }, + "peerDependencies": { + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x" + } + }, + "node_modules/typedoc-plugin-markdown": { + "version": "3.15.3", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.15.3.tgz", + "integrity": "sha512-idntFYu3vfaY3eaD+w9DeRd0PmNGqGuNLKihPU9poxFGnATJYGn9dPtEhn2QrTdishFMg7jPXAhos+2T6YCWRQ==", + "dev": true, + "dependencies": { + "handlebars": "^4.7.7" + }, + "peerDependencies": { + "typedoc": ">=0.24.0" + } + }, + "node_modules/typedoc/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/typedoc/node_modules/minimatch": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/typescript": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", @@ -4085,6 +4213,19 @@ "node": ">=8" } }, + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "dev": true, + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -4115,6 +4256,18 @@ "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", "dev": true }, + "node_modules/vscode-oniguruma": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", + "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", + "dev": true + }, + "node_modules/vscode-textmate": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", + "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", + "dev": true + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -4175,6 +4328,12 @@ "node": ">=0.10.0" } }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", + "dev": true + }, "node_modules/wordwrapjs": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", @@ -4767,6 +4926,12 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, + "ansi-sequence-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz", + "integrity": "sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==", + "dev": true + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -5983,6 +6148,19 @@ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + } + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -6324,6 +6502,12 @@ "minimist": "^1.2.0" } }, + "jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, "just-extend": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", @@ -6394,12 +6578,24 @@ "yallist": "^4.0.0" } }, + "lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, "make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "marked": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", + "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "dev": true + }, "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -6564,6 +6760,12 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, "nise": { "version": "5.1.4", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", @@ -6908,6 +7110,18 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, + "shiki": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.2.tgz", + "integrity": "sha512-ltSZlSLOuSY0M0Y75KA+ieRaZ0Trf5Wl3gutE7jzLuIcWxLp5i/uEnLoQWNvgKXQ5OMpGkJnVMRLAuzjc0LJ2A==", + "dev": true, + "requires": { + "ansi-sequence-parser": "^1.1.0", + "jsonc-parser": "^3.2.0", + "vscode-oniguruma": "^1.7.0", + "vscode-textmate": "^8.0.0" + } + }, "side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -7236,6 +7450,47 @@ "is-typed-array": "^1.1.9" } }, + "typedoc": { + "version": "0.24.7", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.7.tgz", + "integrity": "sha512-zzfKDFIZADA+XRIp2rMzLe9xZ6pt12yQOhCr7cD7/PBTjhPmMyMvGrkZ2lPNJitg3Hj1SeiYFNzCsSDrlpxpKw==", + "dev": true, + "requires": { + "lunr": "^2.3.9", + "marked": "^4.3.0", + "minimatch": "^9.0.0", + "shiki": "^0.14.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "typedoc-plugin-markdown": { + "version": "3.15.3", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.15.3.tgz", + "integrity": "sha512-idntFYu3vfaY3eaD+w9DeRd0PmNGqGuNLKihPU9poxFGnATJYGn9dPtEhn2QrTdishFMg7jPXAhos+2T6YCWRQ==", + "dev": true, + "requires": { + "handlebars": "^4.7.7" + } + }, "typescript": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", @@ -7247,6 +7502,13 @@ "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==" }, + "uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "dev": true, + "optional": true + }, "unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -7274,6 +7536,18 @@ "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", "dev": true }, + "vscode-oniguruma": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", + "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", + "dev": true + }, + "vscode-textmate": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", + "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", + "dev": true + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -7316,6 +7590,12 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", + "dev": true + }, "wordwrapjs": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", diff --git a/node/package.json b/node/package.json index 894769fa..484d937e 100644 --- a/node/package.json +++ b/node/package.json @@ -38,11 +38,13 @@ "eslint-plugin-n": "^15.7.0", "eslint-plugin-promise": "^6.1.1", "mocha": "^10.2.0", - "sinon": "^15.1.0", "openai": "^3.2.1", + "sinon": "^15.1.0", "temp": "^0.9.4", "ts-node": "^10.9.1", "ts-node-dev": "^2.0.0", + "typedoc": "^0.24.7", + "typedoc-plugin-markdown": "^3.15.3", "typescript": "*" }, "dependencies": {