ramenbuild glyph ramenbuild

Recruitment agent: talent matching workflow

An agentic workflow demo that shows how agentic ralph style loops handle structured data extraction, retrieval and reasoning steps to provide personalised job recommendations

Requirements

  • Chrome — WebLLM uses WebGPU, which other browsers don't support
  • GPU with at least 5 GB VRAM
  • Fast internet — ~2 GB of model weights downloaded on first run

What this covers

This is a basic job recommendation system with below components:

  • Job posts parser: An agent to extract structured data from job posts. For this demo we are using unstructured job posts scraped from a startup job board.
  • CV / Resume parser: A vision language model for PDF CV parsing and an agent to extract structured candidate profile.
  • Job recommender: An agent that refines job matches based on candidate preferences.
STEP 01

Let's start by loading test data

Job posts parser agent

We use an LLM thinking loop to convert plain text job post to structured data.

  • . This acts as a simple harness for the agent loop. The agent iterates until the output passes schema validation.
  • . The retry loop that drives the agent: prompt construction, streaming, JSON extraction, and schema-guided correction.
STEP 02

Start the job parser agent.
Downloads ~2 GB of model weights to this browser and runs an LLM via WebGPU. Tested on Chrome + MacBook Pro M1 16 GB.

CV parser agent

We use an LLM thinking loop to convert a plain text CV to structured candidate profile data.

  • . This acts as a harness for the agent loop. The agent retries until the output passes schema validation.
STEP 03

Start the CV parser agent.
Downloads ~2 GB of model weights to this browser and runs an LLM via WebGPU. Tested on Chrome + MacBook Pro M1 16 GB.

Job recommender

With structured job and candidate data in place, the recommender runs inside an in-browser PostgreSQL instance (PGlite). It uses vector similarity and BM25 full-text search to rank jobs against the candidate profile.

  • Vector search over role, skills, and experience embeddings
  • BM25 full-text ranking via pg_textsearch
  • Runs entirely in this browser session — no external database
STEP 04

Start the job recommender.
Initialises an in-browser PostgreSQL database and loads job, CV, and work experience data.

Refine job matches

Use an LLM to filter the ranked results by your own preferences. The agent reads all 10 job matches and your stated criteria, then returns only the jobs that fit.

STEP 05

Enter your preferences and refine the shortlist.
Requires the recommender agent (Step 04) to have run first.

Building something like this?

If you're building a recruitment agent or a similar workflow-heavy AI product, the first conversation is about mapping the real process — not a feature list. 30 minutes. No pitch.