Memoria procedimental (biblioteca de habilidades)
Una biblioteca de secuencias de prompts y herramientas exitosas que el agente puede repetir para tareas recurrentes.
Memoria procedimental (biblioteca de habilidades) es una lección gratuita de AI Agents en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de AI Agents, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de AI Agents incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
¿Qué es la memoria procedimental?
La memoria procedimental almacena "cómo hacer las cosas": secuencias reutilizables de acciones que han tenido éxito. Piense en ella como una biblioteca de pequeñas recetas que el agente puede reproducir.
Ejemplos:
- "Para presentar un informe de gastos, haga A, después B y luego C".
- "Para desplegar la compilación de staging, ejecute X, espere a Y y después haga Z".
¿Por qué usar memoria procedimental?
Sin ella, el agente vuelve a deducir el mismo plan desde cero cada vez: es lento, costoso e inconsistente. Con una biblioteca de habilidades, las tareas recurrentes se resuelven al instante.
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
);Capture una nueva habilidad
Después de una ejecución exitosa, pida al LLM que extraiga la receta:
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'])))Recuperar una habilidad relevante
Cuando llega una nueva solicitud del usuario, busque en la biblioteca de habilidades:
def find_skill(query):
qvec = embed(query)
rows = conn.execute('''
SELECT name, steps FROM skills
ORDER BY embedding <=> %s LIMIT 3
''', (qvec,))
return rowsPlantillas de habilidades
Las habilidades son plantillas con espacios para parámetros. El agente introduce los valores reales en cada ejecución:
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))
Sugerir habilidades al LLM
Inyecte las habilidades candidatas en el prompt del sistema y deje que el LLM decida cuál utilizar:
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.
'''Seguimiento del éxito de las habilidades
Después de cada uso, actualice las estadísticas de la habilidad:
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;Eliminar habilidades deficientes
Las habilidades con un valor bajo de success_rate o un valor bajo de use_count deben eliminarse:
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 ejemplo famoso
Voyager (Wang et al. 2023) es un agente que juega a Minecraft y crea una «biblioteca de habilidades» de fragmentos de código: un artículo fundamental sobre la memoria procedimental.
Composición de habilidades
Las habilidades pueden llamar a otras habilidades. El agente aprende procedimientos cada vez más abstractos:
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)
Privacidad de las habilidades
Por lo general, las habilidades son lo bastante genéricas como para compartirlas entre usuarios. Pero compruébelo: algunas «habilidades» filtran datos específicos del usuario, como un número de cuenta concreto. Anonimice los datos antes de almacenarlos en una biblioteca compartida.
Definición procedimental
¿Qué almacena la memoria procedimental?
Resumen
Memoria procedimental = biblioteca de habilidades. Extraiga recetas de ejecuciones correctas, recupere las relevantes para nuevas solicitudes, haga un seguimiento de las tasas de éxito y elimine las que ya no sirven.
Preguntas frecuentes
¿La lección «Memoria procedimental (biblioteca de habilidades)» es gratis?
Sí — el texto completo de «Memoria procedimental (biblioteca de habilidades)» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de AI Agents, actualiza a CoddyKit PRO. El curso de AI Agents incluye 4 lecciones en total.
¿Qué aprenderé en «Memoria procedimental (biblioteca de habilidades)»?
Una biblioteca de secuencias de prompts y herramientas exitosas que el agente puede repetir para tareas recurrentes. Practicas AI Agents con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar AI Agents?
No se requiere experiencia previa. AI Agents en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Memoria procedimental (biblioteca de habilidades)»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de AI Agents?
Sí. Cada lección de AI Agents incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Memoria episódica (historial por sesión)
- Memoria semántica (datos vectorizados)
- Memoria procedimental (biblioteca de habilidades)
- Decaimiento de la memoria y recolección de basura