Le RAG n'est pas magique. Voici exactement ce qu'il fait.
Tape une phrase ci-dessous. Tu vas voir comment elle est chunkée, projetée en vecteur 2D, puis comment l'algorithme trouve les k voisins les plus prochesdans un mini-corpus sur mes projets. C'est l'épine dorsale de tout RAG en prod.
Ta query est décomposée en tokens.
↳ tape une query pour voir les tokens apparaître
Chaque chunk devient un pointdans l'espace sémantique.
En vrai, c'est R1536 (OpenAI) ou R768 (sentence-transformers). On projette ici en R2pour que ton cerveau humain capte. L'étoile = ta query.
Les 3 chunks les plus proches de ta query.
↳ tape une query pour voir les chunks remonter
La seule étape qui a besoin d'un vrai LLM.
Le retrieval ci-dessus reste 100% déterministe (c'est le point pédagogique). Ce bouton envoie les 3 chunks récupérés à un modèle Groq, avec ordre strict : répondre uniquement à partir de ces extraits, citer les sources, ou dire explicitement qu'il n'a pas l'info plutôt qu'inventer.
↳ tape une query pour activer la génération
Retrieval — déterministe : les coordonnées 2D sont calculées par matching de mots-clés (pas un vrai embedding LLM). Volontaire — c'est ce qui rend la mécanique du RAG visible plutôt qu'une boîte noire.
Génération — réelle : l'étape 04 appelle un vrai modèle (Groq, llama-3.1-8b-instant) ancré strictement sur les chunks récupérés ci-dessus. Note technique : Groq n'expose pas d'endpoint d'embeddings à ce jour — la projection 2D restera donc déterministe tant qu'un fournisseur d'embeddings (ou un modèle client-side type transformers.js) n'est pas branché à la place.