Skip to content

docs: multilevel_full_stack 0.552 + Kinthai retention suggestions captured - #56

Merged
jaylfc merged 1 commit into
masterfrom
docs/multilevel-full-stack-and-kinthai-notes
Apr 28, 2026
Merged

docs: multilevel_full_stack 0.552 + Kinthai retention suggestions captured#56
jaylfc merged 1 commit into
masterfrom
docs/multilevel-full-stack-and-kinthai-notes

Conversation

@jaylfc

@jaylfc jaylfc commented Apr 28, 2026

Copy link
Copy Markdown
Owner

Two updates:

  1. Add multilevel_full_stack_qwen9b_adj2 at 0.552 to the leaderboard. Adding multi-level on top of the 0.557 leader regresses by -0.005 — confirms the 9B + adj=2 ceiling.

  2. New spec doc capturing Kinthai's retention-scoring suggestions from tinyagentos#182. The suggestions don't transfer to the LoCoMo benchmark (retention weights aren't consulted at retrieval time); proper validation needs the supersede/routing benchmarks already designed but not yet shipped. Documented honestly instead of speculatively implementing.

Summary by CodeRabbit

  • Documentation
    • Updated benchmark leaderboard with new performance variant comparisons and metrics.
    • Added specifications for retention-scoring enhancements and alternative validation approaches.

…ions

- Update LoCoMo same-tier leaderboard with multilevel_full_stack at 0.552.
  Adding multi-level retrieval on top of the rrf_full_stack leader (0.557)
  regresses by -0.005, confirming the architectural plateau at the 9B +
  adj=2 + retrieval-augmented tier.

- Capture Kinthai retention-scoring suggestions (issue #182 comment
  4337347476) as a future-work spec rather than half-implementing them.
  The suggestions target taosmd/retention.py's consolidation pipeline
  (Light/REM/Deep), which is NOT exercised by the LoCoMo benchmark —
  retention weights have zero effect on retrieval at query time. Running
  LoCoMo with modified weights would burn ~5h to measure no change.

  The right validation path is the supersede + routing benchmarks
  already designed (2026-04-16-*), which exercise long-horizon memory
  management. Spec note documents what would need to ship to test these
  ideas honestly.
@jaylfc
jaylfc merged commit 35e1338 into master Apr 28, 2026
1 check failed
@jaylfc
jaylfc deleted the docs/multilevel-full-stack-and-kinthai-notes branch April 28, 2026 21:16
@coderabbitai

coderabbitai Bot commented Apr 28, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 0a51ffb7-5459-4414-9e2d-d08a2d562482

📥 Commits

Reviewing files that changed from the base of the PR and between 5c631e3 and b34123b.

📒 Files selected for processing (2)
  • docs/benchmarks.md
  • docs/specs/2026-04-28-kinthai-retention-suggestions.md

📝 Walkthrough

Walkthrough

The PR updates the LoCoMo leaderboard documentation with explicit comparison rows for RRF variants and adds a new specification document recording retention-scoring weight suggestions from external feedback on an open issue.

Changes

Cohort / File(s) Summary
Benchmark Leaderboard
docs/benchmarks.md
Updated LoCoMo leaderboard section by replacing "previous leader (no RRF)" entry with two explicit comparison rows: RRF + multi-level (0.552) and full stack without RRF (0.545), with inline notes describing observed deltas.
Retention Scoring Specifications
docs/specs/2026-04-28-kinthai-retention-suggestions.md
New specification document recording future-work retention-scoring suggestions including proposed weight adjustments for relevance (0.35–0.40) and frequency (0.15–0.20), a negative signal for unused retrieved memories, validation approaches, and instrumentation strategies.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

Poem

🐰 The benchmark rows grow more clear,
With RRF variants stripped of obscurity here,
And specs document suggestions galore,
For memories weighted just right, evermore! 📊✨

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/multilevel-full-stack-and-kinthai-notes

Comment @coderabbitai help to get the list of available commands and usage tips.

jaylfc added a commit that referenced this pull request May 30, 2026
…80)

Closes task #56. Lifts cognee's LoaderInterface ABC (66 lines at
cognee/infrastructure/loaders/LoaderInterface.py) with memobase's
discriminated-union envelope (BlobType: chat | transcript | email | doc)
on top.

  taosmd/loaders/
    __init__.py             — package exports
    interface.py            — LoaderInterface ABC (loader_name,
                              supported_extensions, supported_mime_types,
                              can_handle, async load -> Blob)
    blob.py                 — typed envelopes: Blob (base), ChatBlob,
                              TranscriptBlob, EmailBlob, DocBlob.
                              Stdlib dataclasses only — no pydantic
                              dependency to keep Pi-tier dep matrix tight.
    chat_loader.py          — JSON list / {messages: [...]} -> ChatBlob.
                              Multi-suffix '.chat.json' / '.messages.json'
                              extension matching.
    transcript_loader.py    — Whisper segments / canonical TranscriptStamp
                              list / plain list -> TranscriptBlob. JSON
                              only (VTT/SRT deferred).
    email_loader.py         — RFC 5322 .eml via stdlib email -> EmailBlob.
                              Threading headers (Message-Id, In-Reply-To)
                              preserved for downstream thread-tree work.
    doc_loader.py           — text / markdown -> DocBlob. Markdown title
                              extracted from first '# ' heading.
    registry.py             — pick_loader(path) -> LoaderInterface.
                              First registered loader whose can_handle()
                              returns True wins; DocLoader catches all.

Scope-honest note: this PR ships the abstraction. process_conversation_turn
and the existing string-based ingest paths keep working unchanged —
nothing migrated to the new path. Migration is a separate refactor
(swap call sites once we have a real consumer driving the choice).

Test plan
- 20 new tests in tests/test_loaders.py exercising each loader against
  its expected file format, the registry's path-extension extraction
  (multi-suffix support), pick_loader for each blob type + the unknown-
  extension fallback to DocLoader, register_loader's insert-before-doc
  ordering, and an end-to-end pick+load.
- All 192 total tests pass (172 before + 20 new).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant