|
2 | 2 |
|
3 | 3 | | Parameter | Type | Description | Default | |
4 | 4 | |-----------|------|-------------|---------| |
5 | | -| `runs` | `List[AgentRun]` | List of conversation runs between user and agent | `[]` | |
6 | | -| `messages` | `List[Message]` | List of messages sent to the model | `[]` | |
7 | | -| `update_system_message_on_change` | `bool` | Whether to update system message when changed | `False` | |
8 | | -| `summary` | `Optional[SessionSummary]` | Current session summary | `None` | |
9 | | -| `create_session_summary` | `bool` | Whether to create session summaries | `False` | |
10 | | -| `update_session_summary_after_run` | `bool` | Whether to update summary after each run | `True` | |
11 | | -| `summarizer` | `Optional[MemorySummarizer]` | Summarizer for generating session summaries | `None` | |
12 | | -| `create_user_memories` | `bool` | Whether to create personalized memories | `False` | |
13 | | -| `update_user_memories_after_run` | `bool` | Whether to update memories after each run | `True` | |
14 | | -| `db` | `Optional[MemoryDb]` | Database for storing personalized memories | `None` | |
15 | | -| `user_id` | `Optional[str]` | User identifier for personalized memories | `None` | |
16 | | -| `retrieval` | `MemoryRetrieval` | Memory retrieval strategy | `MemoryRetrieval.last_n` | |
17 | | -| `memories` | `Optional[List[Memory]]` | List of retrieved memories | `None` | |
18 | | -| `num_memories` | `Optional[int]` | Number of memories to retrieve | `None` | |
19 | | -| `classifier` | `Optional[MemoryClassifier]` | Classifier for memory importance | `None` | |
20 | | -| `manager` | `Optional[MemoryManager]` | Manager for memory operations | `None` | |
21 | | - |
22 | | -### Agent Run |
23 | | - |
24 | | -| Parameter | Type | Description | Default | |
25 | | -|-----------|------|-------------|---------| |
26 | | -| `message` | `Optional[Message]` | Single message associated with the run | `None` | |
27 | | -| `messages` | `Optional[List[Message]]` | List of messages associated with the run | `None` | |
28 | | -| `response` | `Optional[RunResponse]` | Response generated during the run | `None` | |
29 | | - |
30 | | - |
31 | | -### Session Summary |
32 | | - |
33 | | -| Parameter | Type | Description | Default | |
34 | | -|-----------|------|-------------|---------| |
35 | | -| `summary` | `str` | Concise summary of the session focusing on important information | Required | |
36 | | -| `topics` | `Optional[List[str]]` | List of topics discussed in the session | `None` | |
37 | | - |
38 | | -### Memory Summarizer |
39 | | - |
40 | | -| Parameter | Type | Description | Default | |
41 | | -|-----------|------|-------------|---------| |
42 | | -| `model` | `Optional[Model]` | Model used for generating summaries | `None` | |
43 | | -| `use_structured_outputs` | `bool` | Whether to use structured outputs from the model | `False` | |
| 5 | +| `model` | `Optional[Model]` | Model used for memories and summaries | `None` | |
| 6 | +| `memory_manager` | `Optional[MemoryManager]` | Manager for memory operations | `None` | |
| 7 | +| `summarizer` | `Optional[SessionSummarizer]` | Summarizer for generating session summaries | `None` | |
| 8 | +| `db` | `Optional[MemoryDb]` | Database for storing memories | `None` | |
| 9 | +| `debug_mode` | `bool` | Whether to enable debug logging | `False` | |
44 | 10 |
|
| 11 | +### Key Methods |
45 | 12 |
|
| 13 | +#### User Memory Management |
46 | 14 |
|
47 | | -### Memory Retrieval |
| 15 | +| Method | Description | Parameters | Returns | |
| 16 | +|--------|-------------|------------|---------| |
| 17 | +| `get_user_memories` | Retrieves all memories for a user | `user_id: str` | `List[UserMemory]` | |
| 18 | +| `get_user_memory` | Gets a specific memory | `user_id: str, memory_id: str` | `UserMemory` | |
| 19 | +| `add_user_memory` | Adds a new memory and gets the memory id | `memory: UserMemory, user_id: Optional[str] = None` | `str` | |
| 20 | +| `replace_user_memory` | Updates an existing memory and gets the memory id | `memory_id: str, memory: UserMemory, user_id: Optional[str] = None` | `str` | |
| 21 | +| `delete_user_memory` | Deletes a memory | `user_id: str, memory_id: str` | `None` | |
| 22 | +| `create_user_memories` | Creates memories from one or more messages | `message: Optional[str] = None, messages: Optional[List[Message]] = None, user_id: Optional[str] = None` | `str` | |
| 23 | +| `acreate_user_memories` | Creates memories from one or more messages (Async) | `message: Optional[str] = None, messages: Optional[List[Message]] = None, user_id: Optional[str] = None` | `str` | |
| 24 | +| `search_user_memories` | Searches user memories using specified retrieval method | `query: Optional[str] = None, limit: Optional[int] = None, retrieval_method: Optional[Literal["last_n", "first_n", "semantic"]] = None, user_id: Optional[str] = None` | `List[UserMemory]` | |
48 | 25 |
|
49 | | -| Parameter | Type | Description | |
50 | | -|-----------|------|-------------| |
51 | | -| `last_n` | `str` | Retrieve the last N memories from history | |
52 | | -| `first_n` | `str` | Retrieve the first N memories from history | |
53 | | -| `semantic` | `str` | Retrieve memories based on semantic similarity | |
| 26 | +#### Session Summary Management |
54 | 27 |
|
| 28 | +| Method | Description | Parameters | |
| 29 | +|--------|-------------|------------| |
| 30 | +| `get_session_summaries` | Retrieves all session summaries for a user | `user_id: str` | |
| 31 | +| `get_session_summary` | Gets a specific session summary | `user_id: str, session_id: str` | |
| 32 | +| `create_session_summary` | Creates a summary for a session from the stored session runs | `session_id: str, user_id: Optional[str] = None` | |
| 33 | +| `acreate_session_summary` | Creates a summary for a session from the stored session runs (Async) | `session_id: str, user_id: Optional[str] = None` | |
| 34 | +| `delete_session_summary` | Deletes a session summary | `user_id: str, session_id: str` | |
55 | 35 |
|
56 | | -### Memory |
| 36 | +### UserMemory |
57 | 37 |
|
58 | 38 | | Parameter | Type | Description | Default | |
59 | 39 | |-----------|------|-------------|---------| |
60 | 40 | | `memory` | `str` | The actual memory content | Required | |
61 | | -| `id` | `Optional[str]` | Unique identifier for the memory | `None` | |
62 | | -| `topic` | `Optional[str]` | Topic or category of the memory | `None` | |
| 41 | +| `topics` | `Optional[List[str]]` | Topics or categories of the memory | `None` | |
63 | 42 | | `input` | `Optional[str]` | Original input that generated the memory | `None` | |
| 43 | +| `last_updated` | `Optional[datetime]` | When the memory was last updated | `None` | |
| 44 | +| `memory_id` | `Optional[str]` | Unique identifier for the memory | `None` | |
64 | 45 |
|
65 | | -### Memory Classifier |
| 46 | +### SessionSummary |
66 | 47 |
|
67 | 48 | | Parameter | Type | Description | Default | |
68 | 49 | |-----------|------|-------------|---------| |
69 | | -| `model` | `Optional[Model]` | Model used for classifying memories | `None` | |
70 | | -| `system_prompt` | `Optional[str]` | Custom system prompt for the classifier | `None` | |
71 | | -| `existing_memories` | `Optional[List[Memory]]` | List of existing memories to check against | `None` | |
| 50 | +| `summary` | `str` | Concise summary of the session | Required | |
| 51 | +| `topics` | `Optional[List[str]]` | Topics discussed in the session | `None` | |
| 52 | +| `last_updated` | `Optional[datetime]` | When the summary was last updated | `None` | |
72 | 53 |
|
73 | 54 | ### Memory Manager |
74 | 55 |
|
75 | 56 | | Parameter | Type | Description | Default | |
76 | 57 | |-----------|------|-------------|---------| |
77 | 58 | | `model` | `Optional[Model]` | Model used for managing memories | `None` | |
78 | | -| `user_id` | `Optional[str]` | Unique identifier for the user | `None` | |
79 | 59 | | `system_prompt` | `Optional[str]` | Custom system prompt for the memory manager | `None` | |
80 | | -| `db` | `Optional[MemoryDb]` | Database for storing memories | `None` | |
81 | | -| `input_message` | `Optional[str]` | Current input message being processed | `None` | |
| 60 | + |
| 61 | +### Session Summarizer |
| 62 | + |
| 63 | +| Parameter | Type | Description | Default | |
| 64 | +|-----------|------|-------------|---------| |
| 65 | +| `model` | `Optional[Model]` | Model used for summarizing sessions | `None` | |
| 66 | +| `system_prompt` | `Optional[str]` | Custom system prompt for the summarizer | `None` | |
0 commit comments