goodmem-agent-framework 0.3.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- goodmem_agent_framework/__init__.py +47 -0
- goodmem_agent_framework/_client.py +663 -0
- goodmem_agent_framework/_context_provider.py +200 -0
- goodmem_agent_framework/_tools.py +327 -0
- goodmem_agent_framework/py.typed +0 -0
- goodmem_agent_framework-0.3.0.dist-info/METADATA +252 -0
- goodmem_agent_framework-0.3.0.dist-info/RECORD +9 -0
- goodmem_agent_framework-0.3.0.dist-info/WHEEL +4 -0
- goodmem_agent_framework-0.3.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Copyright (c) Microsoft. All rights reserved.
|
|
2
|
+
|
|
3
|
+
"""GoodMem integration for Microsoft Agent Framework.
|
|
4
|
+
|
|
5
|
+
This package provides two ways to use GoodMem with Agent Framework agents:
|
|
6
|
+
|
|
7
|
+
1. **Context provider** — :class:`GoodMemContextProvider` automatically
|
|
8
|
+
retrieves relevant memories before each agent run and stores
|
|
9
|
+
conversations after, using the ``BaseContextProvider`` hooks pattern.
|
|
10
|
+
|
|
11
|
+
2. **Tools** — :func:`create_goodmem_tools` exposes GoodMem operations
|
|
12
|
+
as agent tools, letting the model decide when to read/write memories.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
|
|
17
|
+
import importlib.metadata
|
|
18
|
+
from typing import TYPE_CHECKING
|
|
19
|
+
|
|
20
|
+
from ._client import GoodMemClient
|
|
21
|
+
from ._context_provider import GoodMemContextProvider
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING:
|
|
24
|
+
from ._tools import create_goodmem_tools as create_goodmem_tools
|
|
25
|
+
else:
|
|
26
|
+
|
|
27
|
+
def __getattr__(name: str): # noqa: ANN001, ANN202
|
|
28
|
+
if name == "create_goodmem_tools":
|
|
29
|
+
from ._tools import create_goodmem_tools
|
|
30
|
+
|
|
31
|
+
return create_goodmem_tools
|
|
32
|
+
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
# Looked up by the distribution name rather than __name__, so it does not
|
|
36
|
+
# depend on the import name matching the distribution name.
|
|
37
|
+
try:
|
|
38
|
+
__version__ = importlib.metadata.version("goodmem-agent-framework")
|
|
39
|
+
except importlib.metadata.PackageNotFoundError:
|
|
40
|
+
__version__ = "0.0.0" # Fallback for development mode
|
|
41
|
+
|
|
42
|
+
__all__ = [
|
|
43
|
+
"GoodMemClient",
|
|
44
|
+
"GoodMemContextProvider",
|
|
45
|
+
"create_goodmem_tools",
|
|
46
|
+
"__version__",
|
|
47
|
+
]
|