maf-cachebench 0.2.0__tar.gz → 0.3.1__tar.gz
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.
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/PKG-INFO +7 -7
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/pyproject.toml +7 -7
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/pyproject.toml.orig +8 -8
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/__init__.py +1 -1
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_tokenizers.py +2 -3
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/LICENSE +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/README.md +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/__main__.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_advise_cli.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_advisor.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_cli.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_cli_selection.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_fill.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_live.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_live_cli.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_metrics.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_providers.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_recall.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_recall_cli.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_records.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_report.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_run_identity.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_runner.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_strategies.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_summary.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_summary_cli.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_transcripts.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/_types.py +0 -0
- {maf_cachebench-0.2.0 → maf_cachebench-0.3.1}/src/maf_cachebench/py.typed +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: maf-cachebench
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.1
|
|
4
4
|
Summary: Benchmark for Microsoft Agent Framework compaction strategies: what each one costs in prompt-cache hits and what it loses, measured on a replayed conversation or a live agent.
|
|
5
5
|
Keywords: benchmark,compaction,prompt-cache,agent-framework,microsoft-agent-framework
|
|
6
6
|
Author: SOKOLAI BV
|
|
@@ -15,15 +15,15 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.13
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.14
|
|
17
17
|
Classifier: Topic :: Software Development :: Testing
|
|
18
|
-
Requires-Dist: agent-framework-core>=1.
|
|
19
|
-
Requires-Dist: maf-compaction>=0.
|
|
18
|
+
Requires-Dist: agent-framework-core>=1.22.0,<1.23
|
|
19
|
+
Requires-Dist: maf-compaction>=0.8.0,<0.9
|
|
20
20
|
Requires-Dist: httpx>=0.27,<1
|
|
21
|
-
Requires-Dist: agent-framework-foundry>=1.
|
|
21
|
+
Requires-Dist: agent-framework-foundry>=1.15.0,<2 ; extra == 'foundry'
|
|
22
22
|
Requires-Dist: azure-identity>=1.17,<2 ; extra == 'foundry'
|
|
23
|
-
Requires-Dist: agent-framework-mistral>=1.0.
|
|
24
|
-
Requires-Dist: agent-framework-ollama>=1.0.
|
|
23
|
+
Requires-Dist: agent-framework-mistral>=1.0.0b261015,<2 ; extra == 'mistral'
|
|
24
|
+
Requires-Dist: agent-framework-ollama>=1.0.0b261015,<2 ; extra == 'ollama'
|
|
25
25
|
Requires-Dist: ollama>=0.5.3,<0.6 ; extra == 'ollama'
|
|
26
|
-
Requires-Dist: agent-framework-openai>=1.
|
|
26
|
+
Requires-Dist: agent-framework-openai>=1.17.0,<2 ; extra == 'openai'
|
|
27
27
|
Requires-Dist: azure-identity>=1.17,<2 ; extra == 'openai'
|
|
28
28
|
Requires-Dist: tiktoken>=0.8,<1 ; extra == 'tiktoken'
|
|
29
29
|
Requires-Python: >=3.12, <3.15
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "maf-cachebench"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.3.1"
|
|
4
4
|
description = "Benchmark for Microsoft Agent Framework compaction strategies: what each one costs in prompt-cache hits and what it loses, measured on a replayed conversation or a live agent."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.12,<3.15"
|
|
@@ -24,8 +24,8 @@ classifiers = [
|
|
|
24
24
|
"Topic :: Software Development :: Testing",
|
|
25
25
|
]
|
|
26
26
|
dependencies = [
|
|
27
|
-
"agent-framework-core>=1.
|
|
28
|
-
"maf-compaction>=0.
|
|
27
|
+
"agent-framework-core>=1.22.0,<1.23",
|
|
28
|
+
"maf-compaction>=0.8.0,<0.9",
|
|
29
29
|
"httpx>=0.27,<1",
|
|
30
30
|
]
|
|
31
31
|
|
|
@@ -35,16 +35,16 @@ email = "info@sokolai.com"
|
|
|
35
35
|
|
|
36
36
|
[project.optional-dependencies]
|
|
37
37
|
openai = [
|
|
38
|
-
"agent-framework-openai>=1.
|
|
38
|
+
"agent-framework-openai>=1.17.0,<2",
|
|
39
39
|
"azure-identity>=1.17,<2",
|
|
40
40
|
]
|
|
41
41
|
foundry = [
|
|
42
|
-
"agent-framework-foundry>=1.
|
|
42
|
+
"agent-framework-foundry>=1.15.0,<2",
|
|
43
43
|
"azure-identity>=1.17,<2",
|
|
44
44
|
]
|
|
45
|
-
mistral = ["agent-framework-mistral>=1.0.
|
|
45
|
+
mistral = ["agent-framework-mistral>=1.0.0b261015,<2"]
|
|
46
46
|
ollama = [
|
|
47
|
-
"agent-framework-ollama>=1.0.
|
|
47
|
+
"agent-framework-ollama>=1.0.0b261015,<2",
|
|
48
48
|
"ollama>=0.5.3,<0.6",
|
|
49
49
|
]
|
|
50
50
|
tiktoken = ["tiktoken>=0.8,<1"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "maf-cachebench"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.3.1"
|
|
4
4
|
description = "Benchmark for Microsoft Agent Framework compaction strategies: what each one costs in prompt-cache hits and what it loses, measured on a replayed conversation or a live agent."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.12,<3.15"
|
|
@@ -27,22 +27,22 @@ classifiers = [
|
|
|
27
27
|
dependencies = [
|
|
28
28
|
# The strategies under measurement, and the private `_compaction` helpers both packages
|
|
29
29
|
# read; the same minor as maf-compaction pins, for the same reason.
|
|
30
|
-
"agent-framework-core>=1.
|
|
30
|
+
"agent-framework-core>=1.22.0,<1.23",
|
|
31
31
|
# The record strategy must accept the same target as the recall tool.
|
|
32
|
-
"maf-compaction>=0.
|
|
32
|
+
"maf-compaction>=0.8.0,<0.9",
|
|
33
33
|
# Model prices are fetched from OpenRouter for the advisor's cost table.
|
|
34
34
|
"httpx>=0.27,<1",
|
|
35
35
|
]
|
|
36
36
|
|
|
37
37
|
[project.optional-dependencies]
|
|
38
38
|
# One extra per provider route; a run needs only the client it points at. The floors are the
|
|
39
|
-
# client versions
|
|
39
|
+
# client versions qualified with the framework band; the Mistral and Ollama clients
|
|
40
40
|
# have only pre-release versions on the index, so their floors name one.
|
|
41
|
-
openai = ["agent-framework-openai>=1.
|
|
42
|
-
foundry = ["agent-framework-foundry>=1.
|
|
43
|
-
mistral = ["agent-framework-mistral>=1.0.
|
|
41
|
+
openai = ["agent-framework-openai>=1.17.0,<2", "azure-identity>=1.17,<2"]
|
|
42
|
+
foundry = ["agent-framework-foundry>=1.15.0,<2", "azure-identity>=1.17,<2"]
|
|
43
|
+
mistral = ["agent-framework-mistral>=1.0.0b261015,<2"]
|
|
44
44
|
# The Ollama route builds the client's own async HTTP client, so that package is named too.
|
|
45
|
-
ollama = ["agent-framework-ollama>=1.0.
|
|
45
|
+
ollama = ["agent-framework-ollama>=1.0.0b261015,<2", "ollama>=0.5.3,<0.6"]
|
|
46
46
|
tiktoken = ["tiktoken>=0.8,<1"]
|
|
47
47
|
|
|
48
48
|
[project.scripts]
|
|
@@ -107,7 +107,7 @@ from ._types import CellKey, CellSummary, Transcript, TranscriptTurn, TurnRecord
|
|
|
107
107
|
try:
|
|
108
108
|
__version__ = importlib.metadata.version(__name__)
|
|
109
109
|
except importlib.metadata.PackageNotFoundError:
|
|
110
|
-
__version__ = "0.
|
|
110
|
+
__version__ = "0.3.1" # Fallback for development mode
|
|
111
111
|
|
|
112
112
|
__all__ = [
|
|
113
113
|
"AGENT_KINDS",
|
|
@@ -28,9 +28,8 @@ REASONING_TOKENS_KEY: Final[str] = "reasoning_output_token_count"
|
|
|
28
28
|
|
|
29
29
|
_STAMP_MARKER: Final[str] = f'"{REASONING_TOKENS_KEY}"'
|
|
30
30
|
|
|
31
|
-
#:
|
|
32
|
-
#: framework
|
|
33
|
-
#: wrapper drops it at any depth below, where the Foundry client keeps a copy of the item.
|
|
31
|
+
#: Legacy serialized prompts can retain the Foundry replay payload even though the
|
|
32
|
+
#: framework's current compaction serializer removes it before token counting.
|
|
34
33
|
_OPAQUE_KEY: Final[str] = "encrypted_content"
|
|
35
34
|
_OPAQUE_MARKER: Final[str] = f'"{_OPAQUE_KEY}"'
|
|
36
35
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|