games.debate_v2.judges¶

AI Judge System for Gamified Debates.

This module provides sophisticated AI judge agents that can evaluate debates using different criteria and scoring methodologies.

Classes¶

AIDebateJudge

AI judge that evaluates debate performances.

DebateJudgingPanel

Panel of multiple AI judges for comprehensive debate evaluation.

DebateJudgment

Complete judgment of a debate by multiple judges.

JudgeScore

Individual judge's scoring for a debate.

JudgeType

Different types of AI judges with different personalities.

JudgingCriteria

Different criteria for judging debates.

Functions¶

create_academic_judges([num_judges])

Create academic judges focused on evidence and logic.

create_public_judges([num_judges])

Create public judges focused on accessibility and appeal.

create_tournament_judges([num_judges])

Create judges suitable for tournament play.

Module Contents¶

class games.debate_v2.judges.AIDebateJudge(name, judge_type=JudgeType.BALANCED, expertise_area=None, strictness_level=0.5)¶

AI judge that evaluates debate performances.

Init .

Parameters:
  • name (str) – [TODO: Add description]

  • judge_type (JudgeType) – [TODO: Add description]

  • expertise_area (str | None) – [TODO: Add description]

  • strictness_level (float) – [TODO: Add description]

async judge_player_performance(player_name, player_position, debate_transcript, topic)¶

Judge a single player’s performance in the debate.

Parameters:
  • player_name (str)

  • player_position (str)

  • debate_transcript (str)

  • topic (str)

Return type:

JudgeScore

class games.debate_v2.judges.DebateJudgingPanel(judges)¶

Panel of multiple AI judges for comprehensive debate evaluation.

Init .

Parameters:

judges (list[AIDebateJudge]) – [TODO: Add description]

classmethod create_expert_panel(expertise_area)¶

Create a panel specialized in a particular area.

Parameters:

expertise_area (str)

Return type:

DebateJudgingPanel

classmethod create_standard_panel(num_judges=3)¶

Create a standard panel with configurable number of randomized judges.

Parameters:

num_judges (int) – Number of judges to include (default: 3 to avoid ties) Must be odd number for proper tie-breaking.

Return type:

DebateJudgingPanel

async judge_debate(topic, players, positions, debate_transcript)¶

Get comprehensive judgment from all judges.

Parameters:
Return type:

DebateJudgment

class games.debate_v2.judges.DebateJudgment(/, **data)¶

Bases: pydantic.BaseModel

Complete judgment of a debate by multiple judges.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

data (Any)

class games.debate_v2.judges.JudgeScore(/, **data)¶

Bases: pydantic.BaseModel

Individual judge’s scoring for a debate.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

data (Any)

class games.debate_v2.judges.JudgeType¶

Bases: str, enum.Enum

Different types of AI judges with different personalities.

Initialize self. See help(type(self)) for accurate signature.

class games.debate_v2.judges.JudgingCriteria¶

Bases: str, enum.Enum

Different criteria for judging debates.

Initialize self. See help(type(self)) for accurate signature.

games.debate_v2.judges.create_academic_judges(num_judges=3)¶

Create academic judges focused on evidence and logic.

Parameters:

num_judges (int) – Number of judges (default: 3)

Return type:

DebateJudgingPanel

games.debate_v2.judges.create_public_judges(num_judges=3)¶

Create public judges focused on accessibility and appeal.

Parameters:

num_judges (int) – Number of judges (default: 3)

Return type:

DebateJudgingPanel

games.debate_v2.judges.create_tournament_judges(num_judges=3)¶

Create judges suitable for tournament play.

Parameters:

num_judges (int) – Number of judges (default: 3 to avoid ties)

Return type:

DebateJudgingPanel