Teams4 updates


ContextOverflow
Recommendation AgentRK
Roman Karanczuk Final
May 11, 09:57 PM
Introducing RecAI — Supplier Recommendations That Show Their Work
TLDR
An intelligent supplier recommender that finds suppliers your buyers would otherwise miss — from spend history and from the open web — and explains, in plain language, why each one was picked. It ships alongside the existing recommender, not on top of it, so the lift is visible side-by-side, not asserted in a deck.
What is it?
RecAI Engine — a new supplier-recommendation service that returns three side-by-side lists in a single response: the untouched ms-recsys baseline, a "golden" list grounded in Fairmarkit's own award and response history, and a list of net-new suppliers discovered live from the open web. Each supplier row carries a structured explanation block — status, evidence by source, missing evidence, score breakdown, risks, and what changed vs the baseline — so the UI shows buyers why a supplier was recommended.
To make this visible to actual buyers, RecAI Engine also ships with a companion UI panel that lives inside the main Fairmarkit product — one click opens it next to the suppliers list, no tab-switching, no separate tool. Same data, rendered in the place buyers already work.
What can it do?
Find suppliers the legacy retriever misses
Three retrievers run in parallel — exact match on identifiers, lexical search on descriptions, semantic search on past transactions — and the engine decides how much to lean on each based on how specific the buyer's request is. A vague request leans
semantic; a specific part number leans exact.
Discover suppliers that aren't in Fairmarkit at all
Live web search, page scraping, and PDF extraction surface real procurement candidates the buyer would otherwise never see. Every one of them is identity-verified before it's shown and tagged as "needs FM validation," so a web-only supplier can never
silently outrank a verified internal one.
Explain every recommendation
Each supplier comes with a plain-English headline, supporting evidence broken out by source (your history, supplier profile, public web), missing evidence, risks, and a transparent score breakdown. Buyers can ask "why this one?" and the answer is
sitting on the row, with receipts.
Prove the lift, on real cases
A side-by-side view shows what the legacy retriever found, what the new engine surfaced, and which net-new suppliers came from the open web. Built-in eval reports recall@K, precision@K, NDCG and recall lift against a golden dataset so the improvement
is measurable, not anecdotal.
Why it matters
A recommendation is only as credible as its weakest visible output — a 90%-NDCG ranker with a wrong email or an unverified competitor at #1 is worse than a calmer ranker that ships contacts a buyer can actually call. RecAI was built around that idea:
find more, verify before you show, rank fairly, and always explain. AI does the messy parts (extracting from scraped pages, drafting explanations, classifying feedback); a deterministic, calibratable scorer makes the final call. The buyer sees an
answer they can act on, with the receipts attached.
Built by the ContextOverflow team for the Recommendation Agent competition.
🎥 Watch LoomRK
May 11, 09:58 PM
RK
Roman Karanczuk
The jupyter notebook used during demo: https://gitlab.fmdev.io/fairmarkit/ms-recsys/-/blob/context-overflow/src/notebooks/recai_demo_final.ipynb?ref_type=heads
May 11, 10:03 PM
?
RK
Roman Karanczuk
May 8, 07:08 PM
After a great discussion with Andrew and Victor, we realized it’s quite challenging to clearly demonstrate the impact of our work using only numeric metrics within JSON fields. So now we’re shifting focus toward adapting this into a more intuitive UI representation.
VK
Viktar Kushch

May 8, 10:17 PM
EA
Evgeni Alisyonok

May 9, 12:48 PM
?
RK
Roman Karanczuk
May 8, 11:17 AM
Good thing the limit was on tokens used, not on the number of lines changed in the code =)
AT
Andrey Timonin

May 8, 01:06 PM
?










Repositories: 1. Main RecAI en: ms-recsys https://gitlab.fmdev.io/fairmarkit/ms-recsys/-/merge_requests/71 2. Minor but dependency: event https://gitlab.fmdev.io/fairmarkit/event/-/merge_requests/698/diffs 3. UI Panel: frontend https://gitlab.fmdev.io/fairmarkit/frontend/-/merge_requests/3941