0Pricing
AI Agents · Lekcja

Pamięć proceduralna (biblioteka umiejętności)

Biblioteka udanych sekwencji promptów i wywołań narzędzi, które agent może odtwarzać przy powtarzalnych zadaniach.

Pamięć proceduralna (biblioteka umiejętności) to bezpłatna lekcja AI Agents na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AI Agents, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AI Agents zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

Czym jest pamięć proceduralna

Pamięć proceduralna przechowuje informacje o tym, „jak wykonywać różne zadania” — wielokrotnego użytku sekwencje działań, które zakończyły się powodzeniem. Można traktować ją jak bibliotekę małych przepisów, które agent może odtwarzać.

Przykłady:

  • „Aby rozliczyć raport wydatków, wykonaj A, następnie B, a potem C.”
  • „Aby wdrożyć kompilację stagingową, uruchom X, zaczekaj na Y, a następnie wykonaj Z.”

Dlaczego pamięć proceduralna

Bez niej agent za każdym razem od nowa wyprowadza ten sam plan — powoli, kosztownie i niespójnie. Dzięki bibliotece umiejętności powtarzalne zadania są rozwiązywane natychmiast.

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
);

Rejestrowanie nowej umiejętności

Po pomyślnym uruchomieniu należy poprosić LLM o wyodrębnienie przepisu:

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'])))

Pobieranie odpowiedniej umiejętności

Gdy pojawi się nowe żądanie użytkownika, należy przeszukać bibliotekę umiejętności:

def find_skill(query):
    qvec = embed(query)
    rows = conn.execute('''
        SELECT name, steps FROM skills
        ORDER BY embedding <=> %s LIMIT 3
    ''', (qvec,))
    return rows

Szablony umiejętności

Umiejętności to szablony z miejscami na parametry. Agent uzupełnia je rzeczywistymi wartościami przy każdym uruchomieniu:

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))

Sugerowanie umiejętności LLM

Należy wstrzyknąć umiejętności-kandydatów do promptu systemowego i pozwolić LLM zdecydować, których użyć:

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.
'''

Śledzenie skuteczności umiejętności

Po każdym użyciu należy zaktualizować statystyki umiejętności:

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;

Usuwanie słabych umiejętności

Umiejętności z niską wartością success_rate lub niskim use_count należy usunąć:

DELETE FROM skills
WHERE (success_rate < 0.5 AND use_count >= 5)
   OR (use_count = 0 AND created_at < NOW() - INTERVAL '30 days');

Voyager: słynny przykład

Voyager (Wang et al. 2023) to agent grający w Minecrafta, który buduje „bibliotekę umiejętności” z fragmentów kodu — przełomowa praca na temat pamięci proceduralnej.

Kompozycja umiejętności

Umiejętności mogą wywoływać inne umiejętności. Agent uczy się procedur o coraz wyższym poziomie abstrakcji:

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)

Prywatność umiejętności

Umiejętności są zwykle na tyle ogólne, że można je współdzielić między użytkownikami. Należy jednak sprawdzić, czy niektóre „umiejętności” nie ujawniają szczegółów właściwych dla użytkownika, takich jak konkretny numer konta. Przed zapisaniem we współdzielonej bibliotece należy je zanonimizować.

Definicja pamięci proceduralnej

Co przechowuje pamięć proceduralna?

Podsumowanie

Pamięć proceduralna = biblioteka umiejętności. Należy wyodrębniać przepisy z udanych przebiegów, pobierać odpowiednie dla nowych żądań, śledzić wskaźniki skuteczności i usuwać nieprzydatne.

Często zadawane pytania

Czy lekcja „Pamięć proceduralna (biblioteka umiejętności)” jest bezpłatna?

Tak — pełny tekst „Pamięć proceduralna (biblioteka umiejętności)” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AI Agents, przejdź na CoddyKit PRO. Kurs AI Agents zawiera 4 lekcji w sumie.

Co nauczysz się w „Pamięć proceduralna (biblioteka umiejętności)”?

Biblioteka udanych sekwencji promptów i wywołań narzędzi, które agent może odtwarzać przy powtarzalnych zadaniach. Ćwiczysz AI Agents z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć AI Agents?

Nie wymagamy żadnego doświadczenia. AI Agents w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Pamięć proceduralna (biblioteka umiejętności)”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji AI Agents?

Tak. Każda lekcja AI Agents zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Pamięć epizodyczna (historia sesji)
  2. Pamięć semantyczna (zwektoryzowane fakty)
  3. Pamięć proceduralna (biblioteka umiejętności)
  4. Wygasanie pamięci i garbage collection
← Powrót do AI Agents