Mémoire procédurale (bibliothèque de compétences)
Constituez une bibliothèque de séquences réussies de prompts et d’outils que l’agent peut rejouer pour les tâches récurrentes.
Mémoire procédurale (bibliothèque de compétences) est une leçon AI Agents gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage AI Agents, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours AI Agents comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Qu’est-ce que la mémoire procédurale ?
La mémoire procédurale stocke « comment faire les choses » — des séquences d’actions réutilisables qui ont réussi. Considérez-la comme une bibliothèque de petites recettes que l’agent peut rejouer.
Exemples :
- « Pour remplir une note de frais, effectuez A, puis B, puis C. »
- « Pour déployer la version de préproduction, exécutez X, attendez Y, puis Z. »
Pourquoi une mémoire procédurale ?
Sans elle, l’agent redérive le même plan depuis zéro à chaque fois : c’est lent, coûteux et incohérent. Avec une bibliothèque de compétences, les tâches récurrentes sont résolues instantanément.
Storage Format
CREATE TABLE skills (
id UUID PRIMARY KEY,
name TEXT NOT NULL,
description TEXT NOT NULL,
embedding vector(1536),
steps JSONB NOT NULL, -- list of tool calls
success_rate REAL DEFAULT 1.0,
use_count INT DEFAULT 0,
created_at TIMESTAMPTZ
);Capturer une nouvelle compétence
Après une exécution réussie, demandez au LLM d’extraire la recette :
extract_prompt = '''
The agent successfully completed: {user_request}
The trace was:
{trace}
Write this as a reusable skill with name, description, and step list.
Return JSON: {name, description, steps: [{tool, args_template}]}
'''
print(extract_prompt.strip())
Storing the Skill
skill = json.loads(llm.invoke(extract_prompt).content)
vec = embed(skill['description'])
conn.execute('''
INSERT INTO skills (id, name, description, embedding, steps)
VALUES (%s, %s, %s, %s, %s::jsonb)
''', (str(uuid.uuid4()), skill['name'], skill['description'], vec, json.dumps(skill['steps'])))Récupération d’une compétence pertinente
Lorsqu’une nouvelle demande utilisateur arrive, recherchez dans la bibliothèque de compétences :
def find_skill(query):
qvec = embed(query)
rows = conn.execute('''
SELECT name, steps FROM skills
ORDER BY embedding <=> %s LIMIT 3
''', (qvec,))
return rowsModèles de compétences
Les compétences sont des modèles comportant des emplacements de paramètres. L’agent les remplit avec les valeurs réelles à chaque exécution :
skill = {
'name': 'file_expense_report',
'steps': [
{'tool': 'open_form', 'args': {'form_id': 'expense'}},
{'tool': 'fill_field', 'args': {'field': 'amount', 'value': '{amount}'}},
{'tool': 'fill_field', 'args': {'field': 'category', 'value': '{category}'}},
{'tool': 'submit'}
]
}
import json
print(json.dumps(skill, indent=2))
Suggérer des compétences au LLM
Injectez les compétences candidates dans l’instruction système et laissez le LLM décider laquelle utiliser :
candidates = find_skill(user_request)
prompt = f'''
You can use these existing skills if applicable:
{json.dumps(candidates, indent=2)}
Or you can plan a new sequence.
'''Suivi de la réussite des compétences
Après chaque utilisation, mettez à jour les statistiques de la compétence :
UPDATE skills
SET use_count = use_count + 1,
success_rate = (success_rate * use_count + (CASE WHEN %s THEN 1 ELSE 0 END)) / (use_count + 1)
WHERE id = %s;Élagage des mauvaises compétences
Les compétences présentant un taux_de_réussite ou un nombre_d_utilisations faible doivent être supprimées :
DELETE FROM skills
WHERE (success_rate < 0.5 AND use_count >= 5)
OR (use_count = 0 AND created_at < NOW() - INTERVAL '30 days');Voyager : un exemple célèbre
Voyager (Wang et al. 2023) est un agent qui joue à Minecraft et construit une « bibliothèque de compétences » composée d’extraits de code — un article fondateur sur la mémoire procédurale.
Composition des compétences
Les compétences peuvent appeler d’autres compétences. L’agent apprend des procédures de plus en plus abstraites :
low_level_skill = {'name': 'open_email', 'steps': [...]}
high_level_skill = {'name': 'process_inbox', 'steps': [
{'skill': 'open_email'},
{'skill': 'reply_or_archive'}
]}
print(low_level_skill)
print(high_level_skill)
Confidentialité des compétences
Les compétences sont généralement assez génériques pour être partagées entre les utilisateurs. Mais vérifiez-les : certaines « compétences » divulguent des informations propres à un utilisateur, comme un numéro de compte précis. Rendez ces informations anonymes avant de les stocker dans une bibliothèque partagée.
Définition procédurale
Que stocke la mémoire procédurale ?
Récapitulatif
Mémoire procédurale = bibliothèque de compétences. Extrayez les recettes des exécutions réussies, récupérez celles qui sont pertinentes pour les nouvelles demandes, suivez les taux de réussite et élaguez celles qui ne sont plus utiles.
Questions Fréquemment Posées
La leçon « Mémoire procédurale (bibliothèque de compétences) » est-elle gratuite ?
Oui — le texte complet de « Mémoire procédurale (bibliothèque de compétences) » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours AI Agents, passe à CoddyKit PRO. Le cours AI Agents comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Mémoire procédurale (bibliothèque de compétences) » ?
Constituez une bibliothèque de séquences réussies de prompts et d’outils que l’agent peut rejouer pour les tâches récurrentes. Tu pratiques AI Agents avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer AI Agents ?
Aucune expérience préalable n'est requise. AI Agents sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Mémoire procédurale (bibliothèque de compétences) » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon AI Agents ?
Oui. Chaque leçon AI Agents inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Mémoire épisodique (historique par session)
- Mémoire sémantique (faits vectorisés)
- Mémoire procédurale (bibliothèque de compétences)
- Déclin de la mémoire et récupération d’espace