Suggestions That Tell You "Why" — Tasukiba, the AI Operations Secretary
Suggestions get a “why” alongside them
This is the last of the three unique features in the series.
- Suggestion engine (released) — structured-form inputs surface past assets
- Chat semantic search (released) — natural-language pull of past assets
- The “Why?” feature (released, today’s topic) — suggestions come with a “why this is related” explanation
Today is feature 3, the “Why?” feature. Tasukiba’s Pro plan differentiator, written alongside the technical decision behind it — LLM re-ranking.
”Relevance 0.82” alone isn’t enough
B-2’s suggestion engine lines up related assets by 3-axis weighted score. On screen, that looks like:
Related knowledge
- "Stripe Webhook idempotency design" (relevance 0.82)
- "PII masking design for e-commerce" (relevance 0.79)
- ...
That’s useful. But after using it for a while, a small itch stayed with me.
What does “0.82” actually mean?
The number is there. The cosine similarity is 0.82 — fine. But translating that into a business judgment is left to the user. “I’ll skim this one.” “This one probably isn’t relevant today.” That call still happens in the human head.
For suggestions to actually get used, I started to think, “why this is related” needs to be readable in human language. One step further down.
What the “Why?” feature looks like
The actual screen looks like this (available on the Pro plan):
Related knowledge (Pro plan, with "Why?")
- "Stripe Webhook idempotency design" (relevance 0.82)
💡 Why: The payment processing mentioned in your new "E-commerce
renewal" project and the webhook idempotency in this knowledge
both address the same problem — "same operation received
multiple times must yield a single outcome" — in different
contexts.
- "PII masking design for e-commerce" (relevance 0.79)
💡 Why: The "member feature" included in your scope overlaps
with the PII (personally identifiable information) subject
of this knowledge.
What was just a number now has a sentence a human can read and accept. With that, “should I open this?” becomes a 3-second decision.
The technical structure — what LLM re-ranking is
A bit on the technical side (deep details go to Qiita; the skeleton stays here).
The “Why?” feature applies two-stage ranking to the suggestion results.
[Step 1] Pick top-N (e.g. top 20) by 3-axis weighted score
↓
[Step 2] Pass those N to Anthropic Claude Sonnet
↓
LLM generates "why this is related" text
↓
LLM also reorders by its own judgment
↓
[Step 3] Display top-K (e.g. 5) with "Why?" attached
This pattern is called LLM re-ranking. Stage 1 (3-axis score) does wide, fast, cheap filtering. Stage 2 (LLM) does deep, slow, expensive judgment.
Why two stages
Stage 1 (3-axis weighted score):
- Wide: narrows from ~50 candidates
- Fast: pgvector computes in-DB (hundreds of ms)
- Cheap: no external API call (B-2’s “zero cost at search time”)
Stage 2 (LLM re-ranking):
- Deep: contextual judgment beyond numerical similarity
- Slow: LLM call takes 1–several seconds
- Expensive: Sonnet usage billing applies
Running stage 1 over everything is cheap and fast but produces no “why.” Running stage 2 over everything explodes cost and time.
So we split: stage 1 narrows, stage 2 explains. That separation is directly connected to B-3’s pricing philosophy: “charge only for what was used, only on operations that need it.”
Why this is the Pro plan differentiator
The “Why?” feature is positioned as the Pro plan differentiator in B-3’s three-plan structure.
| Plan | Monthly | Suggestion output |
|---|---|---|
| Beginner | $0 | 3-axis weighted score (numbers only) |
| Expert | $0 + Haiku usage | 3-axis weighted score (numbers only) |
| Pro | $0 + Sonnet usage | 3-axis score + “Why?” explanation |
Only Pro uses the Sonnet model, for cost reasons. Haiku could generate “Why?” text, but at the quality bar needed for business use, Sonnet is markedly more reliable — that’s the current call.
For users willing to pay for one layer of deeper experience, Pro adds words alongside the numbers. That’s the Pro plan differentiation.
Hallucination prevention — what we don’t let the LLM do
This is where I spend the most thought.
LLMs sometimes lie (hallucinate). If the “Why?” feature returns a fabricated reason, it could push the user toward the wrong business decision. That directly damages trust as a business SaaS.
Tasukiba’s “Why?” feature defines a “don’t do” list for the LLM upfront.
| LLM is allowed to | LLM is not allowed to |
|---|---|
| Articulate “relevance” between candidate and query | Generate information not in the candidate |
| Summarize the candidate’s content | Inject general knowledge or speculation |
| Provide grounds for “why related” | Fabricate numerical scores |
At the prompt level, “don’t bring in information not in the candidate as a reason” is strongly constrained. On top of that, the LLM’s input and output are strictly separated with XML tags, and the output is validated and trimmed before it’s returned — safeguards that are built into the implementation.
Not “LLM is useful, hand it everything,” but “narrow the LLM’s job precisely.” Same stance as A-4’s differentiation axes: “don’t compromise on functionality; never accept UI complexity.” Same root.
The “Why?” feature completes Tasukiba’s experience
Lining up the three unique features:
| Feature | Experience | Embedding foundation | Additional tech |
|---|---|---|---|
| Suggestion engine | Past assets line up as numbers | Voyage + pgvector | — |
| Chat semantic search | Past assets pulled by conversation | Voyage + pgvector | Voyage (query embedding) |
| “Why?” feature | Reasons line up beside the numbers | Voyage + pgvector | Claude Sonnet (LLM re-ranking) |
These three aren’t separate features. They’re three different surfaces on the same embedding foundation. The “surfacing” core from B-2 branches into all three.
One sentence
The “Why?” feature, compressed:
A feature that puts human words next to the numbers.
The suggestion engine puts “the past you forgot” on screen. Chat semantic search sits beside you as “a companion you can talk to.” And the “Why?” feature writes, alongside each candidate, “why is this one sitting here, right now?”
With these three, Tasukiba’s unique features reach completion. All three are live as of release — but the “Why?”-equipped experience is, in my mind, the feature that genuinely takes on the problem named in series part 1: “humans aren’t spending time on the work only humans can do.”
That closes the technical bonus chapters. From here, I’ll keep writing as things unfold — Dogfooding learnings, post-release operational impressions, on a flexible cadence.
Related posts
- Talking to Tasukiba in natural language — chat semantic search — bonus chapter 1
- The suggestion engine — putting “the past you forgot” on screen — shared embedding foundation
- Three plans, usage-based — pricing to continue — Pro plan differentiator basis
About Tasukiba
The “Why?” feature is the core of Tasukiba Knowledge Relay’s Pro plan, live as of release (2026-06-01). Each feature’s experience is on the product page.