# infinity **Repository Path**: wybrono/infinity ## Basic Information - **Project Name**: infinity - **Description**: The AI-native database built for LLM applications, providing incredibly fast vector and full-text search - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-03-01 - **Last Updated**: 2024-03-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

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

Roadmap 2024 | Twitter | Discord | YouTube |

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 on million-scale vector datasets. - Up to 10K QPS on million-scale vector datasets. > See the [Benchmark](docs/benchmark.md). ### 🔮 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](docs/pysdk_api_reference.md) - A single-binary architecture with no dependencies, making deployment a breeze. ## 🎮 Get Started ### Docker pull ```bash docker pull infiniflow/infinity docker run -d --name infinity -v /tmp/infinity/:/tmp/infinity --network=host infiniflow/infinity bash ./opt/bin/infinity ``` ### Install Infinity's Python client ```bash pip install infinity_sdk ``` ### Import necessary modules ```python import infinity import infinity.index as index from infinity.common import REMOTE_HOST ``` ### Connect to the remote server ```python infinity_obj = infinity.connect(REMOTE_HOST) ``` ### Get a database ```python db = infinity_obj.get_database("default") ``` ### Create a table ```python # Drop my_table if it already exists db.drop_table("my_table", if_exists=True) # Create a table named "my_table" table=db.create_table("my_table", {"num": "integer", "body": "varchar", "vec": "vector, 4, float"}, None) ``` ### Insert two records ```python 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]}]) ``` ### Execute a vector search ```python res = table.output(["*"]).knn("vec", [3.0, 2.8, 2.7, 3.1], "float", "ip", 2).to_pl() print(res) ``` > 💡 For more information about the Python API, see the [Python API Reference](docs/pysdk_api_reference.md). ## 🛠️ Build from Source See [Build from Source](docs/build_from_source.md). ## 📜 Roadmap See the [Infinity Roadmap 2024](https://github.com/infiniflow/infinity/issues/338) ## 🙌 Community - [Discord](https://discord.gg/jEfRUwEYEV) - [Twitter](https://twitter.com/infiniflowai) - [GitHub Discussions](https://github.com/infiniflow/infinity/discussions) - [YouTube](https://www.youtube.com/@InfiniFlow-AI)