← Lesson
Debate and a Judge
Joeven
Run
Reset
Python loads on first run
SOURCE = "Refunds take 5-7 business days after approval. No cash refunds after 30 days." def proposer(question): return { "answer": "Refunds take 5-7 days, even a year later.", "cites": ["5-7"], } def opponent(question, prop, source): faults = [] if "year later" in prop["answer"] and "30 days" in source: faults.append("ignored the 30-day cash-refund limit") if "5-7" not in source: faults.append("delay not in source") return {"faults": faults, "concede": not faults} def judge(prop, opp, source): if opp["faults"]: return { "winner": "opponent", "final": "Refunds take 5-7 business days after approval, and cash refunds are not available after 30 days.", "faults": opp["faults"], } if "5-7" in prop["answer"] and "5-7" in source: return {"winner": "proposer", "final": prop["answer"], "faults": []} return {"winner": "human", "final": None, "faults": ["judge uncertain"]} q = "How do refunds work?" prop = proposer(q) opp = opponent(q, prop, SOURCE) verdict = judge(prop, opp, SOURCE) print("PROPOSER", prop) print("OPPONENT", opp) print("JUDGE", verdict)
Run to execute this in your browser. Nothing is sent to a server.