Skip to main content

infinity

Project description

The AI-native database built for LLM applications, providing incredibly fast full-text and vector search

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 vectors, 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.

🌟 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.

🔮 Fused search

Supports a fused search of multiple embeddings and full text, in addition to filtering.

🍔 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.2.1.dev6
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.2.1.dev6-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

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

infinity_sdk-0.2.1.dev6-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

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

infinity_sdk-0.2.1.dev6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

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

File details

Details for the file infinity_sdk-0.2.1.dev6-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for infinity_sdk-0.2.1.dev6-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6682e2a43a70a0453529a0471917a67090b4fc071a0d93d2643f2f913a7f179a
MD5 8efdeb49ef31a141ac65979c5f67126e
BLAKE2b-256 7738c1eb73d0f339c1f8f79c0c43e0750dd45d3ce7840c7387f67d35f2fcaa5b

See more details on using hashes here.

File details

Details for the file infinity_sdk-0.2.1.dev6-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for infinity_sdk-0.2.1.dev6-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 88afbbffafa8d4fceb381cccbcdd58e35ca6f7b37a3dbbba411a81ab248d0ba4
MD5 ca4a628ed1dff1a9dd7d4645f3c352ca
BLAKE2b-256 5e5155fdbd79be9e40e44dbbb756dea420ac7d9edd69f7b62e980bfa532cb1e1

See more details on using hashes here.

File details

Details for the file infinity_sdk-0.2.1.dev6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for infinity_sdk-0.2.1.dev6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7e6837b34f85f8afda4ebb220371918466946d555fee6d1cdec35369a8512639
MD5 49678dc5cc0d2e094ab5ee91dd2bd777
BLAKE2b-256 3700111c89623a7e5b8474ff68ec1d52727e6cd2ef4d8ae0414c11526fb6b6ca

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