Metadata-Version: 2.1
Name: lancedb
Version: 0.3.1
Summary: lancedb
Author-email: LanceDB Devs <dev@lancedb.com>
Project-URL: repository, https://github.com/lancedb/lancedb
Keywords: data-format,data-science,machine-learning,arrow,data-analytics
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: deprecation
Requires-Dist: pylance ==0.8.3
Requires-Dist: ratelimiter ~=1.0
Requires-Dist: retry >=0.9.2
Requires-Dist: tqdm >=4.1.0
Requires-Dist: aiohttp
Requires-Dist: pydantic >=1.10
Requires-Dist: attrs >=21.3.0
Requires-Dist: semver >=3.0
Requires-Dist: cachetools
Requires-Dist: pyyaml >=6.0
Requires-Dist: click >=8.1.7
Requires-Dist: requests >=2.31.0
Provides-Extra: clip
Requires-Dist: torch ; extra == 'clip'
Requires-Dist: pillow ; extra == 'clip'
Requires-Dist: open-clip ; extra == 'clip'
Provides-Extra: dev
Requires-Dist: ruff ; extra == 'dev'
Requires-Dist: pre-commit ; extra == 'dev'
Requires-Dist: black ; extra == 'dev'
Provides-Extra: docs
Requires-Dist: mkdocs ; extra == 'docs'
Requires-Dist: mkdocs-jupyter ; extra == 'docs'
Requires-Dist: mkdocs-material ; extra == 'docs'
Requires-Dist: mkdocstrings[python] ; extra == 'docs'
Provides-Extra: embeddings
Requires-Dist: openai ; extra == 'embeddings'
Requires-Dist: sentence-transformers ; extra == 'embeddings'
Requires-Dist: torch ; extra == 'embeddings'
Requires-Dist: pillow ; extra == 'embeddings'
Requires-Dist: open-clip ; extra == 'embeddings'
Requires-Dist: cohere ; extra == 'embeddings'
Provides-Extra: tests
Requires-Dist: pandas >=1.4 ; extra == 'tests'
Requires-Dist: pytest ; extra == 'tests'
Requires-Dist: pytest-mock ; extra == 'tests'
Requires-Dist: pytest-asyncio ; extra == 'tests'
Requires-Dist: requests ; extra == 'tests'

# LanceDB

A Python library for [LanceDB](https://github.com/lancedb/lancedb).

## Installation

```bash
pip install lancedb
```

## Usage

### Basic Example

```python
import lancedb
db = lancedb.connect('<PATH_TO_LANCEDB_DATASET>')
table = db.open_table('my_table')
results = table.search([0.1, 0.3]).limit(20).to_list()
print(results)
```


## Development

Create a virtual environment and activate it:

```bash
python -m venv venv
. ./venv/bin/activate
```

Install the necessary packages:

```bash
python -m pip install .
```

To run the unit tests:

```bash
pytest
```

To run linter and automatically fix all errors:

```bash
black .
isort .
```

If any packages are missing, install them with:

```bash
pip install <PACKAGE_NAME>
```


___
For **Windows** users, there may be errors when installing packages, so these commands may be helpful:

Activate the virtual environment:
```bash
. .\venv\Scripts\activate
```

You may need to run the installs separately:
```bash
pip install -e .[tests]
pip install -e .[dev]
```


`tantivy` requires `rust` to be installed, so install it with `conda`, as it doesn't support windows installation:
```bash
pip install wheel
pip install cargo
conda install rust
pip install tantivy
```

To run the unit tests:
```bash
pytest
```
