You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|**Flush**| Run the full pipeline (summary → facts → user profile) for recent turns |`flush(...)`, `flush_and_wait(...)`|
176
+
|**Search**| Vector + full-text + filter; returns any of the above|`search_cosmos(...)`|
177
+
|**Process now**| Run the full pipeline (summary → facts → user profile) for recent turns |`process_now(...)`, `process_now_and_wait(...)`|
176
178
177
-
All four memory kinds live in the same Cosmos container, partitioned by `(user_id, thread_id)`, distinguished by a `memory_type` discriminator.
179
+
All memory kinds live in the same Cosmos container, partitioned by `(user_id, thread_id)`, distinguished by a `type` discriminator.
180
+
181
+
### Memory Type Taxonomy
182
+
183
+
The `extract_memories` pipeline classifies each item it pulls from the conversation into one of four buckets. Every memory carries a top-level `confidence` (0.0–1.0) so retrieval can suppress weakly-grounded extractions.
By default, the **InProcess processor** runs fact extraction after **every turn** (`FACT_EXTRACTION_EVERY_N=1`) and a thread summary every **10 turns** (`THREAD_SUMMARY_EVERY_N=10`). The trigger fires inside `push_to_cosmos()` after the turn is durably written, so calling `process_now()` is normally redundant — it remains as an explicit "flush now" hook. The Durable backend uses the same defaults via the change-feed function app.
178
211
179
212
---
180
213
@@ -186,8 +219,8 @@ Pick at construction time via the `processor=` kwarg.
186
219
|---|---|---|
187
220
| Infra | None — just `pip install`| Sibling Azure Function app |
188
221
| Best for | Prototypes, low TPS, single-agent | Fleet / multi-agent / high TPS |
189
-
|`flush()`| Synchronous, returns when done | No-op (work runs async on change feed) |
190
-
|`flush_and_wait()`| Returns immediately after flush | Polls until summary visible (RU-costly; tests/demos) |
222
+
|`process_now()`| Synchronous, returns when done | No-op (work runs async on change feed) |
223
+
|`process_now_and_wait()`| Returns immediately after flush | Polls until summary visible (RU-costly; tests/demos) |
191
224
192
225
```python
193
226
from agent_memory_toolkit import CosmosMemoryClient, DurableFunctionProcessor
Async equivalents (`AsyncInProcessProcessor`, `AsyncDurableFunctionProcessor`) live in `agent_memory_toolkit.aio`.
@@ -243,6 +276,6 @@ tests/ Unit + integration tests (pytest)
243
276
244
277
## Migration notes
245
278
246
-
-**`agent_memory_toolkit.processing.ProcessingClient` is removed.** Drop the import and call `client.flush()` (or `client.flush_and_wait()`) instead. Same for the async `AsyncProcessingClient`.
279
+
-**`agent_memory_toolkit.processing.ProcessingClient` is removed.** Drop the import and call `client.process_now()` (or `client.process_now_and_wait()`) instead. Same for the async `AsyncProcessingClient`.
247
280
-**New `processor=` kwarg.** Defaults to `InProcessProcessor()` — existing code keeps its current behavior with no edits.
248
281
-**`adf_endpoint` / `adf_key` constructor kwargs are gone.** The SDK no longer makes HTTP calls to the Function app at runtime; the Function app reads from the Cosmos change feed.
0 commit comments