Skip to main content

bicardinal - multimodal retrieval engine

License PyPI version

bicardinal

Multimodal retrieval engine. Drop in PDFs, Word docs, images, audio, or plain text, bicardinal extracts, summarizes, embeds, and indexes them so you can search across everything with one call.

Install

pip install bicardinal

Set your provider keys (used for OCR, vision, transcription, and summaries):

export OPENAI_API_KEY=sk-...
export MISTRAL_API_KEY=...

Deadly simple

from pathlib import Path
from bicardinal import Bicardinal

store = Bicardinal("./data")          # a home for your collections
col = store.create("docs")            # make a collection
col.init("build")                     # open it for ingestion

# Throw any file at it, pdf, docx, png, mp3, txt...
for path in Path("./my_files").glob("*"):
    col.ingest(path.name, path.read_bytes())

col.finalize() # build the index

# Search across everything
for hit in col.search("quarterly revenue growth", k=5):
    print(f"{hit.score:.3f}  {hit.filename}#{hit.chunk_index}  {hit.raw_text[:80]}")

col.close()

That's it. No pipelines to wire, no embedding code to write.

A little more

# Rank whole files by relevance
for f in col.most_similar_files("budget forecast", k=3):
    print(f.score, f.filename)

# Search within a single document
col.search_in_file("conclusion", "report.pdf", k=5)

# Reopen later, it's all on disk
col = store.open("docs")

See examples/quickstart.py for a fuller tour.

License

Apache-2.0

Metadata

Release files for bicardinal 0.0.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bicardinal 0.0.9
File Size Uploaded
bicardinal-0.0.9.tar.gz 1.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for bicardinal 0.0.9
File Interpreter ABI Platform
bicardinal-0.0.9-py3-none-any.whl Python 3 none any Details

Total release size: 1.9 MB

Release files / bicardinal-0.0.9.tar.gz

Download URL bicardinal-0.0.9.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
6b0dbba1eb1ad6dcf367b0217614d2b971973862089ccd18672f1aec6564c8a3
BLAKE2b-256 checksum
How to use checksums
9c64d5722f3f46bbd44263817e704b585a71436795468c605a45b0bb312d3531
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release files / bicardinal-0.0.9-py3-none-any.whl

Download URL bicardinal-0.0.9-py3-none-any.whl
Size 780.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
79b52bc89332e62c2640d0c1007c16d2f8bb419a07488c52f103f87d8a8340f8
BLAKE2b-256 checksum
How to use checksums
8a7f30f09449c858747be648f1571398912e4271aae46596f97fae559652bbbf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release history Release notifications | RSS feed

This release

0.0.9 This release

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 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