Procedurminne (färdighetsbibliotek)
Ett bibliotek med fungerande prompt- och verktygssekvenser som agenten kan spela upp igen för återkommande uppgifter.
Procedurminne (färdighetsbibliotek) är en gratis lektion i AI-agenter på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för AI-agenter, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i AI-agenter innehåller totalt 4 lektioner.
Delar av den här lektionen har ännu inte översatts och visas på engelska.
Vad är procedurellt minne?
Procedurellt minne lagrar "hur man gör saker" — återanvändbara sekvenser av åtgärder som har lyckats. Tänk på det som ett bibliotek med små recept som agenten kan spela upp igen.
Exempel:
- "För att registrera en utgiftsrapport gör du A, sedan B och sedan C."
- "För att distribuera staging-bygget kör du X, väntar på Y och kör sedan Z."
Varför procedurellt minne?
Utan det här minnet måste agenten härleda samma plan från grunden varje gång — långsamt, dyrt och inkonsekvent. Med ett färdighetsbibliotek löses återkommande uppgifter direkt.
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
);Fånga en ny färdighet
Efter en lyckad körning ber du LLM:en extrahera receptet:
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'])))Hämta en relevant färdighet
När en ny användarförfrågan kommer in söker ni i färdighetsbiblioteket:
def find_skill(query):
qvec = embed(query)
rows = conn.execute('''
SELECT name, steps FROM skills
ORDER BY embedding <=> %s LIMIT 3
''', (qvec,))
return rowsFärdighetsmallar
Färdigheter är mallar med parameterplatser. Agenten fyller i de faktiska värdena vid varje körning:
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))
Föreslå färdigheter för LLM
Infoga möjliga färdigheter i systemprompten och låt LLM avgöra vilken som ska användas:
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.
'''Spåra färdighetens framgång
Uppdatera färdighetens statistik efter varje användning:
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;Rensa bort dåliga färdigheter
Färdigheter med lågt success_rate eller lågt use_count bör tas bort:
DELETE FROM skills
WHERE (success_rate < 0.5 AND use_count >= 5)
OR (use_count = 0 AND created_at < NOW() - INTERVAL '30 days');Voyager: Ett berömt exempel
Voyager (Wang et al. 2023) är en agent som spelar Minecraft och bygger ett "skill library" med kodsnuttar — en banbrytande artikel om procedurellt minne.
Sammansättning av färdigheter
Färdigheter kan anropa andra färdigheter. Agenten lär sig allt mer abstrakta procedurer:
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)
Färdigheternas integritet
Färdigheter är vanligtvis tillräckligt generella för att kunna delas mellan användare. Men kontrollera — vissa "färdigheter" läcker användarspecifika uppgifter, till exempel ett visst kontonummer. Anonymisera uppgifterna innan de lagras i ett delat bibliotek.
Definition av procedurminne
Vad lagrar det procedurella minnet?
Sammanfattning
Procedurminne = färdighetsbibliotek. Extrahera recept från lyckade körningar, hämta relevanta recept för nya förfrågningar, spåra framgångsfrekvenser och rensa bort de oanvändbara.
Lär dig AI-agenter med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 60
- Lektioner
- 239
Vanliga frågor
Är lektionen ”Procedurminne (färdighetsbibliotek)” gratis?
Ja – hela texten till ”Procedurminne (färdighetsbibliotek)” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i AI-agenter, kan Ni uppgradera till CoddyKit PRO. Kursen i AI-agenter innehåller totalt 4 lektioner.
Vad lär jag mig i ”Procedurminne (färdighetsbibliotek)”?
Ett bibliotek med fungerande prompt- och verktygssekvenser som agenten kan spela upp igen för återkommande uppgifter. Ni övar på AI-agenter med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig AI-agenter?
Du behöver inga förkunskaper. Utbildningen i AI-agenter på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Procedurminne (färdighetsbibliotek)”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här AI-agenter-lektionen?
Ja. Varje AI-agenter-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Episodiskt minne (historik per session)
- Semantiskt minne (vektoriserade fakta)
- Procedurminne (färdighetsbibliotek)
- Minnesförfall och skräpsamling