Try InnerMatch in your browser — no setup, no API key. In five rounds of feedback the engine learns your preferences and shows, with a measurable score, how adaptive matching beats Euclidean distance.
May 12, 2026 · Behrang Mehrparvar
We are excited to announce the launch of the InnerMatch interactive demo. It is now publicly available at synaptosearch.com/innermatch_demo — no API key, no infrastructure, and no commitment required. Create a free account, pick your skills, and watch the engine learn.
The demo uses job matching as its domain. You describe your technical skills by selecting from a library of over eighty skill chips — programming languages, frameworks, databases, cloud platforms, ML tools, and soft skills. The engine then runs two approaches in parallel and lets you compare the results directly.
The experience unfolds in four steps:
Search and select the skills that describe you: Python, Java, Go, React, Kubernetes, machine learning, leadership — or any combination across the full catalogue. These selections form your initial skill vector. You can filter the chip list with a search box to find anything quickly.
Before InnerMatch does anything, you see a static baseline: the top 10 jobs ranked purely by Euclidean distance between your skill vector and each job's required-skill vector. This is the conventional approach — lower distance means closer match.
The baseline is impersonal: every candidate with the same skills sees the same list. You like or dislike each result. These votes are recorded to measure your true preferences, but are not yet sent to InnerMatch. They will be used at the end to compute a score.
This is where adaptive learning begins. InnerMatch runs five rounds, showing two jobs per round. Each pair uses a dual strategy designed to balance exploitation and exploration:
You like or dislike each job. Your feedback is sent to the engine immediately, and the model is updated before the next pair is selected. By the end of round five, InnerMatch has received up to ten preference signals and has adjusted its internal feature weights accordingly — in real time, with no offline retraining cycle.
The session is ephemeral: your data is wiped from the server the moment you reach the results page.
The final screen places the two approaches side by side. On the left: the original Euclidean baseline, unchanged. On the right: the ten jobs InnerMatch surfaced across your five rounds, in the order they were shown.
Green badges mark jobs you liked in each column. Below the comparison you see two additional outputs:
+go, +graphql, +docker)−ci_cd, −deep_learning, −aws)At the bottom of the results page both approaches are given a MRR (Mean Reciprocal Rank) score. For each job you liked, the engine finds its position in the ranking and computes 1 ÷ position. Rank #1 scores 1.000; rank #2 scores 0.500; rank #5 scores 0.200; rank #10 scores 0.100. MRR is the average of those values across all liked jobs. A score of 1.000 would mean every job you liked was ranked first.
In two representative sessions captured during development:
| Session | Skills selected | Baseline MRR | InnerMatch MRR | Improvement |
|---|---|---|---|---|
| Sample 1 | python, java, go, php, git | 0.214 | 0.238 | +0.024 |
| Sample 2 | leadership | 0.211 | 0.440 | +0.229 |
The second session is particularly illustrative. When "leadership" is the only skill selected, Euclidean distance surfaces cloud and mobile engineers because they happen to share adjacent skill tags with leadership roles. InnerMatch, guided by five rounds of feedback, learns that the user actually wants management and architecture roles — and surfaces Engineering Manager, Software Architect, and Technical Product Manager in the first three positions. The MRR improvement of +0.229 is not an edge case; it reflects exactly the kind of latent preference structure that static distance cannot capture.
InnerMatch does not simply re-rank a fixed list. After each round, the model updates its internal weights across all feature dimensions — learning which skills co-occur in jobs you like, which tend to appear in jobs you reject, and how those combinations interact. This is the cross-feature effect modelling that distinguishes InnerMatch from vector similarity: two skills that are each individually neutral may become strongly positive or strongly negative in combination.
The demo is intentionally constrained to five rounds and a job-matching dataset. The production API supports any feature domain, continuous feedback loops, and much longer learning trajectories.
If you want to go deeper than clicking through the UI, the developer-friendly version of the demo is available as an interactive Swagger UI at synaptosearch.com/innermatch_demo/swagger.php. It exposes the full OpenAPI specification for the demo API — the same endpoints the UI demo calls under the hood.
From the Swagger UI you can call all six endpoints directly:
POST /api/v1/rank)POST /api/v1/follow) or a deliberately contrasting one (POST /api/v1/alternate)POST /api/v1/feedback)POST /api/v1/features)POST /api/v1/remove_model)No API key is needed for the demo tier. The Swagger UI is the fastest way for developers to understand the integration surface before requesting production access.
Try the API Explorer
Fire live API calls in your browser — full schema, request builder, and real responses from the running InnerMatch engine.
⚙ Open Swagger UIThe demo backend is served directly from the InnerMatch listing on the AWS Marketplace. Each feedback event is submitted to the online-learning API in real time. There is no batch step, no model file to load, and no delay between your vote and the next pair being selected.