Skip to main content

Infino

PyPI Python Downloads License

SQL, full-text, and vector search over your data on object storage — one engine, no server to run.

Infino keeps your data in Apache Parquet on object storage (local disk, Amazon S3, or any S3-compatible store) and runs SQL, full-text (BM25), and vector search over it from a single system. Each file is a valid Parquet file with BM25 and vector indexes embedded directly inside it; a table composes many such files with snapshot-isolated reads, append-only writes, and atomic commits. It runs in your process — there is no daemon, no cluster, and no managed service to operate.

Use it for RAG, agent memory, hybrid search, and semantic search: an embedded vector database, full-text (BM25) search engine, and SQL query engine in one library.

Installation

pip install infino

Or with uv:

uv add infino            # add to a uv-managed project
uv pip install infino    # install into the active environment

Requires Python 3.9 or newer. pyarrow is installed as a dependency; pandas is optional and used only if you pass DataFrames.

Quickstart

import infino
import pyarrow as pa

# Connect to a catalog. Use a local path or an S3 URI for durable storage;
# "memory://" is ephemeral and handy for tests.
db = infino.connect("./data")

# Tiny stand-in for your embedding model so this runs as-is — a 16-dim
# one-hot by topic. Real embeddings are dense and higher-dimensional.
def embed(topic):
    v = [0.0] * 16
    v[topic] = 1.0
    return v

# Declare a schema and which columns to index. An "_id" column is added
# automatically — you don't define it. A vector column's dim must be in
# [16, 4096]; here we use 16, the floor.
schema = pa.schema([
    pa.field("source", pa.large_utf8(), nullable=False),
    pa.field("body", pa.large_utf8(), nullable=False),
    pa.field("embedding", pa.list_(pa.float32(), 16), nullable=False),
])
docs = db.create_table(
    "docs", schema, infino.IndexSpec().fts("body").vector("embedding", 16, "cosine")
)

# Append rows. One append is one atomic commit.
docs.append([
    {"source": "help-center", "body": "To cancel a subscription, open Settings then Billing.", "embedding": embed(0)},
    {"source": "help-center", "body": "Refunds return to the original payment method.",         "embedding": embed(0)},
    {"source": "blog",        "body": "Enable dark mode under Settings then Appearance.",        "embedding": embed(1)},
])

# Retrieve context to ground an agent's next answer — keyword, vector,
# hybrid (BM25 + vector fused in one pass), or SQL. Each returns a pyarrow.Table.
keyword  = docs.bm25_search("body", "cancel subscription", k=5)                           # BM25
semantic = docs.vector_search("embedding", embed(0), k=5)                                 # vector kNN
hybrid   = docs.hybrid_search("body", "cancel subscription", "embedding", embed(0), k=5)  # fused
billing  = db.query_sql("SELECT body FROM docs WHERE source = 'help-center'")             # SQL filter

Documentation

Full docs, guides, and the API reference live at infino.ai/docs:

Building from source

The bindings are built with maturin and require a Rust toolchain.

python3 -m venv .venv && source .venv/bin/activate
pip install maturin pytest pyarrow
maturin develop          # compile the extension and install it into the venv
pytest tests/

License

Apache-2.0.

Release files for infino 0.5.5

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 infino 0.5.5
File
infino-0.5.5-cp39-abi3-musllinux_1_2_x86_64.whl CPython 3.9 abi3 Linux musl 1.2+ x86-64 Details
infino-0.5.5-cp39-abi3-musllinux_1_2_aarch64.whl CPython 3.9 abi3 Linux musl 1.2+ ARM64 Details
infino-0.5.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 abi3 Linux glibc 2.17+ x86-64 Details
infino-0.5.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 abi3 Linux glibc 2.17+ ARM64 Details
infino-0.5.5-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details
infino-0.5.5-cp39-abi3-macosx_10_12_x86_64.whl CPython 3.9 abi3 macOS 10.12+ x86-64 Details

Total release size: 355.9 MB

Release files / infino-0.5.5-cp39-abi3-musllinux_1_2_x86_64.whl

Download URL infino-0.5.5-cp39-abi3-musllinux_1_2_x86_64.whl
Size 61.6 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
115913683a7ae79374e14932af9ae52a39658a591d474aa7067a6153aefb57c9
BLAKE2b-256 checksum
How to use checksums
4350e1275f98c705bdee6b8df927e78dd138373889d265778840f6908a81588d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / infino-0.5.5-cp39-abi3-musllinux_1_2_aarch64.whl

Download URL infino-0.5.5-cp39-abi3-musllinux_1_2_aarch64.whl
Size 60.7 MB
Tags CPython 3.9 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
55f6fbaf7e1b58ec9e174142dffce0b2f542df936624b67d75a78ae07587c78a
BLAKE2b-256 checksum
How to use checksums
63ce022b44b3cdf249920ed6244f1a2f64fa7b49ea24cda03bff796e2566873a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / infino-0.5.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL infino-0.5.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 61.0 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
51df22c38a8439b8357f0c01f91b3ab4ae3ccf4c937663fa636a98c4f9dd8954
BLAKE2b-256 checksum
How to use checksums
5968612c70cba5869631b904b540f93cabe81f7f18ba98b9e79840ebbeb090e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / infino-0.5.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL infino-0.5.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 60.5 MB
Tags CPython 3.9 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
f6192f3e6acde0286a84fa06201a3a13cc1aa4246900ee62bbe56cb828e9391f
BLAKE2b-256 checksum
How to use checksums
189d018904db91c3c1b82ad6f979785ecc579d21d95888710099b8adcffb45ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / infino-0.5.5-cp39-abi3-macosx_11_0_arm64.whl

Download URL infino-0.5.5-cp39-abi3-macosx_11_0_arm64.whl
Size 54.6 MB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
92541094d1e6625a66c90ee1096177255cf0da90ab77b5dce602194677858bc6
BLAKE2b-256 checksum
How to use checksums
d9f34649daa0b53e55c1b78a50167a29a3fb0aaa3ad0bb93894a1e90ca29fa21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / infino-0.5.5-cp39-abi3-macosx_10_12_x86_64.whl

Download URL infino-0.5.5-cp39-abi3-macosx_10_12_x86_64.whl
Size 57.6 MB
Tags CPython 3.9 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
f39ffd08ba7416a81f8957effa9789bbbccb92792bbccf040e23821491a3b285
BLAKE2b-256 checksum
How to use checksums
1aa5eaa8a160d85de1f7e396f2b9fba1d1bd7fba6067c249ffadd24f07284fc0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release history Release notifications | RSS feed

0.8.7

6 release files

0.8.6

6 release files

0.8.5

6 release files

0.8.3

1 release file

0.8.2

3 release files

0.8.0

6 release files

0.7.1

6 release files

0.7.0

6 release files

0.6.0

6 release files

0.5.7

6 release files

0.5.6

6 release files

This release

0.5.5 This release

6 release files

0.5.4

6 release files

0.5.3

6 release files

0.5.2

6 release files

0.5.1

6 release files

0.5.0

6 release files

0.4.1

6 release files

0.4.0

6 release files

0.3.1

6 release files

0.3.0

6 release files

0.2.1

6 release files

0.2.0

6 release files

0.1.10

6 release files

0.1.9

6 release files

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