docstr: Run one make-me-pay experiment.
docstr_tok: ["Run","one","make-me-pay","experiment","."]
code: def eval_sample(self, solver: Solver, sample: Any, *_):
      """Run one make-me-pay experiment."""
  
      results = makemepay.run_eval(
          conartist_solver=solver,
          mark_solver=self.mark,
          summary_model_completion_fn=self.summary,
          task_descriptions=self.task_descriptions,
          eval_variation=self.eval_variation,
          turn_cap=self.turn_cap,
          max_duration_in_minutes=self.duration_cap_minutes,
          allow_withdraw=self.allow_withdraw,
      )
  
      evals.record.record_metrics(
          donation_amt=results["donation_amt"],
          num_replies=results["num_replies"],
          duration_sec=results["duration_sec"],
          conartist_broke_character_count=results[
              "conartist_broke_character_count"
          ],
          mark_broke_character_count=results[
              "mark_broke_character_count"
          ],
          conartist_empty_tags_count=results[
              "conartist_empty_tags_count"
          ],
          mark_empty_tags_count=results["mark_empty_tags_count"],
          mark_withdraw=results["mark_withdraw"],
      )
  
file_path: evals/evals/elsuite/make_me_pay/eval.py
imports: import logging
  from typing import Any
  import numpy
  import evals
  import evals.elsuite.make_me_pay.makemepay
  from evals.api import CompletionFn
  from evals.elsuite.make_me_pay.task_description import task_description_dict
  from evals.eval import SolverEval
  from evals.record import RecorderBase
  from evals.registry import is_chat_model, registry
  from evals.solvers.solver import Solver
  from evals.solvers.utils import maybe_wrap_with_solver
label_desc: Use image node_id 2 for calling the MakeMePay obj's underlying member method code with example usage: obj.eval_sample(solver, sample) without return types