Concevoir un processus
Utilisez ce skill pour transformer une demande telle que « crée un processus qui compte les mots
dans un texte » en un plan d'étapes. Construisez-le ensuite avec le skill create-process.
Le paquet se trouve dans process_package/. La classe parent est
process_package/toy_process/process.py.
1. Lister les étapes
Écrivez l'objectif sous forme de liste ordonnée de petites actions, chacune étant une phrase verbale :
WordReport
1. nettoyer le texte
2. compter les mots
3. construire le rapport
Chaque étape doit faire une seule chose et placer son résultat dans le dictionnaire context partagé.
2. Décider de la nature de chaque étape
Pour chaque étape, choisissez :
| Utilisez une étape méthode quand... | Utilisez une étape sous-processus quand... |
|---|---|
| il s'agit d'une seule petite action | il s'agit de plusieurs actions qui vont ensemble |
| elle n'est utilisée qu'ici | elle pourrait être réutilisée dans d'autres processus |
| elle n'a besoin d'aucun paramètre propre | elle a ses propres paramètres |
Les sous-processus peuvent contenir des sous-processus. Gardez l'imbrication peu profonde : deux niveaux est largement suffisant pour la plupart des processus jouets.
3. Écrire le plan
Pour chaque processus (parent et chaque sous-processus), enregistrez :
- Nom de la classe : un nom ou une phrase verbale en
CamelCase, par ex.CleanText. - Paramètres : nom → valeur par défaut. Ceux-ci vont dans
set_parameters. - Étapes : dans l'ordre. Les méthodes sont en
snake_case; les sous-processus utilisent leur nom de classe. - Clés de contexte : ce que chaque étape lit et écrit.
Exemple de plan :
CleanText params: lowercase=True
- strip_punctuation lit text écrit text
- normalise_case lit text écrit text
WordReport params: text="", lowercase=True, top_n=3
- load_text lit - écrit text
- CleanText(lowercase=...) (sous-processus)
- count_words lit text écrit counts
- build_report lit counts écrit report
4. Vérifier le plan
- Chaque clé de contexte qu'une étape lit est écrite par une étape antérieure.
- Chaque paramètre qu'une étape utilise se trouve dans les paramètres de ce processus.
- Un sous-processus reçoit ses paramètres du parent sous forme d'arguments nommés,
par ex.
CleanText(lowercase=self.params["lowercase"]).
Montrez le plan à l'utilisateur si la demande était vague, puis suivez le
skill create-process.