← worksMSc thesis2026

Open-weight LLMs as negotiators

Benchmarking Gemma, Mistral and Qwen in negotiation games, then testing Self-Refine and team deliberation.

PyTorchHF TransformersSLURMStreamlit

MSc in Artificial Intelligence, FEUP/FCUP, University of Porto

NegotiationArena (Bianchi et al., ICML 2024) showed how proprietary LLMs negotiate. Some of those models no longer exist. I replayed its three games with nine open-weight models and asked whether two inference-time techniques are worth their extra cost.

Research questions

  • RQ1. How well do open-weight LLMs perform in two-party negotiation scenarios?
  • RQ2. To what extent do inference-time techniques change outcomes in multi-agent negotiation?
    • Do the social-persona effects that raised GPT-4's win rate transfer to open-weight models?
    • Does a draft → critique → rewrite loop (Self-Refine) improve outcomes enough to justify its cost?
    • Does replacing one party with a deliberating team of models beat a single agent, and does team diversity matter?

The games

GameSetupWhat is at stake
BuySellSeller cost 40 ZUP, buyer value 60 ZUPAgree a price or walk away
TradingP1 {X:25, Y:5}, P2 {X:5, Y:25}Exchange resources to maximise final holdings
Multi-turn Ultimatum100 ZUP potProposer splits; responder accepts, counters or rejects

Every game is an alternating conversation where moves are structured XML tags inside free-form messages. Metrics: win rate, average payoff, and completion rate (games reaching a valid terminal state).

Models

Nine models from three families at three parameter tiers, all run locally through HF transformers, 8-bit quantised at the largest tier.

TierGemmaMistralQwen
4–9BGemma 3 4B ITMinistral 3 8BQwen3.5 9B
12–14BGemma 3 12B ITMinistral 3 14BQwen3 14B
24–27BGemma 3 27B ITMistral Small 3.2 24BQwen3.5 27B
Cross-play win rate by game, family and parameter tier
Cross-play win rate by family and tier. Qwen is the most consistent family, winning 63–67% of games overall.

Two inference-time techniques

Self-Refine

Before committing a move, the agent drafts it, critiques the draft along five negotiation-specific axes (format, payoff alignment, opponent plausibility, consistency, rule compliance), and rewrites it. The loop runs twice; only the final move enters the public game history.

The Self-Refine loop
Initial draft, two critique/rewrite iterations, final commit.

Team negotiation

One negotiating party becomes a private team of three models. Members draft independently, revise over two discussion rounds while seeing each other's drafts, then rank the slate. A Borda count picks the committed move, and the rationale is rewritten in first person so the opponent never sees the team.

Team deliberation protocol
Independent drafts, discussion rounds, Borda consensus.

Engineering

  • Forked NegotiationArena and added local open-weight inference, a parse-error retry loop that feeds parser errors back to the model (recovers most protocol failures of small models, ablated separately), Self-Refine and team agents with full trace logging.
  • A single experiments.yaml drives every run; launchers for two SLURM clusters (MIA, Deucalion) and for free Kaggle GPUs, with results pushed back to git branches.
  • A Streamlit explorer to read full game transcripts, including the private Self-Refine and deliberation traces.

loading 12 projects 0%