Skip to main content
Infinity logo

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

Infinity performance comparison

🌟 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 supports two working modes, embedded mode and client-server mode. Infinity's embedded mode enables you to quickly embed Infinity into your Python applications, without the need to connect to a separate backend server. The following shows how to operate in embedded mode:

pip install infinity-embedded-sdk==0.5.2

Use Infinity to conduct a dense vector search:

import infinity_embedded

# Connect to infinity
infinity_object = infinity_embedded.connect("/absolute/path/to/save/to")
# Retrieve a database object named default_db
db_object = infinity_object.get_database("default_db")
# Create a table with an integer column, a varchar column, and a dense vector column
table_object = db_object.create_table("my_table", {"num": {"type": "integer"}, "body": {"type": "varchar"}, "vec": {"type": "vector, 4, float"}})
# Insert two rows into the table
table_object.insert([{"num": 1, "body": "unnecessary and harmful", "vec": [1.0, 1.2, 0.8, 0.9]}])
table_object.insert([{"num": 2, "body": "Office for Harmful Blooms", "vec": [4.0, 4.2, 4.3, 4.5]}])
# Conduct a dense vector search
res = table_object.output(["*"])
                  .match_dense("vec", [3.0, 2.8, 2.7, 3.1], "float", "ip", 2)
                  .to_pl()
print(res)

🔧 Deploy Infinity in client-server mode

If you wish to deploy Infinity with the server and client as separate processes, see the Deploy infinity server guide.

🔧 Build from Source

See the Build from Source guide.

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

📚 Document

📜 Roadmap

See the Infinity Roadmap 2024

🙌 Community

Metadata

Release files for infinity-embedded-sdk 0.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for infinity-embedded-sdk 0.5.2
File Interpreter ABI Platform
infinity_embedded_sdk-0.5.2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 abi3 Linux glibc 2.17+ x86-64 Details
infinity_embedded_sdk-0.5.2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 abi3 Linux glibc 2.17+ x86-64 Details
infinity_embedded_sdk-0.5.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 abi3 Linux glibc 2.17+ x86-64 Details

Total release size: 50.6 MB

Release files / infinity_embedded_sdk-0.5.2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL infinity_embedded_sdk-0.5.2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 16.9 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
e34deca6c5e9c728197eb68951c4e8e5cfb4ce936d76e395bfcaf15ba7fc8a05
BLAKE2b-256 checksum
How to use checksums
16911ad29e96d150cd88c26ce1735e223d08cb1161b29cef1c942ad12182a792
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.8

Release files / infinity_embedded_sdk-0.5.2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL infinity_embedded_sdk-0.5.2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 16.9 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
75a1d6b73877a2b8ae7b0bedd9538eebf68901ea9d179b9487a1dbd36c490147
BLAKE2b-256 checksum
How to use checksums
9e425cace9edd4976f1566106ee44ac2818f8a26a279235fd3742323de46380a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.8

Release files / infinity_embedded_sdk-0.5.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL infinity_embedded_sdk-0.5.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 16.9 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
f67d793af5c08751e23fdaafba22ec6d1ce2600d82f92f8e93d6279c763874fd
BLAKE2b-256 checksum
How to use checksums
365be63658bd31afe892b63e225377dbafe55a9941a279d8953b4d164a87a163
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.8
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page