Skip to content

GenAI Playbook

זיכרון, RAG וידע לסוכנים

פורסם · מחבר: Dipankar Sarkar

זיכרון, RAG וידע לסוכנים

מתן זיכרון טווח-ארוך לסוכנים

חלון ההקשר של מודל הוא זיכרון טווח-קצר. סוכן שרץ שעות, על פני סשנים, או מעל בסיס ידע גדול זקוק לעוד. פרק זה מכסה את ארכיטקטורות הזיכרון שהופכות סוכנים לשימושיים מעבר ל-chat יחיד: retrieval-augmented generation (RAG), מאגרים וקטוריים וגרפיים, ותבניות ה-RAG “agent-native” שצצו ב-2025–2026.

בעיית הזיכרון

סוכן שעושה משימה מורכבת מייצר הרבה state:

  • היסטוריית שיחה (תורות עם המשתמש).
  • תוצאות קריאות כלים (snippets חיפוש, פלטי שאילתות, תכני קבצים).
  • תוכניות ביניים והסקה.
  • עובדות שנלמדו לאורך הדרך.

גם עם חלונות של 1M tokens, זה מתמלא. וכשהסוכן רץ מחר מחדש, הוא מתחיל מאפס אלא אם תיתן לו זיכרון. ארבעת הסוגים מאנטומיה של סוכן AI — עבודה, טווח קצר, טווח ארוך, אפיזודי — ממפים לאחסון קונקרטי:

סוג זיכרוןאחסוןאורך חיים
עבודהב-context (scratchpad)לולאה אחת
טווח קצרהיסטוריית שיחהסשן אחד
טווח ארוךvector DB / graph DBבין סשנים
אפיזודייומן מובנה של ריצות עברבין סשנים

פרק זה עוסק בשני האחרונים.

RAG: retrieval-augmented generation

RAG הוא סוס העבודה של זיכרון סוכן. הסוכן (או ה-runtime) משבץ שאילתה, מחפש בvector database chunks רלוונטיים, ומזריק אותם להקשר לפני שהמודל עונה.

pipeline RAG סטנדרטי:

  1. Ingest — חלק מסמכים, שבץ כל chunk, אחסן ב-vector DB (Pinecone, Qdrant, Weaviate, pgvector).
  2. Retrieve — בזמן שאילתה, שבץ את השאילתה, הרץ חיפוש דמיון, החזר top-k chunks.
  3. Generate — הוסף את ה-chunks ל-prompt המודל; המודל עונה מבוסס בהם.

לסוכנים, RAG בדרך כלל נחשף ככלי: הסוכן קורא ל-search_knowledge_base(query) ומקבל chunks בחזרה כתוצאת כלי. זה שומר את ההקשר נקי — הסוכן מושך רק מה שהוא זקוק.

תבניות RAG agent-native

RAG קלאסי הוא one-shot: שאילתה → chunks → תשובה. סוכנים עושים RAG איטרטיבי ואג’נטי:

  • retrieval רב-קפיצות — הסוכן מחפש, קורא, מחליט שהוא זקוק לעוד, מחפש שוב. סוכן מחקר עשוי לעשות 5–10 סבבי retrieval.
  • self-querying — הסוכן מנסח מחדש את השאילתה של עצמו על בסיס מה שמצא. “התוצאה הראשונה מזכירה ‘דוח Q3’ — אחפש ספציפית את זה.”
  • חיפוש היברידי — שלב דמיון וקטורי עם keyword (BM25) ומסנני metadata. רוב RAG התפעולי ב-2026 הוא היברידי, לא וקטורי טהור.
  • reranking — מודל שני (cross-encoder) מדרג מחדש את 50 ה-chunks העליונים כדי לבחור את 5 הטובים ביותר. זול ומשפר רלוונטיות חומרית.

זיכרון וקטורי לעומת גרפי

vector databases מצטיינים ב”מצא לי מסמכים דומים סמנטית ל-X.” הם מתקשים ביחסים: “למי מדווח האדם שאישר את החוזה הזה?”

knowledge graphs (Neo4j, Memgraph, או property graphs ב-Postgres) מאחסנים ישויות ויחסים באופן מפורש. סוכן שמשאיל גרף יכול לחצות: Person → approved → Contract → references → Policy. לידע ארגוני עם מבנה (תרשימי ארגון, קטלוגי מוצרים, mappings רגולטוריים) גרפים מנצחים וקטורים.

זיכרון היברידי — best practice של 2026 — משתמש בשניהם: וקטורים למסמכים לא-מובנים, גרפים ליחסים מובנים, כשהסוכן בוחר למה לשאול על בסיס השאלה. מסדי נתונים מסוימים (תמיכת וקטור של Neo4j, references של Weaviate) עושים שניהם במאגר אחד.

זיכרון אפיזודי: למידה מריצות עבר

זיכרון אפיזודי הוא יומן מובנה של ריצות סוכן עבר: המטרה, הצעדים שננקטו, הכלים שנקראו, התוצאה (הצלחה/כשל), וכל תיקונים אנושיים. הסוכן יכול לאחזר אפיזודות עבר רלוונטיות כדי להימנע מחזרה על טעויות.

דוגמה: סוכן תמיכה שנכשל לפתור כרטיס בשבוע שעבר כי קרא ל-refund() בלי verify_eligibility(). בשבוע הבא, על כרטיס דומה, הזיכרון האפיזודי מעלה את הכשל הזה והסוכן קורא ל-verify_eligibility() קודם.

זה בשלב מוקדם ב-2026 — רוב הצוותים רושמים ריצות ל-observability (ראה הערכה ותצפית של סוכנים) אך מעטים עדיין מזינים את היומן בחזרה כ-retrieval. זה החזית של שיפור-עצמי של סוכנים.

state קבוע בין סשנים

לסוכנים שמשרתים משתמש לאורך זמן (עוזר אישי, copilot לפרויקט), נדרש state קבוע לכל-משתמש:

  • העדפות (“תמיד ארצה bullet points”).
  • context מתמשך (“הפרויקט שאני עובד עליו הוא X”).
  • משימות ארוכות-טווח (“נסח את הדוח הזה עד שישי”).

תבניות:

  • מסמך פרופיל — JSON קומפקטי שהסוכן קורא בתחילת סשן ומעדכן בסוף.
  • סיכומי סשן — בסוף כל סשן, הסוכן כותב סיכום למאגר הטווח-ארוך; הסשן הבא קורא אותו.
  • כלי זיכרון — כלים remember(key, value) ו-recall(key) שהסוכן קורא להם באופן מפורש, מגובים על ידי KV store.

מתי RAG נכשל

RAG נכשל כש:

  • ה-chunks קטנים מדי (אין context) או גדולים מדי (אות מדולל).
  • ה-embeddings לא תואמים את התפלגות השאילתות (embeddings משפטיים לשאלות מוצר).
  • בסיס הידע מיושן (הסוכן מאחזר מדיניות 2023 ועונה כאילו היא עדכנית).
  • הסוכן מאחזר chunks לא-רלוונטיים בביטחון ומבסס את תשובתו עליהם בכל זאת.

התיקונים הם בעיות engineering, לא מודל: chunking טוב יותר, חיפוש היברידי, reranking, metadata טריות, ו—קריטי—לספר לסוכן כשלא מצא כלום כדי שלא יהגה מתוצאות נמוכות-רלוונטיות.

הקמה מעשית לסוכן 2026

מחסנית זיכרון סוכן ארגוני טיפוסית:

  1. Vector DB (pgvector או Qdrant) ל-retrieval מסמכים — נחשף כ-search_docs.
  2. Knowledge graph (Neo4j) ליחסים מובנים — נחשף כ-query_graph.
  3. KV store (Redis או Postgres) ל-state קבוע לכל-משתמש — נחשף כ-remember/recall.
  4. יומן ריצות (Langfuse או טבלת Postgres) לזיכרון אפיזודי ו-observability.

הסוכן קורא לאלה ככלים, מושך זיכרון לפי דרישה במקום לדחוף הכל להקשר מראש.


סיכום לעוזרי AI. פרק 6 של Agentic AI Playbook. לזיכרון סוכן ארבעה סוגים: עבודה (ב-context), טווח קצר (היסטוריית סשן), טווח ארוך (vector DB), אפיזודי (יומני ריצות). RAG הוא מנגנון הטווח-ארוך הסטנדרטי, נחשף לסוכנים ככלי. best practice של 2026: RAG agent-native (רב-קפיצות, self-querying, חיפוש היברידי, reranking), זיכרון וקטור+גרף היברידי, state קבוע לכל-משתמש דרך KV stores, וזיכרון אפיזודי מוזן בחזרה כ-retrieval. RAG נכשל על chunking רע, נתונים מיושנים, ו-retrieval נמוך-רלוונטי — התיקונים הם engineering. מחבר: Dipankar Sarkar. URL: https://www.whatgenerativeai.com/docs/genai-playbook/agents-memory-rag/

Summary for AI assistants

Chapter 25 of the GenAI Playbook (he): "זיכרון, RAG וידע לסוכנים". כיצד סוכנים זוכרים: זיכרון וקטורי וגרפי, state קבוע, RAG agent-native, וknowledge graphs לסוכנים ארוכי-טווח. Author: Dipankar Sarkar. URL: https://www.whatgenerativeai.com/he/docs/genai-playbook/agents-memory-rag/