# 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
LanceDb is based on the rust crate `lancedb` and is built with maturin. In order to build with maturin
you will either need a conda environment or a virtual environment (venv).
```bash
python -m venv venv
. ./venv/bin/activate
```
Install the necessary packages:
```bash
python -m pip install .[tests,dev]
```
To build the python package you can use maturin:
```bash
# This will build the rust bindings and place them in the appropriate place
# in your venv or conda environment
maturin develop
```
To run the unit tests:
```bash
pytest
```
To run the doc tests:
```bash
pytest --doctest-modules python/lancedb
```
To run linter and automatically fix all errors:
```bash
ruff format python
ruff --fix python
```
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
```
Raw data
{
"_id": null,
"home_page": null,
"name": "lancedb",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "data-format, data-science, machine-learning, arrow, data-analytics",
"author": null,
"author_email": "LanceDB Devs <dev@lancedb.com>",
"download_url": null,
"platform": null,
"description": "# LanceDB\n\nA Python library for [LanceDB](https://github.com/lancedb/lancedb).\n\n## Installation\n\n```bash\npip install lancedb\n```\n\n## Usage\n\n### Basic Example\n\n```python\nimport lancedb\ndb = lancedb.connect('<PATH_TO_LANCEDB_DATASET>')\ntable = db.open_table('my_table')\nresults = table.search([0.1, 0.3]).limit(20).to_list()\nprint(results)\n```\n\n## Development\n\nLanceDb is based on the rust crate `lancedb` and is built with maturin. In order to build with maturin\nyou will either need a conda environment or a virtual environment (venv).\n\n```bash\npython -m venv venv\n. ./venv/bin/activate\n```\n\nInstall the necessary packages:\n\n```bash\npython -m pip install .[tests,dev]\n```\n\nTo build the python package you can use maturin:\n\n```bash\n# This will build the rust bindings and place them in the appropriate place\n# in your venv or conda environment\nmaturin develop\n```\n\nTo run the unit tests:\n\n```bash\npytest\n```\n\nTo run the doc tests:\n\n```bash\npytest --doctest-modules python/lancedb\n```\n\nTo run linter and automatically fix all errors:\n\n```bash\nruff format python\nruff --fix python\n```\n\nIf any packages are missing, install them with:\n\n```bash\npip install <PACKAGE_NAME>\n```\n\n___\nFor **Windows** users, there may be errors when installing packages, so these commands may be helpful:\n\nActivate the virtual environment:\n\n```bash\n. .\\venv\\Scripts\\activate\n```\n\nYou may need to run the installs separately:\n\n```bash\npip install -e .[tests]\npip install -e .[dev]\n```\n\n`tantivy` requires `rust` to be installed, so install it with `conda`, as it doesn't support windows installation:\n\n```bash\npip install wheel\npip install cargo\nconda install rust\npip install tantivy\n```\n\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "lancedb",
"version": "0.17.0",
"project_urls": {
"repository": "https://github.com/lancedb/lancedb"
},
"split_keywords": [
"data-format",
" data-science",
" machine-learning",
" arrow",
" data-analytics"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fbed58e04eaf815acd6b75ad7db8a6a61d01eccc5cb2191d431c0d5f234cf20a",
"md5": "87f3ad2b4c8ce4d54c0d8dd36ebe541b",
"sha256": "40aac1583edda390e51189c4e95bdfd4768d23705234e12a7b81957f1143df42"
},
"downloads": -1,
"filename": "lancedb-0.17.0-cp39-abi3-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "87f3ad2b4c8ce4d54c0d8dd36ebe541b",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 26393821,
"upload_time": "2024-12-06T17:57:29",
"upload_time_iso_8601": "2024-12-06T17:57:29.699829Z",
"url": "https://files.pythonhosted.org/packages/fb/ed/58e04eaf815acd6b75ad7db8a6a61d01eccc5cb2191d431c0d5f234cf20a/lancedb-0.17.0-cp39-abi3-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "87a914807f23f0fb415453626ba4ea7431ab62f0906bd0ef1df24680fd5ae2df",
"md5": "b24b04a4e1ddbf8c869771eb5807ccd0",
"sha256": "895bed499dae61cac1dbfc40ad71a566e06ab5c8d538aa57873a0cba859f8a7a"
},
"downloads": -1,
"filename": "lancedb-0.17.0-cp39-abi3-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b24b04a4e1ddbf8c869771eb5807ccd0",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 24846600,
"upload_time": "2024-12-06T17:39:43",
"upload_time_iso_8601": "2024-12-06T17:39:43.739437Z",
"url": "https://files.pythonhosted.org/packages/87/a9/14807f23f0fb415453626ba4ea7431ab62f0906bd0ef1df24680fd5ae2df/lancedb-0.17.0-cp39-abi3-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a5464a5af607b9904d76344b56e62d6799ce7ae8f6c835bf05d1678313ca877f",
"md5": "d5a9e763dd9a13f1d897669099dd830c",
"sha256": "3ea688d0f63796ee912a7cfe6667f36661e36756fa8340b94dd54d666a7db63f"
},
"downloads": -1,
"filename": "lancedb-0.17.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "d5a9e763dd9a13f1d897669099dd830c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 30443392,
"upload_time": "2024-12-06T17:31:41",
"upload_time_iso_8601": "2024-12-06T17:31:41.920134Z",
"url": "https://files.pythonhosted.org/packages/a5/46/4a5af607b9904d76344b56e62d6799ce7ae8f6c835bf05d1678313ca877f/lancedb-0.17.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "eb034eb452f02a740ab1cfa334570384f10810890b2670ef6277af7abcb0039d",
"md5": "ed581438baf0de15f8e8e7d7612f6fad",
"sha256": "f51a61950ead30a605b5653a81e8362e4aac6fec32705b88b9c9319e9308b2bb"
},
"downloads": -1,
"filename": "lancedb-0.17.0-cp39-abi3-manylinux_2_24_aarch64.whl",
"has_sig": false,
"md5_digest": "ed581438baf0de15f8e8e7d7612f6fad",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 28242872,
"upload_time": "2024-12-06T17:32:03",
"upload_time_iso_8601": "2024-12-06T17:32:03.134710Z",
"url": "https://files.pythonhosted.org/packages/eb/03/4eb452f02a740ab1cfa334570384f10810890b2670ef6277af7abcb0039d/lancedb-0.17.0-cp39-abi3-manylinux_2_24_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b211c48248f984dfd8dfec0bb074465ca697cf64b6b71b0aa199c15ad0153597",
"md5": "e70aad0d150d333b6d3fbcb9c58710af",
"sha256": "07e6f10b3fcbeb6c737996e5ebd68d04c3ca2656a9b8b970111ecf368245e7f6"
},
"downloads": -1,
"filename": "lancedb-0.17.0-cp39-abi3-manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "e70aad0d150d333b6d3fbcb9c58710af",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 29925342,
"upload_time": "2024-12-06T17:31:37",
"upload_time_iso_8601": "2024-12-06T17:31:37.967074Z",
"url": "https://files.pythonhosted.org/packages/b2/11/c48248f984dfd8dfec0bb074465ca697cf64b6b71b0aa199c15ad0153597/lancedb-0.17.0-cp39-abi3-manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "34b9a3d4bfdaefbc9098ef18bff2cf403c6060f70894c5022983464f9c3db367",
"md5": "f40eeb3a706b6f054280571461b1ed6b",
"sha256": "9d7e82f83f430d906c285d3303729258b21b1cc8da634c9f7017e354bcb7318a"
},
"downloads": -1,
"filename": "lancedb-0.17.0-cp39-abi3-win_amd64.whl",
"has_sig": false,
"md5_digest": "f40eeb3a706b6f054280571461b1ed6b",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 27511050,
"upload_time": "2024-12-06T17:55:58",
"upload_time_iso_8601": "2024-12-06T17:55:58.080237Z",
"url": "https://files.pythonhosted.org/packages/34/b9/a3d4bfdaefbc9098ef18bff2cf403c6060f70894c5022983464f9c3db367/lancedb-0.17.0-cp39-abi3-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-06 17:57:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lancedb",
"github_project": "lancedb",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "lancedb"
}