Commit Graph

6 Commits

Author SHA1 Message Date
ead5e78111 Gestion adverbes -ment + formes adjectifs + extension lexique personnes
## 1. Lemmatisation adverbes en -ment (contextAnalyzer.js)

Ajout gestion automatique des adverbes français :
- lentement → lent
- rapidement → rapide
- prudemment → prudent (emment → ent)
- couramment → courant (amment → ant)

Les adverbes sont maintenant traités comme leurs adjectifs de base.

## 2. Formes fléchies adjectifs (11 adjectifs enrichis)

Script automatique générant féminin/pluriel pour tous les adjectifs:
- grand → grande, grands, grandes
- petit → petite, petits, petites
- nouveau → nouvelle, nouveaux, nouvelles
- vieux → vieille, vieilles
- lumineux → lumineuse, lumineuses
- sombre, pale, translucide, patine, eclat → pluriels

## 3. Nouveaux adjectifs (02-racines-standards.json)

- **lent** → telu (+ lente, lents, lentes, lentement)
- **rapide** → hayo (+ rapides, rapidement, vif/vive)

## 4. Extension lexique personnes (21-famille.json)

Ajout vocabulaire genré conforme phonologie Confluent:
- **homme** → toko (+ hommes)
- **femme** → nako (+ femmes)
- **garçon** → toku (+ garçons) - même racine tok que homme
- **fille** → naku (+ filles) - même racine nak que femme

Cohérence sémantique : fille/garçon partagent racines avec femme/homme.

## Résultats tests

Coverage améliorée sur phrases test :
- "Les enfants des échos observent la grande fresque" : **100%** (5/5)
- "Le petit enfant marche lentement vers la grande maison" : **100%** (7/7)
- "Les femmes chantent et dansent sous la lune" : **100%** (5/5)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-30 17:09:05 +08:00
dc6affc7fd Amélioration lemmatisation FR + normalisation accents + extension lexique
## Fixes

### 1. Lemmatisation verbes français (contextAnalyzer.js)
- Fix: 'ent' → 'er' (observent → observer, marchent → marcher)
- Add: règles 'ient' → 'ir' (voient → voir)
- Add: règles 'oient' → 'oir' (alternative)
- Résultat: reconnaissance conjugaisons françaises améliorée

## Ajouts lexique

### 2. Verbe "marcher" (06-actions.json)
- Confluent: tekam (racine: teka, forme liée: tek)
- Conjugaisons: marche, marches, marchons, marchent, etc.

### 3. Prépositions → Particules (00-grammaire.json)
- "dans/sur/sous" → no (localisation spatiale)
- "avec" → vi (instrument/accompagnement)
- "pour/contre" → se (but/bénéficiaire)
- "sans" → zo (négation)
- "pendant" → at (passé vécu)

### 4. Composant "echos" (03-castes.json)
- Extraction racine: "échos" → keko
- Permet reconnaissance mot seul (pas seulement dans "Enfants des Échos")

## Refactor majeur

### 5. Normalisation accents (23 fichiers JSON)
- Suppression accents de TOUTES les clés de dictionnaire
- Cohérence avec normalisation NFD côté serveur
- Fichiers normalisés:
  * 00-grammaire.json à 22-nombres.json (tous les lexiques)

## Résultats

Couverture améliorée sur phrases test:
- "Les enfants des échos observent la grande fresque": 40% → 80% (4/5)
- "Le soleil brille sur les montagnes pendant l'été": 33% → 67% (4/6)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-30 16:43:34 +08:00
e8d17ab0d5 Implement radical lookup system for Confluent translator (83% → 92% coverage)
Major features:
- Radical-based word matching for conjugated verbs
- Morphological decomposition for compound words
- Multi-index search (byWord + byFormeLiee)
- Cascade search strategy with confidence scoring

New files:
- ConfluentTranslator/radicalMatcher.js: Extract radicals from conjugated forms
- ConfluentTranslator/morphologicalDecomposer.js: Decompose compound words
- ConfluentTranslator/plans/radical-lookup-system.md: Implementation plan
- ConfluentTranslator/test-results-radical-system.md: Test results and analysis
- ancien-confluent/lexique/00-grammaire.json: Grammar particles
- ancien-confluent/lexique/lowercase-confluent.js: Lowercase utility

Modified files:
- ConfluentTranslator/reverseIndexBuilder.js: Added byFormeLiee index
- ConfluentTranslator/confluentToFrench.js: Cascade search with radicals
- Multiple lexique JSON files: Enhanced entries with forme_liee

Test results:
- Before: 83% coverage (101/122 tokens)
- After: 92% coverage (112/122 tokens)
- Improvement: +9 percentage points

Remaining work to reach 95%+:
- Add missing particles (ve, eol)
- Enrich VERBAL_SUFFIXES (aran, vis)
- Document missing words (tiru, kala, vulu)

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 22:24:56 +08:00
987e395b1a Implémentation système de racines françaises pour matching verbes conjugués
**Code** :
- Ajout matching racine_fr dans contextAnalyzer.js (score 0.75)
- Nouvelle condition : word.startsWith(entry.racine_fr.toLowerCase())

**Lexique** :
- Ajout champ racine_fr pour 41 verbes dans 06-actions.json
- 40 verbes avec racines optimales, 1 null (aller - trop irrégulier)
- Ajout 16 verbes avec formes exceptionnelles dans synonymes_fr
- Exemples : "voi" (voir), "donn" (donner), "compar" (comparer)

**Documentation** :
- Nouveau fichier docs/RACINES_VERBES_FRANCAIS.md
- Analyse complète des 43 verbes du lexique
- Distribution : 39.5% racines 4L, 23.3% 3L, 20.9% 5L
- 79% verbes parfaitement réguliers

**Tests validés** :
- "mangé" → trouve "manger" via racine "mang" (score 0.75) 
- "pris" → trouve "prendre" via synonymes_fr (score 0.9) 
- "donnait" → trouve "donner" via lemma (score 0.95) 
- "vu" → trouve "voir" via synonymes_fr (score 0.9) 

Cascade matching finale : exact(1.0) > lemma(0.95) > synonyme(0.9) >
synonyme-lemma(0.85) > racine-fr(0.75)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 13:04:51 +08:00
bbd8d5f9c9 Amélioration majeure du système de traduction Confluent
- Prompt système strict avec Chain-of-Thought obligatoire
- Retrait des racines en dur du prompt (context skimming pur)
- Amélioration logique fallback (activation si <50% couverture)
- Ajout lexique : loup, frère, manger + fichier famille
- Debug endpoint /api/debug/prompt pour inspection
- Documentation complète système racines françaises

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 12:18:55 +08:00
894645e640 Implémentation du système de prompt contextuel intelligent
Nouveau système qui analyse le texte français et génère des prompts optimisés en incluant uniquement le vocabulaire pertinent du lexique, réduisant drastiquement le nombre de tokens.

# Backend

- contextAnalyzer.js : Analyse contextuelle avec lemmatisation française
  - Tokenization avec normalisation des accents
  - Recherche intelligente (correspondances exactes, synonymes, formes conjuguées)
  - Calcul dynamique du nombre max d'entrées selon longueur (30/50/100)
  - Expansion sémantique niveau 1 (modulaire pour futur)
  - Fallback racines (309 racines si mots inconnus)

- promptBuilder.js : Génération de prompts optimisés
  - Templates de base sans lexique massif
  - Injection ciblée du vocabulaire pertinent
  - Formatage par type (racines sacrées, standards, verbes)
  - Support fallback avec toutes les racines

- server.js : Intégration API avec structure 3 layers
  - Layer 1: Traduction pure
  - Layer 2: Métadonnées contextuelles (mots trouvés, optimisation)
  - Layer 3: Explications du LLM (décomposition, notes)

- lexiqueLoader.js : Fusion du lexique simple data/lexique-francais-confluent.json
  - Charge 636 entrées (516 ancien + 120 merged)

# Frontend

- index.html : Interface 3 layers collapsibles
  - Layer 1 (toujours visible) : Traduction avec mise en valeur
  - Layer 2 (collapsible) : Contexte lexical + statistiques d'optimisation
  - Layer 3 (collapsible) : Explications linguistiques du LLM
  - Design dark complet (fix fond blanc + listes déroulantes)
  - Animations smooth pour expand/collapse

# Documentation

- docs/PROMPT_CONTEXTUEL_INTELLIGENT.md : Plan complet validé
  - Architecture technique détaillée
  - Cas d'usage et décisions de design
  - Métriques de succès

# Tests

- Tests exhaustifs avec validation exigeante
- Économie moyenne : 81% de tokens
- Économie minimale : 52% (même avec fallback)
- Context skimming opérationnel et validé

# Corrections

- ancien-confluent/lexique/02-racines-standards.json : Fix erreur JSON ligne 527

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 11:08:45 +08:00