Project

Vestiaire

Users could describe what they wanted in plain language. The system translated that request into structured criteria and queried supported product data.

Vestiaire

Search workflow

Overview

Natural-language search over product data

Traditional filters work when users already know the exact fields. This workflow handled requests that started from style, occasion, combinations, or loose preference language.

Problem

The problem

Users do not always search with filter-ready terms. They often describe what they want in a way that has to be translated before the system can return relevant products.

Constraints

Constraints

The workflow needed to stay grounded in real catalog data, avoid inventing unsupported attributes, and keep the handoff between interpretation and backend search explicit.

Contribution

My work

I built the workflow between natural-language interpretation, backend services, and product data so open-ended requests could become structured, validated search criteria.

System

Request flow

User request
↓
Intent and criteria extraction
↓
Backend tool and API calls
↓
PostgreSQL and Neo4j product data
↓
Result validation and structured recommendations

Technical decisions

  • Translate free-form language into criteria the backend can validate
  • Keep catalog lookup in tools and services rather than trusting model text alone
  • Return structured recommendations so the UI stays consistent with supported data

Result

What it improved

The workflow turned open-ended language into search inputs the system could actually support, which made discovery easier without losing grounding in the catalog.

FAQ

Common questions

How were open-ended requests turned into product criteria?

The orchestration layer parsed user language into structured criteria that backend services could validate against available catalog data.

How were recommendations kept grounded?

Recommendations were built from tool and API calls over real product data instead of relying on free-form model output alone.

Why not rely on filters alone?

Filters work when the user already knows the exact fields. Natural-language discovery helps when the request starts from style, occasion, color combinations, or preference language.

Where did the product data live?

The workflow connected backend services to product data in PostgreSQL and Neo4j, then returned structured recommendations based on what the catalog could actually support.