Skip to content

Commit 3c97f29

Browse files
committed
Merge branch 'main' into k8s_test_5
2 parents b7c3b0e + b58dad9 commit 3c97f29

12 files changed

Lines changed: 15045 additions & 9 deletions

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ Edit the `[[participants]]` section:
3434
```toml
3535
[[participants]]
3636
agentbeats_id = "your-agent-id-here"
37-
name = "routing_operator"
37+
name = "route_operator"
3838
env = { AZURE_API_KEY = "${AZURE_API_KEY}", AZURE_API_BASE = "${AZURE_API_BASE}" }
3939
```
4040

@@ -60,4 +60,4 @@ For each benchmark, agents are primarily evaluated on the following metrics:
6060

6161
3. Latency: How long does it take for an agent to produce a answer. Can be measured in seconds or number of calls (iterations) to that agent.
6262

63-
The final assessment result for each agent is the average of these three over all queries. Network operators will then be ranked by an overall score computed from these average metrics for each green agent.
63+
The final assessment result for each agent is the average of these three over all queries. Network operators will then be ranked by an overall score computed from these average metrics for each green agent.

generate_compose.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ def fetch_agent_info(agentbeats_id: str) -> dict:
7474
depends_on:{green_depends}
7575
networks:
7676
- agent-network
77-
{k8s_service_options}
77+
{extra_options}
7878
7979
{participant_services}
8080
agentbeats-client:
@@ -184,11 +184,17 @@ def generate_docker_compose(scenario: dict[str, Any], app: str) -> str:
184184
participant_names = [p["name"] for p in participants]
185185

186186
# Expose kubeconfig and localhost for k8s app to allow communication with kind cluster
187-
k8s_service_options = """extra_hosts:
188-
- "host.docker.internal:host-gateway"
189-
volumes:
187+
extra_options = ""
188+
if app == "k8s":
189+
extra_options = """volumes:
190190
- ./kubeconfig:/root/.kube/:ro
191-
"""
191+
extra_hosts:
192+
- "host.docker.internal:host-gateway"
193+
"""
194+
elif app == "route":
195+
extra_options = """volumes:
196+
- /lib/modules:/lib/modules
197+
"""
192198

193199
participant_services = "\n".join([
194200
PARTICIPANT_TEMPLATE.format(
@@ -215,7 +221,7 @@ def generate_docker_compose(scenario: dict[str, Any], app: str) -> str:
215221
participant_services=participant_services,
216222
client_depends=format_depends_on(all_services),
217223
privileged=str(app == "route").lower(),
218-
k8s_service_options=k8s_service_options if app == "k8s" else ""
224+
extra_options=extra_options
219225
)
220226

221227

results/Froot-NetSys-20260111-020722.json

Lines changed: 337 additions & 0 deletions
Large diffs are not rendered by default.

results/lesleychou-20260111-170921.json

Lines changed: 663 additions & 0 deletions
Large diffs are not rendered by default.

results/lesleychou-20260111-173431.json

Lines changed: 13931 additions & 0 deletions
Large diffs are not rendered by default.

route_scenario.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ env = { LOG_LEVEL = "INFO" }
44

55
[[participants]]
66
agentbeats_id = ""
7-
name = "routing_operator"
7+
name = "route_operator"
88
env = { SECRET = "${GITHUB_SECRET_NAME}" }
99

1010
[config]
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"image_digests": {
3+
"green-agent": "ghcr.io/froot-netsys/route_agent@sha256:7772f5975f8bddd6adf5a0fc94adf25dc8e933b88c9654153dd8faa073bce3e3",
4+
"route_operator": "ghcr.io/froot-netsys/a2a_llm@sha256:4dd2c986b5ee439c71d4b758b1fb8b201e940fffa022b87e1c8c375a57abfba9",
5+
"agentbeats-client": "ghcr.io/agentbeats/agentbeats-client@sha256:13dfe3ef4e583a80e7ce2fe3becd0ce3b879841368a7f4fa40b6ebbabeeb014e"
6+
},
7+
"timestamp": "2026-01-11T02:07:22Z"
8+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
[green_agent]
2+
agentbeats_id = "019ba8d8-c1d1-7923-b6c7-c5020e1c6cbe"
3+
env = { LOG_LEVEL = "INFO" }
4+
5+
[[participants]]
6+
agentbeats_id = "019ba44f-9d1f-7ff3-8fbe-35c4ecfa40b2"
7+
name = "route_operator"
8+
9+
[participants.env]
10+
AZURE_API_KEY = "${AZURE_API_KEY}"
11+
AZURE_API_BASE = "${AZURE_API_BASE}"
12+
AZURE_API_VERSION = "2024-12-01-preview"
13+
MODEL_NAME = "azure/gpt-4.1"
14+
15+
[config]
16+
# Prompt strategy for the agent. Options: "zeroshot_base", "zeroshot_cot", "fewshot_base", "fewshot_cot"
17+
prompt_type = "zeroshot_base"
18+
# Number of queries to generate for each error type (15 error types total).
19+
num_queries = 1
20+
# Maximum number of iterations the agent can take to resolve a given routing issue.
21+
max_iterations = 10
22+
23+
# DO NOT MODIFY BELOW THIS LINE.
24+
benchmark_path = "assessment_error_config.json"
25+
regenerate_benchmark = true
26+
output_dir = "dump"
27+
num_switches = 2
28+
num_hosts_per_subnet = 1
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"image_digests": {
3+
"green-agent": "ghcr.io/froot-netsys/route_agent@sha256:7772f5975f8bddd6adf5a0fc94adf25dc8e933b88c9654153dd8faa073bce3e3",
4+
"route_operator": "ghcr.io/froot-netsys/a2a_llm@sha256:4dd2c986b5ee439c71d4b758b1fb8b201e940fffa022b87e1c8c375a57abfba9",
5+
"agentbeats-client": "ghcr.io/agentbeats/agentbeats-client@sha256:13dfe3ef4e583a80e7ce2fe3becd0ce3b879841368a7f4fa40b6ebbabeeb014e"
6+
},
7+
"timestamp": "2026-01-11T17:09:21Z"
8+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
[green_agent]
2+
agentbeats_id = "019ba8d8-c1d1-7923-b6c7-c5020e1c6cbe"
3+
env = { LOG_LEVEL = "INFO" }
4+
5+
[[participants]]
6+
agentbeats_id = "019ba44f-9d1f-7ff3-8fbe-35c4ecfa40b2"
7+
name = "route_operator"
8+
env = { AZURE_API_KEY = "${AZURE_API_KEY}", AZURE_API_BASE = "${AZURE_API_BASE}", AZURE_API_VERSION = "${AZURE_API_VERSION}", MODEL_NAME = "${MODEL_NAME}" }
9+
10+
[config]
11+
# Prompt strategy for the agent. Options: "zeroshot_base", "zeroshot_cot", "fewshot_base", "fewshot_cot"
12+
prompt_type = "zeroshot_base"
13+
# Number of queries to generate for each error type (15 error types total).
14+
num_queries = 2
15+
# Maximum number of iterations the agent can take to resolve a given routing issue.
16+
max_iterations = 10
17+
18+
# DO NOT MODIFY BELOW THIS LINE.
19+
benchmark_path = "assessment_error_config.json"
20+
regenerate_benchmark = true
21+
output_dir = "dump"
22+
num_switches = 2
23+
num_hosts_per_subnet = 1

0 commit comments

Comments
 (0)