Skip to main content

infinity

Project description

The AI-native database built for LLM applications, providing incredibly fast hybrid search of dense embedding, sparse embedding, tensor and full-text

Document | Benchmark | Twitter | Discord

Infinity is a cutting-edge AI-native database that provides a wide range of search capabilities for rich data types such as dense vector, sparse vector, tensor, full-text, and structured data. It provides robust support for various LLM applications, including search, recommenders, question-answering, conversational AI, copilot, content generation, and many more RAG (Retrieval-augmented Generation) applications.

⚡️ Performance

🌟 Key Features

Infinity comes with high performance, flexibility, ease-of-use, and many features designed to address the challenges facing the next-generation AI applications:

🚀 Incredibly fast

  • Achieves 0.1 milliseconds query latency and 15K+ QPS on million-scale vector datasets.
  • Achieves 1 millisecond latency and 12K+ QPS in full-text search on 33M documents.

See the Benchmark report for more information.

🔮 Powerful search

  • Supports a hybrid search of dense embedding, sparse embedding, tensor, and full text, in addition to filtering.
  • Supports several types of rerankers including RRF, weighted sum and ColBERT.

🍔 Rich data types

Supports a wide range of data types including strings, numerics, vectors, and more.

🎁 Ease-of-use

  • Intuitive Python API. See the Python API
  • A single-binary architecture with no dependencies, making deployment a breeze.
  • Embedded in Python as a module and friendly to AI developers.

🎮 Get Started

Infinity, also available as a Python module, eliminates the need for a separate back-end server and all the complex communication settings. Using pip install and import infinity, you can quickly build a local AI application in Python, leveraging the world's fastest and the most powerful RAG database:

pip install infinity-sdk==0.3.0.dev1
import infinity

# Connect to infinity
infinity_obj = infinity.connect("/path/to/save/to")
db = infinity_obj.get_database("default_db")
table = db.create_table("my_table", {"num": {"type": "integer"}, "body": {"type": "varchar"}, "vec": {"type": "vector, 4, float"}})
table.insert([{"num": 1, "body": "unnecessary and harmful", "vec": [1.0, 1.2, 0.8, 0.9]}])
table.insert([{"num": 2, "body": "Office for Harmful Blooms", "vec": [4.0, 4.2, 4.3, 4.5]}])
res = table.output(["*"]).knn("vec", [3.0, 2.8, 2.7, 3.1], "float", "ip", 2).to_pl()
print(res)

🛠️ Deploy Infinity as a separate server

If you wish to deploy a standalone Infinity server and access it remotely:

See Deploy infinity server.

🛠️ Build from Source

See Build from Source.

💡 For more information about Infinity's Python API, see the Python API Reference.

📚 Document

📜 Roadmap

See the Infinity Roadmap 2024

🙌 Community

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

infinity_sdk-0.3.0.dev2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.12+ manylinux: glibc 2.17+ x86-64

infinity_sdk-0.3.0.dev2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.11+ manylinux: glibc 2.17+ x86-64

infinity_sdk-0.3.0.dev2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.10+ manylinux: glibc 2.17+ x86-64

File details

Details for the file infinity_sdk-0.3.0.dev2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for infinity_sdk-0.3.0.dev2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3672aaf266ab7145c240ad442988bde4f30d8555e46ce10c61463593bd638d96
MD5 e1c801f36e6238e59d087d1b831fc765
BLAKE2b-256 4f072c54ad810106a96b0e0b82b2523e63aa2d2bacc307a432be32020fd7a3ed

See more details on using hashes here.

File details

Details for the file infinity_sdk-0.3.0.dev2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for infinity_sdk-0.3.0.dev2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a5dfef6a25f25f5baeda6011d486ff9ff5592b61e497cb34288961ad11d114ca
MD5 37b6351114b67d27982b77b476fa887d
BLAKE2b-256 50bddfa4cad0e009c39f56305cfc0a1a50f41df8cee3cac1a5cd6f38661b2258

See more details on using hashes here.

File details

Details for the file infinity_sdk-0.3.0.dev2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for infinity_sdk-0.3.0.dev2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 74cc2ae4b7d689c12d2339ceb704adf09a11a924482a6066f8748b8ed5aa5594
MD5 ce94630bfaa82f12879f97426dc5d5d4
BLAKE2b-256 f550e3a64466b6d2309fa6e8be25afb60307d631bd042a1807002f63f0f33adb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page