LynseDB


NameLynseDB JSON
Version 0.1.6 PyPI version JSON
download
home_pagehttps://github.com/BirchKwok/MinVectorDB
SummaryA pure Python-implemented, lightweight, server-optional, multi-end compatible, vector database deployable locally or remotely.
upload_time2024-10-01 15:49:26
maintainerNone
docs_urlNone
authorBirch Kwok
requires_python>=3.9
licenseNone
keywords vector database
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
  <picture>
    <source media="(prefers-color-scheme: light)" srcset="https://github.com/BirchKwok/LynseDB/blob/main/logo/logo.png">
    <source media="(prefers-color-scheme: dark)" srcset="https://github.com/BirchKwok/LynseDB/blob/main/logo/logo.png">
    <img alt="LynseDB logo" src="https://github.com/BirchKwok/LynseDB/blob/main/logo/logo.png" height="100">
  </picture>
</div>
<br>

<p align="center">
  <a href="https://discord.com/invite/rcYK5nYF"><img src="https://img.shields.io/badge/Discord-Online-brightgreen" alt="Discord"></a>
  <a href="https://badge.fury.io/py/LynseDB"><img src="https://badge.fury.io/py/LynseDB.svg" alt="PyPI version"></a>
  <a href="https://pypi.org/project/LynseDB/"><img src="https://img.shields.io/pypi/pyversions/LynseDB" alt="PyPI - Python Version"></a>
  <a href="https://github.com/BirchKwok/LynseDB/actions/workflows/python-tests.yml"><img src="https://github.com/BirchKwok/LynseDB/actions/workflows/python-tests.yml/badge.svg" alt="Python testing"></a>
  <a href="https://github.com/BirchKwok/LynseDB/actions/workflows/docker-tests.yml"><img src="https://github.com/BirchKwok/LynseDB/actions/workflows/docker-tests.yml/badge.svg" alt="Docker build"></a>
</p>


**LynseDB** is a vector database implemented purely in Python, designed to be lightweight, server-optional, and easy to deploy locally or remotely. It offers straightforward and clear Python APIs, aiming to lower the entry barrier for using vector databases.

It focuses on achieving 100% recall, prioritizing recall accuracy over high-speed search performance. This approach ensures that users can reliably retrieve all relevant vector data, making LynseDB particularly suitable for applications that require responses within hundreds of milliseconds.

## LynseDB features

⚡ **Server-optional, simple parameters, simple API.**

⚡ **Fast, memory-efficient, easily scales to millions of vectors.**

⚡ **Based on a generic Python software stack, platform-independent, highly versatile.**

⚡ **Recall-prioritized design, lifecycle search caching technology, FieldExpression fast filtering, Field multi-type indexing, and other user-centric features**

## Some Defects You Should Know

- Not yet backward compatible

LynseDB is actively being updated, and API backward compatibility is not guaranteed. You should use version numbers as a strong constraint during deployment to avoid unnecessary feature conflicts and errors.

- Data size constraints

Although our goal is to enable brute force search or inverted indexing on billion-scale vectors, we currently still recommend using it on a scale of millions of vectors or less for the best experience.

- Python's native api is not process-safe

The Python native API is recommended for use in single-process environments, whether single-threaded or multi-threaded; for ensuring process safety in multi-process environments, please use the HTTP API.


## Installation

### Prerequisite

- python version >= 3.9
- Owns one of the operating systems: Windows, macOS, or Ubuntu (or other Linux distributions). The recommendation is for the latest version of the system, but non-latest versions should also be installable, although they have not been tested.
- Memory >= 4GB, Free Disk >= 4GB.

### Install Client API package (Mandatory)

```shell
pip install LynseDB
```

### If you wish to use Docker (Optional)

You must first [install Docker](https://docs.docker.com/engine/install/) on the host machine.

After installing the [Client API package](#install-client-api-package-mandatory):

```shell
docker pull birchkwok/lynsedb:latest
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/BirchKwok/MinVectorDB",
    "name": "LynseDB",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "vector database",
    "author": "Birch Kwok",
    "author_email": "birchkwok@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/b5/c6/84106b63cacae77b15cdb16785dbe4384a90c7c604d5ad6e10c922913848/lynsedb-0.1.6.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n  <picture>\n    <source media=\"(prefers-color-scheme: light)\" srcset=\"https://github.com/BirchKwok/LynseDB/blob/main/logo/logo.png\">\n    <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://github.com/BirchKwok/LynseDB/blob/main/logo/logo.png\">\n    <img alt=\"LynseDB logo\" src=\"https://github.com/BirchKwok/LynseDB/blob/main/logo/logo.png\" height=\"100\">\n  </picture>\n</div>\n<br>\n\n<p align=\"center\">\n  <a href=\"https://discord.com/invite/rcYK5nYF\"><img src=\"https://img.shields.io/badge/Discord-Online-brightgreen\" alt=\"Discord\"></a>\n  <a href=\"https://badge.fury.io/py/LynseDB\"><img src=\"https://badge.fury.io/py/LynseDB.svg\" alt=\"PyPI version\"></a>\n  <a href=\"https://pypi.org/project/LynseDB/\"><img src=\"https://img.shields.io/pypi/pyversions/LynseDB\" alt=\"PyPI - Python Version\"></a>\n  <a href=\"https://github.com/BirchKwok/LynseDB/actions/workflows/python-tests.yml\"><img src=\"https://github.com/BirchKwok/LynseDB/actions/workflows/python-tests.yml/badge.svg\" alt=\"Python testing\"></a>\n  <a href=\"https://github.com/BirchKwok/LynseDB/actions/workflows/docker-tests.yml\"><img src=\"https://github.com/BirchKwok/LynseDB/actions/workflows/docker-tests.yml/badge.svg\" alt=\"Docker build\"></a>\n</p>\n\n\n**LynseDB** is a vector database implemented purely in Python, designed to be lightweight, server-optional, and easy to deploy locally or remotely. It offers straightforward and clear Python APIs, aiming to lower the entry barrier for using vector databases.\n\nIt focuses on achieving 100% recall, prioritizing recall accuracy over high-speed search performance. This approach ensures that users can reliably retrieve all relevant vector data, making LynseDB particularly suitable for applications that require responses within hundreds of milliseconds.\n\n## LynseDB features\n\n\u26a1 **Server-optional, simple parameters, simple API.**\n\n\u26a1 **Fast, memory-efficient, easily scales to millions of vectors.**\n\n\u26a1 **Based on a generic Python software stack, platform-independent, highly versatile.**\n\n\u26a1 **Recall-prioritized design, lifecycle search caching technology, FieldExpression fast filtering, Field multi-type indexing, and other user-centric features**\n\n## Some Defects You Should Know\n\n- Not yet backward compatible\n\nLynseDB is actively being updated, and API backward compatibility is not guaranteed. You should use version numbers as a strong constraint during deployment to avoid unnecessary feature conflicts and errors.\n\n- Data size constraints\n\nAlthough our goal is to enable brute force search or inverted indexing on billion-scale vectors, we currently still recommend using it on a scale of millions of vectors or less for the best experience.\n\n- Python's native api is not process-safe\n\nThe Python native API is recommended for use in single-process environments, whether single-threaded or multi-threaded; for ensuring process safety in multi-process environments, please use the HTTP API.\n\n\n## Installation\n\n### Prerequisite\n\n- python version >= 3.9\n- Owns one of the operating systems: Windows, macOS, or Ubuntu (or other Linux distributions). The recommendation is for the latest version of the system, but non-latest versions should also be installable, although they have not been tested.\n- Memory >= 4GB, Free Disk >= 4GB.\n\n### Install Client API package (Mandatory)\n\n```shell\npip install LynseDB\n```\n\n### If you wish to use Docker (Optional)\n\nYou must first [install Docker](https://docs.docker.com/engine/install/) on the host machine.\n\nAfter installing the [Client API package](#install-client-api-package-mandatory):\n\n```shell\ndocker pull birchkwok/lynsedb:latest\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A pure Python-implemented, lightweight, server-optional, multi-end compatible, vector database deployable locally or remotely.",
    "version": "0.1.6",
    "project_urls": {
        "Homepage": "https://github.com/BirchKwok/MinVectorDB"
    },
    "split_keywords": [
        "vector",
        "database"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "552ea033f116eda23e5afb5bfef44686a9e7a7d2feb08dcf3110c27611922d0c",
                "md5": "0618948302e00cdecb8e9b47390093f9",
                "sha256": "c5f9c6b6e656b4a3750f2f3c2392017446c7074534cea811fe78419e7a72e6f9"
            },
            "downloads": -1,
            "filename": "LynseDB-0.1.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0618948302e00cdecb8e9b47390093f9",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 94154,
            "upload_time": "2024-10-01T15:49:24",
            "upload_time_iso_8601": "2024-10-01T15:49:24.661282Z",
            "url": "https://files.pythonhosted.org/packages/55/2e/a033f116eda23e5afb5bfef44686a9e7a7d2feb08dcf3110c27611922d0c/LynseDB-0.1.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b5c684106b63cacae77b15cdb16785dbe4384a90c7c604d5ad6e10c922913848",
                "md5": "a7bd72ab5d4b59fb2f49802b2c5adceb",
                "sha256": "5fb60bc6e7c3eb16978d66cd4b72aa94060679d7c0a1b1703bf4ee47941b5b7d"
            },
            "downloads": -1,
            "filename": "lynsedb-0.1.6.tar.gz",
            "has_sig": false,
            "md5_digest": "a7bd72ab5d4b59fb2f49802b2c5adceb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 74273,
            "upload_time": "2024-10-01T15:49:26",
            "upload_time_iso_8601": "2024-10-01T15:49:26.974757Z",
            "url": "https://files.pythonhosted.org/packages/b5/c6/84106b63cacae77b15cdb16785dbe4384a90c7c604d5ad6e10c922913848/lynsedb-0.1.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-01 15:49:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "BirchKwok",
    "github_project": "MinVectorDB",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "lynsedb"
}
        
Elapsed time: 0.36417s