Extract detailed agent information from metadata
(metadata: Metadata)
| 368 | |
| 369 | |
| 370 | def get_agent_info_from_metadata(metadata: Metadata) -> list[AgentInfo]: |
| 371 | """Extract detailed agent information from metadata""" |
| 372 | agents = [] |
| 373 | players_config = metadata.players_config |
| 374 | |
| 375 | for player_config in players_config: |
| 376 | if isinstance(player_config, dict): |
| 377 | name = player_config.get("name", "unknown") |
| 378 | config = player_config.get("config", {}) |
| 379 | model_name = ( |
| 380 | config.get("model", {}).get("model_name") |
| 381 | if isinstance(config.get("model"), dict) |
| 382 | else config.get("model") |
| 383 | ) |
| 384 | agent_class = config.get("agent_class") |
| 385 | agents.append(AgentInfo(name=name, model_name=model_name, agent_class=agent_class)) |
| 386 | |
| 387 | return agents |
| 388 | |
| 389 | |
| 390 | def _load_game_metadata(folder_info: dict[str, Any]) -> dict[str, Any]: |
no test coverage detected