haive.games.fox_and_geese.generic_engines ========================================= .. py:module:: haive.games.fox_and_geese.generic_engines .. autoapi-nested-parse:: Generic FoxAndGeese engine creation using the generic player agent system. This module provides generic engine creation functions for FoxAndGeese games, allowing for configurable LLM models and game-specific player identifiers. Classes ------- .. autoapisummary:: haive.games.fox_and_geese.generic_engines.FoxAndGeeseEngineFactory haive.games.fox_and_geese.generic_engines.FoxAndGeesePlayerIdentifiers haive.games.fox_and_geese.generic_engines.FoxAndGeesePromptGenerator Functions --------- .. autoapisummary:: haive.games.fox_and_geese.generic_engines.create_advanced_fox_and_geese_engines haive.games.fox_and_geese.generic_engines.create_budget_fox_and_geese_engines haive.games.fox_and_geese.generic_engines.create_generic_fox_and_geese_config_from_example haive.games.fox_and_geese.generic_engines.create_generic_fox_and_geese_engines haive.games.fox_and_geese.generic_engines.create_generic_fox_and_geese_engines_simple haive.games.fox_and_geese.generic_engines.create_mixed_fox_and_geese_engines Module Contents --------------- .. py:class:: FoxAndGeeseEngineFactory Bases: :py:obj:`haive.games.core.agent.generic_player_agent.GenericGameEngineFactory`\ [\ :py:obj:`str`\ , :py:obj:`str`\ ] Factory for creating FoxAndGeese game engines. Init . .. py:method:: get_structured_output_model(role) Get the structured output model for a specific role. .. py:class:: FoxAndGeesePlayerIdentifiers Bases: :py:obj:`haive.games.core.agent.generic_player_agent.GamePlayerIdentifiers`\ [\ :py:obj:`str`\ , :py:obj:`str`\ ] Player identifiers for FoxAndGeese game. Init . .. py:class:: FoxAndGeesePromptGenerator(players) Bases: :py:obj:`haive.games.core.agent.generic_player_agent.GenericPromptGenerator`\ [\ :py:obj:`str`\ , :py:obj:`str`\ ] Prompt generator for FoxAndGeese game. Init . :param players: [TODO: Add description] .. py:method:: create_analyzer_prompt(player) Create analysis prompt for FoxAndGeese game state. .. py:method:: create_move_prompt(player) Create move prompt for FoxAndGeese player. .. py:function:: create_advanced_fox_and_geese_engines(**kwargs) Create advanced FoxAndGeese engines with high-powered models. .. py:function:: create_budget_fox_and_geese_engines(**kwargs) Create budget-friendly FoxAndGeese engines. .. py:function:: create_generic_fox_and_geese_config_from_example(example_name, temperature = 0.3) Create FoxAndGeese engines from a predefined example configuration. :param example_name: Name of the example configuration :param temperature: Generation temperature :returns: Dictionary of FoxAndGeese engines :rtype: Dict[str, AugLLMConfig] Available examples: - "gpt_vs_claude": GPT vs Claude - "gpt_only": GPT for both players - "claude_only": Claude for both players - "budget": Cost-effective models - "mixed": Different provider per role - "advanced": High-powered models for strategic gameplay .. py:function:: create_generic_fox_and_geese_engines(player_configs) Create FoxAndGeese engines from detailed player configurations. :param player_configs: Dictionary mapping role names to player configurations :returns: Dictionary of FoxAndGeese engines :rtype: Dict[str, AugLLMConfig] Expected roles: - "fox_player": Player 1 configuration - "geese_player": Player 2 configuration - "fox_analyzer": Player 1 analyzer configuration - "geese_analyzer": Player 2 analyzer configuration .. py:function:: create_generic_fox_and_geese_engines_simple(fox_model, geese_model, temperature = 0.3) Create FoxAndGeese engines with simple model specifications. :param fox_model: Model for fox and analyzer :param geese_model: Model for geese and analyzer :param temperature: Generation temperature :returns: Dictionary of FoxAndGeese engines :rtype: Dict[str, AugLLMConfig] .. py:function:: create_mixed_fox_and_geese_engines(**kwargs) Create mixed-provider FoxAndGeese engines.