Search — attached to your bucket

Hybrid vector search in your bucket.

Ask your bucket a question. Get an answer ranked by meaning, not just by keyword — hybrid dense + sparse retrieval with RRF reranking, multimodal across text, image, audio, and video, attached to the K3 Objects prefix you already use.

contracts.vec · my-bucket · 1,284 vectors
jina-v4 · 1024-dim · HNSW
scopemy-bucket / contracts/**·top_k = 4·filter = tier = “enterprise”α = 0.6 / 0.4
what's our refund policy for enterprise customers?Search
#1
0.91
contracts/acme-msa-2026.pdfpage 14
Refunds within 30 days of invoice for enterprise tier customers; processed against the original payment method…
#2
0.87
contracts/templates/refund-v3.mdintro
Standard refund policy language for enterprise tier customers — replaces refund-v2 effective 2026-01-01…
#3
0.82
policies/finance/refund-policy.md§2.1
Refund policy applies enterprise-wide. 30-day window from invoice date. Pro-rated for monthly…
#4
0.76
contracts/zenith-msa-2024.pdf§8.2
Billing disputes and credits — Zenith will resolve any contested charge within 60 days of written notice…
4 hits·cosine·18 ms·recall@4 0.94fused score 3.36 · mode = hybrid
Pipelines — attached to a prefix

Your bucket is already indexed.

Attach a vector pipeline to a K3 Objects prefix once. Every PUT after that gets chunked, embedded, and upserted into the collection automatically — no embedder service to host, no glue code to write.

Pipeline
rag/contracts
triggerPUT s3://my-bucket/contracts/**
collectioncontracts.vec
chunkerrecursive · size=512 · overlap=64
embedderjina-embeddings-v4 · 1024-dim · L2
sparseBM25 · automatic
metriccosine
$ dodil vectors pipeline create \
  --name=rag/contracts \
  --from=my-bucket/contracts/**
live activitystreaming
18s agoPUTcontracts/acme-msa-2026.pdf2.1 MB+24 vec
42s agoPUTcontracts/msa-template-v3.md18 KB+6 vec
1m agoPUTcontracts/zenith-msa-2024.pdf3.4 MB+31 vec
3m agoPUTfinancials/q2-2026.pdf1.6 MB+18 vec
8m agoDELETEcontracts/draft-msa-v0.pdftombstone
+79 vectors in the last 5 min·collection size: 1,284p50 embed 240 ms
Hybrid — dense ∪ sparse, fused at rank

Why hybrid wins.

Dense vectors catch meaning. BM25 catches exact tokens. Reciprocal-rank fusion combines both rankings into one — for the same query, hybrid consistently surfaces the right document and the right paragraph.

Vector
dense · cosine
0.91acme-msa-2026.pdf
0.86zenith-msa-2024.pdf
0.81refund-v3.md
0.74refund-policy.md
p50 15 ms
BM25
sparse · lexical
0.93refund-v3.md
0.88refund-policy.md
0.72acme-msa-2026.pdf
0.68zenith-msa-2024.pdf
p50 11 ms
winner
Hybrid
fused · default
0.91acme-msa-2026.pdf
0.87refund-v3.md
0.82refund-policy.md
0.76zenith-msa-2024.pdf
p50 18 ms
fusion: reciprocal_rank_fusion(k=60) · α dense / sparse weights tunable per query · ground-truth recall@4 on this corpus: vector 0.72 · bm25 0.68 · hybrid 0.94
RAG — retrieve, then answer

Grounded answers, in three hops.

Retrieve from your collection, hand the context to an Ignite Models endpoint, return the answer with citations that link back to the source objects in your bucket.

01Question
❓ what's the refund window in the acme contract?
retrieve · top_k = 4 · hybrid
02Retrieve from contracts.vec
[1]0.91contracts/acme-msa-2026.pdf · page 14
[2]0.87contracts/templates/refund-v3.md · intro
[3]0.82policies/finance/refund-policy.md · §2.1
[4]0.76contracts/zenith-msa-2024.pdf · §8.2
ignite-models · llama-3-70b · context = top-4
03Answer
Acme's refund window is 30 days from invoice [1], aligning with the standard enterprise refund policy [3]. Refunds outside that window require approval from Acme's account manager per the addendum [1]. Note that Zenith (a sibling MSA in your bucket) uses a different 60-day window [4].
grounded in your bucket· citations link to source object· total round-trip ~1.2 s
Patterns — four shapes of search

Built for four jobs.

RAG, semantic search, deduplication and clustering, agent long-term memory — all the same collection type, all bucket-attached.

RAG
Grounded answers from your bucket.
❓ “refund policy?”
retrieve━━▸llama-3━━▸30 days [1]
Hybrid retrieval · citation-linked
Semantic search
Find by meaning, not keyword.
q: “documents about cooling failure”
0.89incident-2026-04-12.md · thermal runaway
0.81ops/runbook-temp-spikes.md · fan controller
0.73logs/datacenter-w03.log · humidity alarm
cosine · top-k · per-tenant filter
Dedupe + cluster
Near-duplicates, grouped.
3 clusters · 47 near-dupes · radius 0.18
HDBSCAN export · radius search
Agent memory
Conversation context, persisted.
session_47291 · turns 12
userdeploy us-west again
agentrolling deploy started · region=us-west
userwait, like last week's incident?
memory↪ recall t-3: incident-2026-04-12.md (0.91)
Per-session collection · TTL eviction
Connect — pymilvus drop-in

Speaks Milvus. Plus a few REST calls.

Use pymilvus or the Milvus REST API unchanged — your existing search code works against a Dodil endpoint. The dodil CLI adds collection management and the pipeline DSL on top.

search · contracts · top-4
# your existing pymilvus code works unchanged
from pymilvus import MilvusClient
client = MilvusClient(
uri="https://vec.uk.dodil.io",
token=DODIL_TOKEN,
)
results = client.search(
collection_name="contracts",
data=[query_embedding],
limit=4,
search_params={"mode": "hybrid"},
output_fields=["source", "page"],
)
installpip install pymilvus · drop-in clientendpoint: vec.uk.dodil.io · region: uk | eu
Powered by Milvus
Battle-tested ANN engine — indexes, quantization, fusion ranking
HNSWIVF-PQDiskANNBM25RRFFLOAT16INT8Binary
Pricing — vectors as a unit

Pay per query. Not per cluster.

No idle cluster. No per-collection fee. You pay only for the vector reads, writes, and the bytes you actually keep.

Vector reads
$2.00/ 1M VU
1 search ≈ 1 VU
Vector writes
$2.00/ 1M VU
1 upsert ≈ 1 VU
Storage
$0.20/ GB · month
compressed + indexed
Embedding
$0.03/ 1M tokens
only if you use ours
K3 = Knowledge 3

Three primitives. One bucket.

K3 Objects
files in your bucket
K3 Tables
rows in your bucket
K3 Vector
search in your bucket
you are here
FAQ

Questions, answered.

Ask your bucket.
Get an answer.

Hybrid semantic search wired into the storage your data already lives in.

Start free
Regions
UKLiveEULiveMiddle EastSoonAfricaSoon
Compliance
SOC 2In progressISO 27001In progressGDPR-readyData residencyEnforced
© 2026 Circle Technologies Pte Ltd. All rights reserved.