Cette section décrit les principaux composants logiciels du dépôt ainsi que leurs interactions.
Utilisateur
│
▼
┌─────────────┐
│ PromptGen │
└──────┬──────┘
│
▼
┌─────────────┐
│ PEToolkit │
└──────┬──────┘
│
┌─────┼────────────┐
▼ ▼
GGCode GrokPiX
│ │
▼ ▼
Prompts Prompts Image
│ │
└───────┬──────────┘
▼
LLMFuzz
│
▼
Obfuscat
│
▼
Analyse
PEToolkit constitue le cœur logique du projet.
Il fournit une représentation abstraite du prompt sous forme d'objet manipulable programmatiquement.
L'objectif est de remplacer l'écriture libre de prompts par une approche modulaire et reproductible.
Un prompt est généralement composé de plusieurs couches :
Instruction
Contexte
Contraintes
Exemples
Format de sortie
Métadonnées
Cette approche facilite :
- la réutilisation
- la transformation automatique
- la validation
- l'industrialisation
Utilisé pour :
- catégorisation
- modération
- routage
Utilisé pour :
- extraction d'entités
- extraction de dates
- extraction de concepts
Utilisé pour :
- analyse argumentative
- revue documentaire
- critique de texte
Permet de comparer :
- modèles
- stratégies
- produits
- documents
Construit automatiquement une structure contradictoire :
- thèse
- antithèse
- synthèse
PEToolkit permet d'appliquer plusieurs transformations successives :
prompt \
-> formalisation \
-> enrichissement \
-> variation \
-> exportCette approche rappelle les pipelines de traitement NLP classiques.
PromptGen agit comme une couche UX au-dessus des concepts de Prompt Engineering.
Le programme encapsule plusieurs stratégies éprouvées :
- Chain of Thought
- Few Shot Learning
- Feynman Technique
- Socratic Prompting
- Humanization
Tkinter GUI
│
▼
Paramètres utilisateur
│
▼
Moteur de génération
│
▼
Prompt final
PromptGen constitue également un excellent outil d'apprentissage.
Chaque option correspond à une technique réelle de Prompt Engineering.
Spécialiser les prompts pour la génération logicielle.
Le moteur permet notamment d'encoder :
- Python
- C
- C++
- C#
- Java
- JavaScript
- Rust
- CLI
- GUI
- Web
- API
- commentaires
- typage
- documentation
- tests
Réduction des ambiguïtés lors de la génération de code.
Produire des prompts visuels détaillés.
Exemple :
portrait
animal
véhicule
architecture
Exemple :
oil painting
cinematic
anime
realistic
Exemple :
close-up
wide shot
bird view
Exemple :
golden hour
studio light
volumetric light
Sujet
│
▼
Style
│
▼
Composition
│
▼
Qualité
│
▼
Prompt final
Explorer les réactions imprévues des modèles.
À partir d'un prompt initial :
Seed Prompt
le moteur produit :
Mutation 1
Mutation 2
Mutation 3
...
Mutation N
puis analyse les réponses obtenues.
Remplacement de termes.
Réorganisation grammaticale.
Modification progressive du sens.
Ajout de contexte artificiel.
Tester :
- stabilité
- cohérence
- résistance
Explorer :
- comportements émergents
- effets de bord
- vulnérabilités
Obfuscat est le composant le plus sophistiqué du dépôt.
Il applique différentes transformations destinées à modifier l'apparence d'un prompt tout en conservant tout ou partie de sa sémantique.
Prompt Original
│
▼
Analyse linguistique
│
▼
Transformations
│
▼
Validation
│
▼
Prompt Obfusqué
Moteur principal.
Responsable :
- orchestration
- génération
- scoring
- validation
Gestion :
- traduction
- pivot linguistique
- substitutions multilingues
Permet d'utiliser plusieurs langues comme couche d'obfuscation.
Simulation de filtres de sécurité.
Permet d'évaluer :
- détection
- visibilité
- persistance
Interface temps réel.
Affiche :
- transformations
- scores
- statistiques
Export des relations sous forme de graphe.
Utilisations possibles :
- visualisation
- recherche
- analyse de trajectoires
Prompt
│
▼
Analyse
│
▼
Choix des stratégies
│
▼
Transformation
│
▼
Validation
│
▼
Scoring
│
▼
Export
Le dépôt adopte une logique en cinq étapes :
PEToolkit
PromptGen
GGCode / GrokPiX
LLMFuzz
Obfuscat
Cette approche couvre pratiquement tout le cycle de vie d'un prompt moderne.
PromptEngineering ne se limite pas à un générateur de prompts.
Il s'agit davantage d'un laboratoire expérimental consacré :
- aux interactions homme-machine,
- aux architectures conversationnelles,
- aux méthodes d'évaluation des LLM,
- à l'étude des comportements émergents,
- à l'industrialisation du Prompt Engineering.