{"adoption": {"forks": 438, "observed_at": "2026-08-28T04:08:56.943056+00:00", "stars": 4683}, "canonical_url": "https://ross.abutalabs.com/products/infinity", "card": {"archived": false, "artifact_type": "service", "description": "The AI-native database built for LLM applications, providing incredibly fast hybrid search of dense vector, sparse vector, tensor (multi-vector), and full-text.", "domain": ["databases", "large-language-models", "artificial-intelligence"], "enriched": true, "function": ["vector-database", "search-engine", "database", "rag"], "health_score": 99, "homepage": "https://infiniflow.org", "language": "C++", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["infiniflow/infinity"], "name": "infiniflow/infinity", "platform": ["windows", "self-hosted", "python", "cpp"], "pushed_at": "2026-08-17T13:43:09+00:00", "repo": "infiniflow/infinity", "stars": 4683, "tags": ["hybrid-search", "full-text-search", "bm25", "hnsw", "sparse-vectors", "tensor-search", "reranking", "colbert", "embeddings", "ai-native-database", "search", "retrieval-augmented-generation", "linux", "macos", "docker"], "topics": ["ai-native", "nearest-neighbor-search", "rag", "vector-search", "information-retrival", "bm25", "embedding", "full-text-search", "search-engine", "cpp20-modules", "approximate-nearest-neighbor-search", "vector-database", "hybrid-search", "hnsw", "cpp20", "tensor-database", "vector", "vectordatabase", "multi-vector"], "urls": [], "use_cases": ["build a RAG pipeline with hybrid vector and full-text search", "store and query embeddings for semantic search", "run BM25 full-text search over millions of documents", "combine dense, sparse, and tensor search with rerankers like ColBERT", "self-host a vector database for a chatbot or QA app", "filter vector search results by structured data"], "what_it_is": "Infinity is an AI-native database built for LLM applications, offering high-performance hybrid search across dense vectors, sparse vectors, tensors, and full text with filtering and reranking (RRF, weighted sum, ColBERT). It is a single-binary server with a Python SDK, deployable via Docker or embedded in Python.", "when_to_avoid": ["you only need a general-purpose relational database without vector search", "your hardware lacks AVX2 support", "you need a fully managed cloud database service", "you require mature multi-node distributed clustering"], "when_to_choose": ["you need fast hybrid search combining vectors and full text in one database", "you want a dependency-free single-binary vector database with a Python API", "you need reranking (RRF, weighted sum, ColBERT) built into the query engine", "you are building LLM/RAG applications needing sub-millisecond retrieval"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/infinity", "repo": "infiniflow/infinity", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:56.943056+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:19:18.618902+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf8264d813e7424f76d89ac825886d09efdc01752d80f5b532ced364221a894", "fetched_at": "2026-08-28T04:08:56.943056+00:00", "kind": "readme", "missing": false, "url": "https://github.com/infiniflow/infinity"}, {"content_hash": "cba16db49a4ccdc967e8f449311ddce030c0ffcccd563fc43c6a33bfc6a1dde1", "fetched_at": "2026-08-29T09:03:28.703366+00:00", "kind": "homepage", "missing": false, "url": "https://infiniflow.org"}, {"content_hash": "a06a818e548ea8530652f7d43342c02a998dab718362e4875d81bcb11ca3a83a", "fetched_at": "2026-08-29T09:03:28.705807+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/category/get-started"}, {"content_hash": "ed36803599e6c0c33b0802b51c9aba9a4326b9122946ea9287b5a10b96f6a1ad", "fetched_at": "2026-08-29T09:03:28.707421+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs"}, {"content_hash": "8dd003516fa7991104350cc294f9e600ea16055c273f34a1eab996aa510e6a1b", "fetched_at": "2026-08-29T09:03:28.709077+00:00", "kind": "site_page", "missing": false, "url": "https://infiniflow.org/docs/dev"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 96}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1507, "days_push": 16, "days_rel": 27, "gap_med": 6, "n_releases_24m": 50}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}