What's Changed
- feat: add ACM Educational Talks notebook (#604) by @nerdai in #607
- build(deps): bump the all-python-packages group across 1 directory with 3 updates by @dependabot[bot] in #594
- fix: ACM notebook hotfixes — Ollama setup and MCP server path by @nerdai in #608
- feat: add delete() and update() to BaseMemoryStore (#585) by @nerdai in #609
- chore: update codecov action by @nerdai in #617
- chore: fix codecov auth by @nerdai in #618
- feat: add field labels to Episode._format_concat output by @nerdai in #616
- feat: introduce FormatMode enum for Episode.format() mode param by @nerdai in #620
- refactor: replace EpisodeAttr/include with exclude set in Episode.format() by @nerdai in #623
- chore: add CHANGELOG entry for #623 by @nerdai in #624
- examples: add ch07.ipynb with Episode construction and format modes example by @nerdai in #626
- chore: update ch07 Example 1 to use Hailstone task by @nerdai in #627
- refactor: remove
keyfromBaseMemoryStoreinterface; movekey_fntoQdrantMemoryStoreby @nerdai in #629 - refactor: make
_read_recentand_searchinternal; dispatch inBaseMemoryStore.search()by @nerdai in #630 - feat: warn in BaseMemoryStore.search() when result count exceeds max_results by @nerdai in #632
- examples: add ch07 Example 2 — JSONMemoryStore write, search, and count by @nerdai in #634
- build(deps): bump the all-python-packages group with 2 updates by @dependabot[bot] in #636
- build(deps): bump codecov/codecov-action from 6 to 7 by @dependabot[bot] in #635
- nit: rename _collection to _collection_name in QdrantMemoryStore by @nerdai in #637
- refactor: migrate QdrantMemoryStore to AsyncQdrantClient by @nerdai in #639
- chore: add .gitattributes to mark notebooks as documentation for Linguist by @nerdai in #640
- nit: rename JSONMemoryStore._rewrite() to _rewrite_jsonl() by @nerdai in #642
- refactor: add qdrant_point_to_episode() to qdrant/utils.py for symmetry by @nerdai in #644
- feat: add Example 3 (QdrantMemoryStore) to examples/ch07.ipynb by @nerdai in #646
- chore: use TypeAlias for MetadataFn in memory.py by @nerdai in #647
- fix: Memory.record() works on a deep copy of Episode (#648) by @nerdai in #650
- feat: add Example 4 to examples/ch07.ipynb — Memory demo with metadata_fn by @nerdai in #651
- build(deps): bump the all-python-packages group with 6 updates by @dependabot[bot] in #652
- feat: add Example 5 to examples/ch07.ipynb — LLMAgent with reflective_memory() by @nerdai in #654
- feat: replace reflective_memory() with similarity_memory() in Example 5 of ch07.ipynb by @nerdai in #656
- chore: notebook remove dead comment by @nerdai in #657
- feat: restructure ch07.ipynb — remove standalone Qdrant example, promote Examples 4-5 by @nerdai in #660
- feat: rename BaseMemoryStore.search() to recall() by @nerdai in #661
- feat: swap JSONMemoryStore for QdrantMemoryStore in ch07.ipynb Example 2 by @nerdai in #663
- book diagrams: add UML diagrams for Episode, EpisodeFormatMode, and RecallMode by @nerdai in #664
- docs: add UML diagram for BaseMemoryStore by @nerdai in #665
- book diagrams: add UML diagrams for QdrantMemoryStore and JSONMemoryStore by @nerdai in #666
- book diagrams: add UML diagram for Memory class by @nerdai in #667
- docs: add UML diagram for ch07 updates to LLMAgent and TaskHandler by @nerdai in #669
- chore: update ch07.ipynb with re-executed outputs by @nerdai in #670
- build(deps): bump actions/checkout from 6 to 7 by @dependabot[bot] in #671
- build(deps): bump the all-python-packages group with 4 updates by @dependabot[bot] in #672
- version: bump version to v0.0.19 by @nerdai in #674
Full Changelog: v0.0.18...v0.0.19