## SelectiveSmartTouch (NEW) - Architecture révolutionnaire: Analyse intelligente → Améliorations ciblées précises - 5 modules: SmartAnalysisLayer, SmartTechnicalLayer, SmartStyleLayer, SmartReadabilityLayer, SmartTouchCore - Système 10% segments: amélioration uniquement des segments les plus faibles (intensity-based) - Détection contexte globale pour prompts adaptatifs multi-secteurs - Intégration complète dans PipelineExecutor et PipelineDefinition ## Pipeline Validator Spec (NEW) - Spécification complète système validation qualité par LLM - 5 critères universels: Qualité, Verbosité, SEO, Répétitions, Naturalité - Échantillonnage intelligent par filtrage balises (pas XML) - Évaluation multi-versions avec justifications détaillées - Coût estimé: ~$1/validation (260 appels LLM) ## Optimizations - Réduction intensités fullEnhancement (technical 1.0→0.7, style 0.8→0.5) - Ajout gardes-fous anti-familiarité excessive dans StyleLayer - Sauvegarde étapes intermédiaires activée par défaut (pipeline-runner) ## Fixes - Fix typo critique SmartTouchCore.js:110 (determineLayers ToApply → determineLayersToApply) - Prompts généralisés multi-secteurs (e-commerce, SaaS, services, informatif) 🚀 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
351 lines
9.8 KiB
Markdown
351 lines
9.8 KiB
Markdown
# SelectiveSmartTouch - Architecture Nouvelle Génération
|
||
|
||
## 🎯 **Concept Révolutionnaire**
|
||
|
||
SelectiveSmartTouch est une **refonte complète de l'approche Selective Enhancement** basée sur le principe **Analyse → Amélioration Ciblée**.
|
||
|
||
### **Problème de l'ancienne approche**
|
||
```
|
||
❌ Approche "Améliore tout" (Selective Enhancement legacy):
|
||
LLM: "Voici un texte, améliore-le techniquement"
|
||
→ LLM devine ce qui manque
|
||
→ Résultats aléatoires, parfois hors-sujet
|
||
→ Prompts spécifiques à la signalétique (pas généralisable)
|
||
→ Pas de contrôle précis sur les modifications
|
||
```
|
||
|
||
### **Solution SmartTouch**
|
||
```
|
||
✅ Approche Analyse→Ciblée (SelectiveSmartTouch):
|
||
1. ANALYSE (LLM température 0.2): "Ce texte manque de : X, Y, Z"
|
||
2. AMÉLIORATION GUIDÉE: "Ajoute précisément X, Y, Z sans toucher au reste"
|
||
→ Contrôle total, résultats prévisibles
|
||
→ Prompts génériques (multi-secteurs)
|
||
→ Logs structurés JSON (debugging facile)
|
||
→ Coûts optimisés (analyse=petit modèle)
|
||
```
|
||
|
||
---
|
||
|
||
## 📂 **Architecture Modulaire**
|
||
|
||
### **Phase 1: Analyse Intelligente**
|
||
**SmartAnalysisLayer.js** - Analyse objective du contenu
|
||
|
||
```javascript
|
||
const analysis = await smartAnalysis.analyzeElement(content, { mc0, personality });
|
||
|
||
// Retourne JSON structuré:
|
||
{
|
||
"technical": {
|
||
"needed": true,
|
||
"score": 0.4,
|
||
"missing": ["données chiffrées", "spécifications"],
|
||
"issues": ["vocabulaire trop générique"]
|
||
},
|
||
"style": {
|
||
"needed": true,
|
||
"score": 0.5,
|
||
"genericPhrases": ["nos solutions", "notre expertise"]
|
||
},
|
||
"readability": {
|
||
"needed": false,
|
||
"score": 0.8,
|
||
"complexSentences": [],
|
||
"repetitiveConnectors": []
|
||
},
|
||
"improvements": [
|
||
"Ajouter données concrètes (chiffres, dimensions)",
|
||
"Remplacer expressions génériques: nos solutions, notre expertise"
|
||
],
|
||
"overallScore": 0.57
|
||
}
|
||
```
|
||
|
||
**Caractéristiques** :
|
||
- LLM: GPT-4o-mini (objectivité)
|
||
- Température: 0.2 (précision max)
|
||
- Fallback algorithmique si LLM échoue
|
||
- Analyse multi-dimensionnelle (technique, style, lisibilité, vocabulaire)
|
||
|
||
### **Phase 2: Améliorations Ciblées**
|
||
|
||
#### **SmartTechnicalLayer.js**
|
||
Applique **UNIQUEMENT** les améliorations techniques identifiées
|
||
|
||
```javascript
|
||
const result = await smartTechnical.applyTargeted(content, analysis, {
|
||
mc0, personality, intensity: 1.0
|
||
});
|
||
|
||
// Skip automatique si analysis.technical.needed === false
|
||
// Prompt ciblé: "Ajoute données chiffrées, remplace vocabulaire générique"
|
||
```
|
||
|
||
**Prompts génériques multi-secteurs** :
|
||
- E-commerce: "Dimensions: 30x20cm, épaisseur 3mm"
|
||
- SaaS: "Compatible avec 95% des systèmes"
|
||
- Services: "Délai: 3-5 jours ouvrés"
|
||
|
||
#### **SmartStyleLayer.js**
|
||
Améliorations style **UNIQUEMENT** si nécessaire
|
||
|
||
```javascript
|
||
const result = await smartStyle.applyTargeted(content, analysis, {
|
||
mc0, personality, intensity: 1.0
|
||
});
|
||
|
||
// Prompts adaptatifs selon secteur
|
||
// Exemples mode, SaaS, services, contenu informatif
|
||
```
|
||
|
||
#### **SmartReadabilityLayer.js**
|
||
Lisibilité **UNIQUEMENT** si score < 0.6
|
||
|
||
```javascript
|
||
const result = await smartReadability.applyTargeted(content, analysis, {
|
||
intensity: 1.0
|
||
});
|
||
|
||
// Simplifie phrases longues
|
||
// Varie connecteurs répétitifs
|
||
// Fluidifie structure
|
||
```
|
||
|
||
---
|
||
|
||
## 🚀 **Utilisation**
|
||
|
||
### **1. Via SmartTouchCore (orchestrateur)**
|
||
|
||
```javascript
|
||
const { SmartTouchCore } = require('./selective-smart-touch/SmartTouchCore');
|
||
|
||
const smartTouch = new SmartTouchCore();
|
||
|
||
const result = await smartTouch.apply(content, {
|
||
mode: 'full', // ou 'technical_only', 'style_only', etc.
|
||
intensity: 1.0,
|
||
csvData: { mc0, personality },
|
||
layersOrder: ['technical', 'style', 'readability'] // Personnalisable
|
||
});
|
||
|
||
console.log(result.modifications); // Nombre de modifications
|
||
console.log(result.analysisResults); // Analyse JSON détaillée
|
||
```
|
||
|
||
### **2. Via Pipeline Builder (UI)**
|
||
|
||
1. Glisser module **"SmartTouch (Analyse→Ciblé)"** depuis palette Enhancement
|
||
2. Choisir mode:
|
||
- **full**: Analyse + toutes améliorations (recommandé)
|
||
- **analysis_only**: Analyse seule pour debugging
|
||
- **technical_only**: Technique uniquement
|
||
- **style_only**: Style uniquement
|
||
- **readability_only**: Lisibilité uniquement
|
||
|
||
3. Configurer intensité (0.1-2.0)
|
||
4. Sauvegarder et exécuter
|
||
|
||
### **3. Via PipelineExecutor**
|
||
|
||
```javascript
|
||
const pipeline = {
|
||
name: "SmartTouch Test",
|
||
pipeline: [
|
||
{ step: 1, module: 'generation', mode: 'simple', intensity: 1.0 },
|
||
{ step: 2, module: 'smarttouch', mode: 'full', intensity: 1.0 }
|
||
]
|
||
};
|
||
|
||
const executor = new PipelineExecutor();
|
||
const result = await executor.execute(pipeline, rowNumber);
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 **Modes Disponibles**
|
||
|
||
| Mode | Description | Couches appliquées | Cas d'usage |
|
||
|------|-------------|-------------------|-------------|
|
||
| **full** | Analyse + toutes améliorations | Technical + Style + Readability | Production (recommandé) |
|
||
| **analysis_only** | Analyse sans modification | Aucune | Debugging, audit qualité |
|
||
| **technical_only** | Améliorations techniques ciblées | Technical | Contenu trop générique |
|
||
| **style_only** | Améliorations style ciblées | Style | Adapter personnalité |
|
||
| **readability_only** | Améliorations lisibilité ciblées | Readability | Phrases complexes |
|
||
|
||
---
|
||
|
||
## 🎨 **Exemples Génériques (Multi-Secteurs)**
|
||
|
||
### **E-commerce Mode**
|
||
```
|
||
❌ AVANT: "Produit de qualité aux dimensions optimales"
|
||
✅ APRÈS: "Dimensions: 30x20cm, épaisseur 3mm - qualité premium"
|
||
```
|
||
|
||
### **SaaS/Tech**
|
||
```
|
||
❌ AVANT: "Notre plateforme innovante optimise vos processus"
|
||
✅ APRÈS: "Automatisez vos workflows en 3 clics - compatible 95% des systèmes"
|
||
```
|
||
|
||
### **Services Professionnels**
|
||
```
|
||
❌ AVANT: "Nos solutions de qualité"
|
||
✅ APRÈS: "Expertise comptable garantissant votre conformité fiscale"
|
||
```
|
||
|
||
### **Contenu Informatif**
|
||
```
|
||
❌ AVANT: "Le réchauffement climatique est un problème important"
|
||
✅ APRÈS: "Le réchauffement climatique atteint +1.2°C depuis 1850"
|
||
```
|
||
|
||
---
|
||
|
||
## 🔄 **Comparaison Selective vs SmartTouch**
|
||
|
||
| Critère | Selective (ancien) | SmartTouch (nouveau) |
|
||
|---------|-------------------|----------------------|
|
||
| **Contrôle** | ❌ Faible | ✅ Fort (dictature exacte) |
|
||
| **Prévisibilité** | ❌ Aléatoire | ✅ Déterministe |
|
||
| **Généricité** | ❌ Spécifique signalétique | ✅ Multi-secteurs |
|
||
| **Debugging** | ❌ Boîte noire | ✅ Analyse JSON visible |
|
||
| **Coûts tokens** | ⚠️ Moyen | ✅ Optimisé |
|
||
| **Qualité** | ⚠️ Variable | ✅ Consistante |
|
||
|
||
---
|
||
|
||
## 📈 **Statistiques & Logs**
|
||
|
||
SmartTouch retourne des stats détaillées :
|
||
|
||
```javascript
|
||
{
|
||
"mode": "full",
|
||
"analysisResults": { /* JSON analyses par élément */ },
|
||
"layersApplied": [
|
||
{ "name": "technical", "modifications": 5, "duration": 2300 },
|
||
{ "name": "style", "modifications": 3, "duration": 1800 },
|
||
{ "name": "readability", "modifications": 2, "duration": 1500 }
|
||
],
|
||
"totalModifications": 10,
|
||
"elementsProcessed": 12,
|
||
"elementsImproved": 8,
|
||
"duration": 5600
|
||
}
|
||
```
|
||
|
||
**Logs structurés** :
|
||
```
|
||
🔍 SMART ANALYSIS BATCH: 12 éléments
|
||
✅ [Titre_H1]: 2 améliorations
|
||
✅ [Paragraphe_1]: 3 améliorations
|
||
📊 Score moyen: 0.62 | Améliorations totales: 18
|
||
|
||
🔧 === PHASE 2: AMÉLIORATIONS CIBLÉES ===
|
||
🎯 Couche: technical
|
||
✅ 5 modifications appliquées (2300ms)
|
||
🎯 Couche: style
|
||
⏭️ Skip (score: 0.85 - aucune amélioration nécessaire)
|
||
```
|
||
|
||
---
|
||
|
||
## 🧪 **Testing**
|
||
|
||
### **Test unitaire**
|
||
```javascript
|
||
const { SmartAnalysisLayer } = require('./SmartAnalysisLayer');
|
||
|
||
const analyzer = new SmartAnalysisLayer();
|
||
const analysis = await analyzer.analyzeElement("Contenu test...", {});
|
||
|
||
expect(analysis.overallScore).toBeGreaterThan(0);
|
||
expect(analysis.improvements).toBeInstanceOf(Array);
|
||
```
|
||
|
||
### **Test intégration**
|
||
```bash
|
||
# Via Pipeline Builder UI
|
||
npm start
|
||
# → http://localhost:3000/pipeline-builder.html
|
||
# → Glisser "SmartTouch" + configurer + tester
|
||
```
|
||
|
||
---
|
||
|
||
## 📝 **Migration depuis Selective**
|
||
|
||
```javascript
|
||
// ANCIEN (Selective Enhancement)
|
||
const result = await applySelectiveStack(content, 'fullEnhancement', config);
|
||
|
||
// NOUVEAU (SmartTouch)
|
||
const smartTouch = new SmartTouchCore();
|
||
const result = await smartTouch.apply(content, {
|
||
mode: 'full',
|
||
intensity: config.intensity,
|
||
csvData: config.csvData
|
||
});
|
||
```
|
||
|
||
**Backward compatible** : Selective Enhancement reste disponible, SmartTouch est un complément.
|
||
|
||
---
|
||
|
||
## 🛠️ **Configuration Avancée**
|
||
|
||
### **Ordre des couches personnalisé**
|
||
```javascript
|
||
const result = await smartTouch.apply(content, {
|
||
mode: 'full',
|
||
layersOrder: ['style', 'technical', 'readability'] // Style en premier
|
||
});
|
||
```
|
||
|
||
### **Skip analyse (mode legacy)**
|
||
```javascript
|
||
const result = await smartTouch.apply(content, {
|
||
mode: 'technical_only',
|
||
skipAnalysis: true // Applique directement (moins précis)
|
||
});
|
||
```
|
||
|
||
---
|
||
|
||
## 🚦 **Statut du Module**
|
||
|
||
- ✅ **Core modules créés** (Analysis, Technical, Style, Readability, Core)
|
||
- ✅ **Intégration PipelineExecutor** (module `smarttouch` reconnu)
|
||
- ✅ **Intégration Pipeline Builder** (drag-and-drop UI)
|
||
- ✅ **Intégration API** (PipelineDefinition, modes, durées)
|
||
- ⏳ **Tests production** (en cours)
|
||
- ⏳ **Documentation utilisateur** (à compléter)
|
||
|
||
---
|
||
|
||
## 🎓 **Philosophie de Design**
|
||
|
||
1. **Analyse avant action** : Comprendre avant de modifier
|
||
2. **Ciblage précis** : Améliorer UNIQUEMENT ce qui est nécessaire
|
||
3. **Généricité maximale** : Fonctionne pour tout type de contenu
|
||
4. **Logs transparents** : JSON structuré pour debugging
|
||
5. **Optimisation coûts** : Analyse légère, améliorations ciblées
|
||
|
||
---
|
||
|
||
## 🔗 **Voir aussi**
|
||
|
||
- `lib/selective-enhancement/` - Architecture legacy (toujours disponible)
|
||
- `lib/pipeline/PipelineExecutor.js` - Orchestrateur principal
|
||
- `lib/pipeline/PipelineDefinition.js` - Définition modules
|
||
- `public/pipeline-builder.html` - Interface UI
|
||
|
||
---
|
||
|
||
**Auteur**: Architecture SmartTouch - Nouvelle Génération SEO Generator
|
||
**Date**: 2025-01-13
|
||
**Version**: 1.0.0
|