haive.games.framework.multi_player.config ========================================= .. py:module:: haive.games.framework.multi_player.config .. autoapi-nested-parse:: Configuration for multi-player game agents. This module provides the configuration class for multi-player game agents, supporting features like: - Role-based player configurations - LLM engine configurations per role - Game state schema definitions - Visualization settings - Game flow control .. rubric:: Example >>> from haive.agents.agent_games.framework.multi_player.config import MultiPlayerGameConfig >>> from haive.core.engine.aug_llm import AugLLMConfig >>> >>> # Create a game configuration >>> config = MultiPlayerGameConfig( ... state_schema=MyGameState, ... engines={ ... "player": {"move": player_llm_config}, ... "narrator": {"narrate": narrator_llm_config} ... } ... ) Classes ------- .. autoapisummary:: haive.games.framework.multi_player.config.MultiPlayerGameConfig Module Contents --------------- .. py:class:: MultiPlayerGameConfig Bases: :py:obj:`haive.core.engine.agent.agent.AgentConfig` Configuration for multi-player game agents. This class defines the configuration for multi-player game agents, including state management, player roles, and LLM configurations. .. attribute:: state_schema State schema for the game. :type: Type[MultiPlayerGameState] .. attribute:: player_schemas Role-specific schemas. :type: Dict[str, Type[BaseModel]] .. attribute:: engines LLM configs by role. :type: Dict[str, Dict[str, AugLLMConfig]] .. attribute:: initial_player_count Default number of players. :type: int .. attribute:: visualize Whether to visualize the game. :type: bool .. attribute:: max_rounds Maximum number of rounds. :type: Optional[int] .. attribute:: async_mode Whether to run players asynchronously. :type: bool .. rubric:: Example >>> config = MultiPlayerGameConfig( ... state_schema=MyGameState, ... engines={ ... "player": { ... "move": AugLLMConfig( ... name="player_move", ... llm_config=my_llm_config, ... prompt_template=move_prompt ... ) ... } ... }, ... initial_player_count=4 ... ) .. py:class:: Config Pydantic configuration.