Paper · 2024-02-21 · cs.CL, cs.AI
Are LLMs Effective Negotiators? Systematic Evaluation of the Multifaceted Capabilities of LLMs in Negotiation Dialogues
Zero-shot evaluation of GPT-3.5, GPT-4, Mistral-7B, Vicuna-13B/33B and Wizard-13B on 35 tasks built from four bilateral negotiation dialogue datasets, against a majority baseline and a fine-tuned Flan-T5. GPT-4 leads most tasks; models agree poorly with humans on subjective judgements; generated replies are near human on coherence but not on strategy. Author-reported.
LLM evaluationTheory of mindChain-of-thought promptingIn-context learningevaluationnegotiationdialoguebenchmark
arXivPDFCodeMarkdown15 min read
AI-compiled by claude-haiku-5-5 on 2026-11-01, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.
In plain words
Negotiating well is hard for software. A good negotiator has to follow what has already been said, guess what the other side really wants, and reply in a way that is both sensible and strategic. This paper checks how well large language models manage those separate skills. It uses public datasets of negotiation chats, in which two people split a set of items (food, water and firewood; or balls, hats and books; or trade artifacts; or a job offer) and each person has their own point values for them.
From these chats the authors write 35 test questions, for example "how many items of each kind did you end up with?", "which item is the other side's top priority?" or "is the other person happy with the deal?". Each question is put to the models as a prompt, and the answers are compared with what the human players actually did or reported. Several language models are compared with a trivial majority-answer guess and with a small model that was fine-tuned on each task.
The main finding is that GPT-4 is the strongest model overall, but it is still weak at judging how people feel about a deal and at writing replies that are natural and strategically smart. The paper is best read as a map of which parts of negotiation current models handle and which they do not.
TL;DR
- 35 zero-shot tasks from four negotiation datasets (CRA, DND, CA, JI), split by time stage, objectivity and task type §2.2.
- Six LLMs plus a Majority baseline and a per-task fine-tuned Flan-T5 base §3.1 §3.2.
- GPT-4 is best on most tasks; subjective satisfaction and likeness predictions are weak; replies are close to human on coherence but not on strategy §4 §5.
- Results are author-reported, zero-shot, with one prompt template per task §2.3.
Problem
Negotiation research needs models that can understand a dialogue, track the outcome, infer the partner's priorities and generate strategic replies. Earlier LLM negotiation agents were built end to end, so their individual abilities were not measured separately §1 §6. Without a per-skill evaluation, it is hard to tell whether a model fails at reading the context, at modelling the partner, or at choosing a move §1.
The evaluation assumes the Multi-Issue Bargaining Task setting: two players, a fixed number of items per issue, private point values that stay fixed through the dialogue, and a score equal to the inner product of the values and the items the player receives §2.1. Results depend on this framing and on English dialogues [Broader Impact and Ethical Considerations] [Limitations].
Method
The framework has three steps: design tasks from human-human dialogue datasets, build a prompt per task, and evaluate models on those prompts §2.
Datasets. Four datasets were chosen for a well-defined structure, diversity of scenario and available metadata §2.1 tab. 1.
- CRA: a trading scenario over three artifacts, 119 dialogues.
- DND: a scenario over three kinds of generic item, 6,251 dialogues.
- CA: campsite neighbours sharing three supply types, 1,030 dialogues.
- JI: a recruiter and a job candidate bargaining over five job terms, 2,639 dialogues.
These are the dataset sizes and scenarios in tab. 1. Test instances are sampled per task and capped at 200 tab. 1 caption §2.1.
Task axes. Each of the 35 tasks is tagged on three axes §2.2:
- Objectivity: objective tasks have one correct answer; subjective tasks ask about outcome satisfaction and partner likeness as reported in post-game surveys. Response generation is also treated as subjective and is judged by humans §2.2.1.
- Time stage: Start (no dialogue; only the scenario, item counts and the agent's own priorities), During (the dialogue so far), End (the whole dialogue) §2.2.2.
- Task type: Comprehension, Annotation (dialogue acts and strategies), Partner Modeling (inferring the partner's priorities or feelings), Generation §2.2.3.
Every task is written from the point of view of an agent negotiating for itself, so the partner's private preferences are never shown in the prompt §2.2.
Prompt template. The zero-shot prompt has five parts: a task description, the issue counts and the agent's values, the dialogue or utterance (depending on the stage and task), extra information (dialogue-act or strategy labels, for annotation tasks only), and the question §2.3. The full task list and worked prompts are in app. A and app. D. The question asks for a machine-readable answer, usually in tags, and some tasks ask for step-by-step thinking app. D.
Prompting variants (explored on subsets). Chain-of-thought, two randomly sampled few-shot examples for annotation tasks, two prior utterances for annotation tasks, and a sweep over the number of dialogue utterances shown to the model §5.
# Zero-shot task prompt: five parts [§2.3] [app. D]
# Input: task (stage, description, question), instance (one dataset row)
# Output: one prompt string
def build_prompt(task, instance):
# 1. Task description, written for the agent's own side [§2.2]
description = task.description
# 2. Item counts and the agent's own point values only [§2.2]
counts_and_values = (instance.counts, instance.own_values)
# 3. Dialogue slice allowed by the time stage [§2.2.2]
context = instance.dialogue_until(task.stage)
# 4. Dialogue acts or strategy labels, annotation tasks only [§2.3]
extra = instance.labels if task.is_annotation else None
# 5. The question with its answer format [§2.3] [app. D]
question = task.question
return join(description, counts_and_values, context, extra, question)# Zero-shot evaluation of one task [§2.1] [§3.2] [§3.3]
# Input: model, task, dataset instances
# Output: one score for the task
def evaluate_task(model, task, instances):
# 1. Keep at most 200 test instances for this task [§2.1]
sampled = take(instances, 200)
outputs = {}
for instance in sampled:
# 2. One zero-shot prompt per instance [§2.3]
prompt = build_prompt(task, instance)
# 3. Greedy-style decoding; GPT calls use temperature 0
# [code: models/open_ai.py#L112]
outputs[instance.id] = model.generate(prompt)
# 4. Score with the task's metric (accuracy, macro-F1, ...) [§3.3]
return score(task, outputs, sampled)Baseline. A Majority baseline returns the most frequent training answer. Flan-T5 base is fine-tuned separately on each task, with the long task description replaced by a short instruction app. B. Start-stage tasks are left out of both baselines because a rule-based parser solves them exactly app. B. Fine-tuning used AdamW, a linear schedule, up to 5 epochs, and checkpoint selection on the dev split §3.1 app. B.
Hyperparameters
| Name | Value | Where | Notes |
|---|---|---|---|
| Baseline model | Flan-T5 base, one model per task | §3.1 app. B | Released checkpoint on the Hugging Face hub app. B |
| Optimizer | AdamW | §3.1 | Code sets no optimizer name; weight decay is not passed on (see Paper vs code) |
| Learning rate | 5e-5 (paper); 5e-4 (code) | §3.1; finetune.task.sh | Conflict, see Paper vs code |
| Batch size | 8 (paper); 3 (script); 16 (default) | §3.1; finetune.task.sh; arguments.py | Conflict, see Paper vs code |
| Epochs | up to 5 | §3.1; finetune.task.sh | Agrees |
| LR schedule | linear | §3.1 | Not set in code; Trainer default |
| Checkpoint choice | best checkpoint | §3.1; main.py | Code selects on eval loss, not the task metric arguments.py |
| Train / dev split | 9:1 after holding out the 200 test cases | app. B | dataset.py (test_size=0.1) |
| Test cases per task | capped at 200 | tab. 1; §2.1 | arguments.py |
| Random seed | not stated in paper | — | Training default 1234 arguments.py |
| Flan-T5 input limit | 512 tokens | not stated | hf_model.py |
| Flan-T5 max new tokens | 100 | not stated | hf_model.py |
| Open LLM input limit | 1500 tokens | not stated | hf_model.py |
| Open LLM max new tokens | 200 (Mistral, Vicuna, Wizard) | not stated | hf_model.py |
| GPT input limit | 4096 tokens | not stated | open_ai.py |
| GPT temperature | 0 | not stated | open_ai.py open_ai.py |
| GPT-4 model string | not stated (paper) | §3.2 | gpt-4-1106-preview in the run script openai_gpt4.sh |
| Few-shot examples | 2, drawn at random from other instances | §5 | open_ai.py |
| Prior utterances | 2 (annotation tasks) | §5 | Not checked in code |
| Dialogue utterances shown | sweep, values not given in paper | §5 fig. 6 | Script uses 2, 4, 6, 8 openai_gpt4_additional_exp.sh |
| Validity threshold | 80% valid responses | app. A | Not found in released code |
| Human evaluation | 5 experts, 50 examples | §4.4 [Broader Impact and Ethical Considerations] | Inter-rater ICC 0.82 §4.4 |
| Statistical power | p 0.05, W 0.3, 4 categories, power 0.959 at n=200 | app. C | Chi-squared analysis; McNemar test on T5 vs GPT-4 app. C |
Results
Author-reported, zero-shot, on each task's test set. Setup: four datasets, six LLMs plus two baselines, tab. 1 and §3.
Overview by task type fig. 3 §4:
- Comprehension, Start: GPT-4 averages 81% accuracy; GPT-3.5 and Mistral-7B are above 70%. A rule-based parser reaches 100% on these tasks, so they test little §4.1.
- Comprehension, End: most models sit close to the Majority baseline. GPT-4 averages 65.3% accuracy fig. 3 §4.1.
- Comprehension, subjective: all models score poorly. GPT-4's satisfaction predictions correlate about 0.3 with human ratings §4.1.
- Annotation: GPT-3.5 (62.4%) and GPT-4 (52.5%) average above the fine-tuned Flan-T5 on macro-F1, but Flan-T5 beats GPT-4 on most individual tasks §4.2 fig. 3.
- Partner modeling, objective: GPT-4 is best; smaller open models mostly match the Majority baseline §4.3 fig. 3.
- Partner modeling, subjective: Flan-T5 reaches 50.5% accuracy; GPT-4 reaches the highest PCC, 0.39. Its confusion matrix shows it often predicts neutral or slight liking where partners show strong liking §4.3 fig. 4.
Response generation tab. 2 §4.4. Human coherence and strategy are the reference. GPT-4 is close to the human coherence score on DND and CA, but not on strategy except on CA, where it approaches human level. Coherence is consistently higher than strategy. BLEU and ROUGE favour the fine-tuned Flan-T5, which the paper attributes to dataset-specific training §4.4.
| Model | DND BLEU | DND ROUGE-L | DND BERTScore | DND Coherence | DND Strategy | CA BLEU | CA ROUGE-L | CA BERTScore | CA Coherence | CA Strategy |
|---|---|---|---|---|---|---|---|---|---|---|
| Human | – | – | – | 4.5 | 4.39 | – | – | – | 4.14 | 3.38 |
| Flan-T5 | .167 | .453 | .678 | 4.26* | 4.18 | .028 | .165 | .468 | 3.21* | 2.79* |
| Mistral-7B | .010 | .130 | .401 | 3.48* | 2.96* | .010 | .130 | .401 | 2.99* | 2.68* |
| Wizard-13B | .032 | .190 | .451 | 3.14* | 3.01* | .017 | .135 | .466 | 3.08* | 2.88* |
| Vicuna-13B | .022 | .172 | .486 | 3.48* | 3.34* | .015 | .135 | .472 | 3.36* | 2.92* |
| Vicuna-33B | .038 | .216 | .547 | 3.86* | 3.74* | .016 | .147 | .483 | 3.96 | 3.06* |
| GPT-3.5 | .030 | .200 | .467 | 3.8* | 3.50* | .025 | .162 | .495 | 3.60* | 3.01* |
| GPT-4 | .017 | .178 | .489 | 4.47 | 4.04* | .011 | .149 | .48 | 4.05 | 3.24 |
tab. 2. BLEU, ROUGE-L and BERTScore use the full 200-instance test set; coherence and strategy use 50 instances rated by humans. * marks a significant gap below the human reference (paired bootstrap) tab. 2 caption.
Prediction balance tab. 3 §5.1. On well-balanced tasks GPT-4 has the smallest gap between accuracy and macro-F1 and the lowest KL divergence. On imbalanced dialogue-act and strategy tasks every model loses macro-F1 relative to accuracy; GPT-4 has the smallest gap among them.
| Task group | Metric | GPT-3.5 | GPT-4 | Mistral-7B | Vicuna-13B | Vicuna-33B | Wizard-13B |
|---|---|---|---|---|---|---|---|
| Well-balanced, easy | Acc. | 0.677 | 0.91 | 0.419 | 0.206 | 0.243 | 0.38 |
| Well-balanced, easy | F1 | 0.669 | 0.908 | 0.328 | 0.14 | 0.115 | 0.348 |
| Well-balanced, easy | abs(Acc.-F1) | 0.007 | 0.002 | 0.091 | 0.066 | 0.128 | 0.032 |
| Well-balanced, easy | KL-D | 0.189 | 0.02 | 0.626 | 1.134 | 1.286 | 0.372 |
| Well-balanced, hard | Acc. | 0.638 | 0.825 | 0.458 | 0.538 | 0.331 | 0.307 |
| Well-balanced, hard | F1 | 0.623 | 0.824 | 0.453 | 0.53 | 0.215 | 0.184 |
| Well-balanced, hard | abs(Acc.-F1) | 0.015 | 0.001 | 0.006 | 0.008 | 0.116 | 0.123 |
| Well-balanced, hard | KL-D | 0.08 | 0.019 | 0.069 | 0.046 | 0.978 | 1.038 |
| Imbalanced, dial-act/strategy | Acc. | 0.853 | 0.898 | 0.742 | 0.71 | 0.81 | 0.641 |
| Imbalanced, dial-act/strategy | F1 | 0.525 | 0.624 | 0.334 | 0.39 | 0.43 | 0.323 |
| Imbalanced, dial-act/strategy | abs(Acc.-F1) | 0.328 | 0.274 | 0.408 | 0.32 | 0.38 | 0.318 |
| Imbalanced, dial-act/strategy | KL-D | 0.732 | 0.951 | 1.952 | 1.442 | 1.13 | 1.552 |
tab. 3 (averages over the selected tasks app. A). On the imbalanced group GPT-4 has the smallest accuracy-F1 gap, while GPT-3.5 has the lowest KL-D.
Prompting variants (GPT-4 unless noted) §5:
- Chain-of-thought gives nearly 100% accuracy on the multi-hop arithmetic tasks tested (maximum possible points and actual total points) §5 fig. 5.
- Two few-shot examples improve two of four annotation tasks §5.
- Two prior utterances improve one annotation task and slightly hurt the other three §5.
- Showing more utterances lowers accuracy on the agent's own priorities and raises accuracy on the partner's priorities; the paper attributes this to recency bias §5 fig. 6.
Full task-wise results are in app. A. The table below copies them. A blank cell means the model was not run, or failed the 80% valid-response check; the paper says Majority and Flan-T5 were not run on Start-stage tasks app. A.
| Task | Metric | Majority | Flan-T5 | GPT-3.5 | GPT-4 | Mistral-7B | Vicuna-13B | Vicuna-33B | Wizard-13B |
|---|---|---|---|---|---|---|---|---|---|
| end_deal_likeness_ca | Acc./PCC | 0.525/0 | 0.525/0 | 0.357/0.419 | 0.175/0.367 | 0.119/-0.033 | 0.267/0.245 | 0.239/0.234 | |
| end_deal_satisfaction_ca | Acc./PCC | 0.5/0 | 0.467/-0.008 | 0.373/0.211 | 0.417/0.304 | 0.092/0.111 | 0.266/0.001 | 0.216/0.114 | 0.445/0.118 |
| end_deal_specifics_ca | Acc. | 0.356 | 0.364 | 0.664 | 0.916 | 0.517 | 0.517 | 0.593 | 0.555 |
| end_deal_total_ca | Acc. | 0.142 | 0.233 | 0.158 | 0.083 | 0.15 | 0.05 | 0.017 | 0.017 |
| end_partner_deal_likeness_ca | Acc./PCC | 0.517/0 | 0.517/0 | 0.31/0.295 | 0.308/0.423 | 0.133/0.102 | 0.167/0.259 | 0.178/0.283 | 0.282/-0.086 |
| end_partner_deal_satisfaction_ca | Acc./PCC | 0.433/0 | 0.492/0.181 | 0.426/0.236 | 0.517/0.36 | 0.13/0.26 | 0.271/0.08 | 0.083/0.114 | 0.345/0.124 |
| dur_ask_high_priority_ca | Acc. | 0.742 | 0.9 | 0.558 | 0.375 | 0.345 | |||
| dur_ask_low_priority_ca | Acc. | 0.533 | 0.75 | 0.358 | 0.286 | 0.269 | |||
| dur_partner_ask_high_priority_ca | Acc. | 0.292 | 0.717 | 0.7 | 0.792 | 0.483 | 0.42 | 0.353 | 0.392 |
| dur_partner_ask_low_priority_ca | Acc. | 0.325 | 0.717 | 0.517 | 0.692 | 0.433 | 0.306 | 0.357 | 0.333 |
| dur_strategy_ca | F1 | 0.055 | 0.724 | 0.463 | 0.507 | 0.265 | 0.381 | 0.304 | 0.254 |
| sta_ask_high_priority_ca | Acc. | 1 | 1 | 0.667 | |||||
| sta_ask_low_priority_ca | Acc. | 1 | 1 | 0.5 | 0.4 | ||||
| sta_ask_point_values_ca | Acc. | 1 | 1 | 1 | 1 | 1 | 1 | ||
| sta_max_points_ca | Acc. | 0.333 | 0.333 | 0.5 | 0 | 0 | 0 | ||
| sta_total_item_count_ca | Acc. | 1 | 1 | 1 | 1 | 1 | 0.333 | ||
| dur_dial_act_cra | F1 | 0.067 | 0.787 | 0.535 | 0.678 | 0.35 | 0.338 | 0.518 | 0.302 |
| dur_full_proposal_cra | Acc. | 0.359 | 0.439 | 0.352 | 0.369 | 0.241 | 0.262 | 0.245 | 0.325 |
| end_deal_specifics_dnd | Acc. | 0.454 | 0.973 | 0.67 | 0.949 | 0.558 | 0.631 | 0.558 | 0.628 |
| end_deal_total_dnd | Acc. | 0.257 | 0.832 | 0.381 | 0.664 | 0.23 | 0.319 | 0.221 | 0.336 |
| dur_dial_act_dnd | F1 | 0.888 | 0.96 | 0.735 | 0.825 | 0.764 | 0.639 | 0.337 | |
| dur_full_proposal_dnd | Acc. | 0.39 | 1 | 0.742 | 0.866 | 0.648 | 0.748 | 0.725 | 0.687 |
| sta_ask_point_values_dnd | Acc. | 0.993 | 1 | 1 | 1 | 0.752 | 1 | ||
| sta_max_points_dnd | Acc. | 0.317 | 0.337 | 0.366 | 0.495 | 0.307 | 0.386 | ||
| sta_total_item_count_dnd | Acc. | 0.95 | 1 | 0.98 | 0.505 | 0.901 | 0.465 | ||
| end_deal_specifics_ji | Acc. | 0.261 | 0.764 | 0.782 | 0.858 | 0.733 | 0.8 | 0.785 | 0.766 |
| dur_ask_high_priority_ji | Acc. | 0.495 | 0.862 | 0.37 | 0.233 | 0.252 | 0.259 | ||
| dur_ask_low_priority_ji | Acc. | 0.67 | 0.917 | 0.333 | 0.26 | 0.306 | 0.296 | ||
| dur_dial_act_ji | F1 | 0.058 | 0.019 | 0.578 | 0.688 | 0.387 | 0.452 | 0.468 | 0.414 |
| dur_partner_ask_high_priority_ji | Acc. | 0.165 | 0.202 | 0.193 | 0.198 | 0.204 | 0.204 | ||
| dur_partner_ask_low_priority_ji | Acc. | 0.193 | 0.266 | 0.202 | 0.269 | 0.176 | 0.157 | 0.13 | |
| sta_ask_high_priority_ji | Acc. | 0.78 | 0.89 | 0.505 | 0.155 | 0.211 | 0.596 | ||
| sta_ask_low_priority_ji | Acc. | 0.761 | 0.972 | 0.468 | 0.174 | 0.202 | 0.367 |
app. A. The paper's table also omits the two generation tasks, which are reported in tab. 2. Note: the paper's PCC and BERTScore are not computed by the released code (see Paper vs code).
Paper vs code
Code: the repository linked from the abstract, DSincerity/SysEval-NegoLLMs,
pinned at 637436096c51aacafd210b5f19f1cbd889ed643a, Apache-2.0. The README names
the first author as the contact. The repo has the LLM runner, the Flan-T5 baseline
and the scoring code; the appendix prompts were not compared with tasks/*.py
line by line.
- Learning rate differs. Paper: 5e-5 §3.1. Shipped script and argument default: 5e-4 finetune.task.sh arguments.py.
- Batch size differs. Paper: 8 §3.1. Shipped script: 3 finetune.task.sh. Argument default: 16 arguments.py. Evaluation batch size default: 16 arguments.py.
- Epochs agree. Paper: up to 5 §3.1. Script: 5 finetune.task.sh.
- AdamW weight decay is not applied. The paper names AdamW §3.1. The code defines a weight-decay argument with default 0.01 arguments.py, but the training arguments passed to the trainer do not include it main.py. The optimizer and scheduler are not named in code.
- Checkpoint selection is on loss. Paper: best-performing checkpoint §3.1. Code: best checkpoint by evaluation loss main.py arguments.py, not by the task metric.
- PCC and BERTScore are not computed. The paper reports PCC for subjective tasks §3.3 and BERTScore with bert-base-uncased §3.3. The released code has no PCC or BERTScore call (repository search). The regression entry lists the two end_deal_total tasks TASKTYPE.json, which are scored with accuracy eval_metric.py. Subjective tasks therefore have no PCC in the released scorer.
- Macro-F1 covers all labels seen. Scoring averages per-label F1 over the union of gold and predicted labels eval_metric.py. This matches "macro-F1" in the paper, but a label predicted and never gold still counts. Scoring applies F1 only to strategy tasks and to the JI and DND dialogue-act tasks eval_metric.py. The CRA dialogue-act task is not in that list; I did not trace which scorer it gets.
- Flan-T5 inputs are trimmed differently. Paper: long task descriptions removed and replaced by a short instruction such as "predict highest priority" app. B. Code: a regex removes the description and tag text, and deletes the value block for end_deal_specifics tasks prompt_modifier.py. The short instruction string does not appear in the repository.
- GPT runs are pinned to a model string and temperature 0. Paper: no model
snapshot or temperature given §3.2. Code:
gpt-4-1106-previewopenai_gpt4.sh, temperature 0 open_ai.py open_ai.py. - Failed or over-length GPT prompts are stored as a placeholder. Before each call the code stores the literal string "looks good." as the output, and only overwrites it if the call succeeds open_ai.py. A length or API failure therefore leaves that string as the stored output, and the scorer receives it as the prediction.
- Over-length open-model prompts are dropped. For the open models, an input over the token limit is skipped, so no output is recorded for it hf_model.py. The paper's 80% valid-response rule is not in the released code.
- Decoding limits for open models are not in the paper. Flan-T5 gets 100 new tokens; Mistral, Vicuna and Wizard get 200 hf_model.py. Vicuna and Wizard prompts are wrapped as "User: ... Assistant:" hf_model.py. Sampling settings are not set in the call, so the library defaults apply hf_model.py.
- Few-shot examples are sampled without a seed in that function. Two other
instances are drawn with
np.random.choiceopen_ai.py. The paper says "randomly sampled" §5. - Task names differ. Paper: prefixes sta_, dur_, end_ app. A. Code: mid_ for
the During stage, and a
_wsuffix for some job-interview tasks openai_gpt4.sh. Look up tasks with the code names. - Chain-of-thought and partial-dialogue runs use the flags
use_cotandnum_utts_partial_dialon the listed tasks openai_gpt4_additional_exp.sh. The paper gives no sweep values; the script uses 2, 4, 6 and 8.
Pitfalls
- Start-stage tasks are nearly solved by a parser. The paper says a rule-based parser reaches 100% on them §4.1 app. B. Scores on them measure reading of the prompt, not negotiation skill.
- Subjective scores are weak evidence. PCC is reported in the paper but not computed by the released code, so the subjective numbers cannot be reproduced from the repo as shipped. Satisfaction and likeness results are the least reliable part of the paper §4.1 §4.3.
- Human judgements include the authors. Five expert annotators rated generation, and the authors were among them [Broader Impact and Ethical Considerations]. The inter-rater ICC is 0.82 on 50 examples §4.4. The sample is small.
- Missing cells are not zeros. A blank cell can mean "not run" or "failed the validity check". Compare models only on tasks where both have a value app. A.
- Results are tied to prompts and model snapshots. The paper uses one zero-shot
template per task and says prompt engineering was not explored in depth
[Limitations]. The code pins
gpt-4-1106-preview. - Chain-of-thought gains are measured on few tasks. The paper reports near-perfect accuracy with chain-of-thought on arithmetic tasks, but tested only a few tasks §5.
- The majority baseline is a real competitor. On end_deal_total_ca the majority answer (0.142) beats GPT-4 (0.083) and the open models app. A.
- Few-shot and prior-utterance gains are mixed. Each helped on some tasks and hurt on others, so a single setting should not be assumed to help §5.
- English only, four datasets, one bargaining framework. Results may not carry to other languages, cultures or negotiation structures (fixed-value bargaining, no preference change, no fractional items) [Broader Impact and Ethical Considerations] [Limitations].
Lineage
- Builds on: the four datasets CRA, DND, CA and JI, each cited in §2.1 and app. A; the Multi-Issue Bargaining Task framework §2.1; the Flan-T5 model §3.1.
- Compared against: GPT-3.5 and GPT-4 §3.2; Mistral-7B, Wizard-13B, Vicuna-13B and Vicuna-33B §3.2; a Majority baseline and a per-task Flan-T5 fine-tune §3.1.
- Related negotiation agents: end-to-end self-play RL §6; modular RL policies §6; LLM agents for balloon-price bargaining and multi-agent games §6. The paper positions itself as a per-skill evaluation, not an agent §1 §6.
- Superseded by: not known from content on this wiki.
Source and license
Adapted from “Are LLMs Effective Negotiators? Systematic Evaluation of the Multifaceted Capabilities of LLMs in Negotiation Dialogues” by Deuksin Kwon, Emily Weiss, Tara Kulshrestha, Kushal Chawla, Gale M. Lucas, Jonathan Gratch (arXiv:2402.13550), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors. Code citations refer to https://github.com/DSincerity/SysEval-NegoLLMs at commit 637436096c51 (Apache-2.0). Any quoted code is shown under that license.