Skip to main content
Let’s get Infino running in a few minutes. We’ll build a small knowledge base (a handful of help-center notes) and search it four ways: by keyword, by meaning, by both at once (hybrid), and with SQL. Pick your language; each step builds on the one before it. How do you want to use Infino? This walkthrough uses the SDKs; the CLI and the MCP server do the same retrieval from the terminal or an AI agent.

SDK

Python, Node, or Rust — the walkthrough on this page.

CLI

Create, ingest, and search from the terminal or a coding agent — no code.

MCP server

Expose these searches as tools to an AI agent (Claude, Cursor, …).
1

Install

The Node examples below use import, so the file has to be a module. npm init -y writes "type": "commonjs", and running an import under that fails with Cannot use import statement outside a module. Either add "type": "module" to your package.json or save the file as .mjs.
Infino re-exports the Arrow crates it uses, so you don’t add them separately or match versions — reach them as infino::arrow_array and infino::arrow_schema (as the examples below do). update / delete take DataFusion predicates (col, lit); if you use them, add datafusion-expr matching Infino’s DataFusion version (cargo tree -p infino).Infino also installs the mimalloc global allocator by default. If you embed it in a process that already sets a global allocator, turn it off: infino = { default-features = false }.
2

Connect

First, open a connection. "memory://" keeps everything in memory for this walkthrough; point it at "./data" or an "s3://bucket/prefix" URI when you want your data to stick around. To run the same walkthrough against the hosted service, point it at "https://<host>/<database>" and pass an API key: see the Infino Cloud quickstart. Everything after the connect line is the same either way.
3

Create a table

Now create a table. You give it a schema and say which columns to index: a full-text index on the text, and a vector index on the embedding.
4

Add data

Let’s add a few notes. The embed helper stands in for a real embedding model so the example runs on its own. It’s a 16-dim one-hot by topic (0 = billing, 1 = appearance). Your own embeddings will be dense and higher-dimensional; see Embeddings.
5

Search it

Now the part you came for. The same table answers every kind of query: keyword, meaning, hybrid, and SQL.
Each search returns rows carrying the projected body. With this tiny corpus you get:
Expected output
keyword matched the BM25 terms; semantic ranks the billing notes first; hybrid fuses the two rankings, so the exact keyword match leads while the semantically close note follows; sql returns the two help-center rows. From here, feed the retrieved passages to your model as grounding context.

Next steps

Core concepts

The mental model: one Parquet copy, indexed and queried four ways.

Guides

Tables, embeddings, indexing, search, and storage.

Infino Cloud

Run the same searches against a hosted database, no storage to manage.

SQL Reference

Query and compose search with SQL.
Last modified on August 31, 2026