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

Release files for bicardinal 0.0.8

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.8
File Size Uploaded
bicardinal-0.0.8.tar.gz 1.2 MB Details

Built distribution (wheel)

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

Total release size: 1.9 MB

Release files / bicardinal-0.0.8.tar.gz

Download URL bicardinal-0.0.8.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
3210735dcdb49d2eee9bae439b54c7a662ef1dfe0612635213739d7d19ab9aaf
BLAKE2b-256 checksum
How to use checksums
7d5565dc4e149f0baecc17e50406776b10a291d5917d431e6e7c65eab7003c50
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.8-py3-none-any.whl

Download URL bicardinal-0.0.8-py3-none-any.whl
Size 780.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
59ebd7361f272560036d80f43d08f507e595c4030b0462eb6d1590b2d13b3fbc
BLAKE2b-256 checksum
How to use checksums
ad6910a9d6ab5942bdfbed343dacf7aaab1e4565166654e08fbef3638d8e317a
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.8 This release

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