Tous les projets
EVIDENCE-GROUNDED AIBêta privée

JobCopilot

Un assistant de candidature qui relie chaque affirmation à un fait de profil vérifié, puis prépare un dossier que l’utilisateur peut relire et superviser.

Indicateur clé
121/121

affirmations étayées · benchmark gelé de 50 cas

Le parcours d’une candidature
  1. 1Profil vérifié par l’utilisateur
  2. 2Recherche de preuves pertinentes
  3. 3Matching & registre de preuves
  4. 4Brouillon relu avant action

Les faits viennent du profil. Le modèle sélectionne les preuves.

Architecture

JobCopilot

Les composants, les flux de données et les frontières de confiance du système.

Candidate · StreamlitAgent · LangGraphGroundingState & actionsuploadjob offeroffer needsverifyembedindexevidencepacktrackerconfirmedCandidateauthenticated beta userStreamlit UIprivate betaCV importPDF · DOCX · TXTLangGraph agentper-user graph & toolsOffer extractionPydantic schemasProfile factshuman-verified · IDsLLM routerOpenAI · AnthropicFAISS retrievaltenant-scoped indexEmbeddingsHugging FaceEvidence matchingLLM picks memory IDsClaim composerdeterministic proseEvidence ledger121/121 claims supportedSupabaseRLS · atomic quotasHuman reviewconfirmation gateGmail · Calendardrafts & follow-ups

Faites défiler le schéma →

Technologies

  • Python
  • LangGraph
  • Pydantic
  • FAISS
  • Hugging Face
  • OpenAI · Anthropic
  • Streamlit
  • Supabase
  • Gmail API
  • Google Calendar
  • Docker
  • GitHub Actions

Choix d’architecture

  1. 01

    Le LLM ne rédige pas les faits : il choisit seulement un à trois identifiants de mémoire vérifiés, et du code déterministe écrit les phrases correspondantes.

  2. 02

    Chaque affirmation est inscrite dans un registre de preuves ; les identifiants inconnus et les amplifications (« built » → « designed ») sont rejetés.

  3. 03

    Isolation par utilisateur : l’identité est injectée par fermeture côté serveur, le modèle ne peut pas passer de user_id ; les index FAISS sont reconstruits depuis Supabase.

  4. 04

    Aucune action externe sans confirmation : un brouillon Gmail n’est jamais compté comme une candidature envoyée.

Ce que j’ai construit

Import et vérification humaine du profil, mémoire sémantique isolée par utilisateur, extraction structurée des offres, matching, registre de preuves, composition déterministe des emails, suivi et brouillons Gmail.

Périmètre et limites

Le benchmark de grounding mesure un ensemble figé de cas : il ne garantit pas les performances sur toute nouvelle offre. Les actions externes restent supervisées. La validation avec de vrais utilisateurs est une étape distincte.
Projet suivant
RelationScope NLP