Commit Graph
20 Commits
Author SHA1 Message Date
Dylan CouzonandClaude Opus 4.7 3de7b1ddfb tighten intro, dataset, and wrap-up; add notebook pointer before setup
Tightens awkward and stale phrasing across the intro and Dataset
section (per a full review pass), repositions FormulaQuery in Wrapping
Up as an alternative rather than part of the default pipeline, drops
the redundant 'document-side equivalent' closing line, and adds a
one-line pointer to the notebook right before the Setup section so
readers can pivot to runnable code.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 20:23:42 -04:00
Dylan CouzonandClaude Opus 4.7 b30140820f tighten retrieval section and remove vector-description duplication
Adds dense_abstract as a fourth prefetch in retrieve() since we
ingest it already. Removes the unactionable dense_abstract hedge
paragraph, the When to Group section (the prefetch-limit gotcha
folds into a code comment), the duplicate schema-section vector
bullets, and the awkward transition sentence between the code and
the design subsections. Replaces 'summary' with 'abstract as a
whole' in descriptions for consistency with the schema rename done
earlier.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 19:53:39 -04:00
Dylan CouzonandClaude Opus 4.7 479d305aca explain query_points_groups inline and remove pattern-doesnt-fit section
Adds a one-line comment above the query_points_groups call so readers
see what the function does without waiting for the When to Group
subsection (which now sits at the end of the design-decisions list).

Removes the entire 'Where This Pattern Doesn't Fit' section: the
short/homogeneous paragraph read as obvious (a reader who's deep into
this tutorial wouldn't try to multi-rep a tweet), and the
inconsistent-metadata paragraph was too vague to be actionable.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 19:08:37 -04:00
Dylan CouzonandClaude Opus 4.7 8ea4653ee8 move categories from BM25 input to filterable payload
Renames sparse_keywords to sparse_title (the vector now indexes only
the title text), adds a keyword index on the tags payload field, and
gives retrieve() an optional tags parameter that builds a query_filter
when set. Pre-filtering on the tags payload is faster and more precise
than mixing categories into BM25 lexical matching.

Updates the schema description bullets, the prefetch justification,
the intro failure-mode list, and the dataset framing to match the
new design. Drops avg_len from 15 to 10 to reflect title-only word
counts.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 18:44:37 -04:00
Dylan CouzonandClaude Opus 4.7 8abae12a8c consolidate chunking note and remove open ends section
Moves the standalone chunking-strategy sentence into the Dataset
paragraph that already explains why we chunk, and drops the dedicated
Open Ends section. The chunking-method link list (POMA-AI VST, Jina,
Chonkie) goes away with the section, and the BM25F note is also
removed since the workaround it describes is what the tutorial
already demonstrates. Cleans up two stale step-number references in
Wrapping Up.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 18:18:51 -04:00
Dylan CouzonandClaude Opus 4.7 a9610d2a30 restructure fusion section to cover four named strategies
Renames "How to Fuse" to "Which Fusion to Use" and expands it to
cover RRF (default), Weighted RRF, DBSF, and custom formulas as four
named options, with the FormulaQuery code block moved in from what
was the boosting section. Softens RRF framing from "stick with RRF
unless..." to "reasonable starting point; variants often do better
once you have an eval set." Adds the distribution-alignment
explanation in the custom-formula paragraph and links the in-repo
Decay Functions and Score Boosting references along with the RRF vs
DBSF FAQ entry.

The "When to Boost, When to Rerank" section now only covers true
boosting (recency, authority, decay) and reranking, and is reordered
to sit immediately after fusion so the ranking decisions stay
together. The "When to Group, When Not To" section moves to the end
as a presentation concern.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 17:33:32 -04:00
Dylan CouzonandClaude Opus 4.7 68cec300f2 set avg_len for BM25 ingestion and trim parameter notes
Calibrates BM25 length normalization for the short title+categories
sparse field with a comment on why. Removes redundant k1/b/avg_len
prose from the tutorial Open Ends section and the cross-link paragraph
in text-search.md, since the BM25 Parameters subsection above already
documents calibration with a working example.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 16:06:03 -04:00
Dylan CouzonandClaude Opus 4.7 376202a113 remove lookup_from references, point to with_lookup for payload splits
The two lookup_from mentions were misleading: the feature is for
querying by ID across collections, not for splitting representation
storage. The line-107 paragraph now points readers to the documented
with_lookup pattern for the payload-split case and stays silent on
vector splits, which are a separate design problem (multiple queries
plus client-side fusion) that doesn't fit this tutorial's scope.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 15:24:08 -04:00
Dylan CouzonandClaude Opus 4.7 433cae62a5 rename dense_summary to dense_abstract and explain chunking choice
The arxiv data has abstracts, not summaries. Renaming the named
vector and prose throughout removes the ambiguity flagged on the PR.
Adds a short paragraph to the Dataset section explaining that
abstracts fit any embedding model's context window, so chunking is
included to mirror the pipeline shape you'd use on full bodies.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 15:03:52 -04:00
Dylan CouzonandClaude Opus 4.7 972568940d switch tutorial to qdrant cloud inference and core bm25
Drops FastEmbed in favor of server-side embedding via Cloud Inference
for dense vectors and core BM25 (in Qdrant since 1.15) for sparse.
Simplifies ingestion and query code; adds an aside covering the
self-host path. Also clears two em dashes from the tutorial prose.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 14:48:21 -04:00
Dylan CouzonandClaude Opus 4.7 300397b467 point hybrid search prerequisite at text search guide
Replaces the FastEmbed tutorial link with the hybrid search section
of the core Text Search guide, since FastEmbed is a satellite library.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 14:32:47 -04:00
Dylan Couzon 66264ac07c Improve category filter and scale corpus to match notebook 2026-05-06 16:54:52 -04:00
Dylan Couzon 81747bcbf2 remove instructions 2026-05-06 15:00:06 -04:00
Dylan CouzonandClaude Opus 4.7 bb877b23f7 add cross-links from search and vectors docs to multi-rep tutorial
- hybrid-queries: see-also link at end of grouping section
- vectors: clarify MaxSim returns one combined score and point to named vectors + tutorial
- text-search: BM25 short-field calibration note plus BM25F workaround pointer

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 19:10:24 -04:00
Dylan Couzon 120895c75d update notebook 2026-05-05 19:00:14 -04:00
Dylan Couzon 67ebec2831 add sidebar + menu references 2026-05-05 09:57:35 -04:00
Dylan Couzon ce3223541f add tutorial 2026-05-05 09:57:25 -04:00
Dylan Couzon 384ef7f8f7 Update multi-representation-search-task.md 2026-05-05 08:31:19 -04:00
Dylan Couzon 1cedd9ccaf Add instructions 2026-04-28 09:28:12 -04:00
Dylan Couzon 5afc3b2c8c chore: ignore local tooling artifacts and lockfile 2026-04-20 11:08:39 -04:00